读书人

ubuntu 9.04 装配oracle10g xe 步骤

发布时间: 2012-08-31 12:55:03 作者: rapoo

ubuntu 9.04 安装oracle10g xe 步骤
前都是在开发环境中使用oracle的轻量级服务器oracle xe。是在windows环境下,见适合开发人员的Oracle10g环境。

在linux上安装oracle是一件痛苦的事情。因为需要为安装做很多准备工作。另外,就是oracle的安装都是基于redhat版本的。

ubuntu server是很好的linux服务器版本,但是得到的企业支持较少,比如oracle,比如其他软件提供商。

公司需要移植以前oracle数据库的东西出来。为了应急,在ubuntu server上安装一个express edition(XE)。这个版本在ubuntu上安装十分容易。

但是事后发现,导入utf8编码的oracle数据库备份时出现乱码。究其原因,是:

sudo vim /etc/apt/sources.list

在该文件中增加:

deb http://oss.oracle.com/debian unstable main non-free


然后需要将该源服务器的公钥添加在本地 apt 系统的密钥库中:
wget http://oss.oracle.com/el4/RPM-GPG-KEY-oracle  -O- | sudo apt-key add -


然后,更新apt库:
apt-get update




首先,需要配置apt-get,见在ubuntu server下安装Oracle XE相关部分。

然后,需要确保环境变量中文的UTF支持,可运行:

locale


看到如下就是正确的了:

LANG=zh_CN.UTF-8


如果不是,可修改:

sudo vim /etc/default/locale


改为:

LANG=”zh_CN.UTF-8″


安装oracle xe universal版本:

sudo apt-get install -y oracle-xe-universal


如果安装有问题,需要完全卸载,可:

sudo apt-get remove purge oracle-xe-universal


如果不能完全卸载,再次安装往往无法生成配置文件,造成无法直接使用。

上述卸载办法如果还不行,可参考上面oracle官方文档中的手工反安装部分(Manually Removing Oracle Database XE)。

这很重要,因为想第一次就在陌生的linux环境下安装好,是很困难的。

安装完毕后,会提示运行配置脚本,可按照提示部分运行:

sudo /etc/init.d/oracle-xe configure


配置端口和管理员的用户密码等。之后,oracle可自动启动,或者执行:

sudo /etc/init.d/oracle-xe start


如果想通过其他计算机通过浏览器管理这个数据库,需要在sqlplus中执行:

EXEC DBMS_XDB.SETLISTENERLOCALACCESS(FALSE)


另外,如果不是供测试使用,而是小规模生产使用,需要增大连接进程数(需要DBA权限):

ALTER SYSTEM SET PROCESSES=200 SCOPE=spfile;


而且,需要注意,oracle xe有关的限制,见上面链接oracle文档的Oracle Database XE Server User Data Limitations部分:

The maximum amount of user data in an Oracle Database XE Server database cannot exceed 4 gigabytes. If the user data grows beyond this limit, then an ORA-12592 error will appear. To use more than 4 gigabytes of user data, upgrade to Oracle Database 10g Standard Edition, Oracle Database 10g Standard Edition One, or Oracle Database 10g Enterprise Edition.

也就是说用户数据不能超过4GB。

客户端的环境变量配置,需要配置:

sudo vim /etc/environment


增加以下内容用于显示中文的oracle提示信息:

NLS_LANG=”SIMPLIFIED CHINESE_CHINA.AL32UTF8″


配置:

sudo vim /etc/profile


增加oracle的环境变量等信息:

export ORACLE_HOME=/usr/lib/oracle/xe/app/oracle/product/10.2.0/serverexport LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATHexport ORACLE_SID=XEexport PATH=${PATH}:${ORACLE_HOME}/bin


如果出现如下问题:
lsnrctl status

在我这里的环境是:

/usr/lib/oracle/xe/app/oracle/product/10.2.0/server/network/admin/listener.ora

增加后的文件如下:

# listener.ora Network Configuration File: SID_LIST_LISTENER =  (SID_LIST =    (SID_DESC =      (SID_NAME = PLSExtProc)      (ORACLE_HOME = /usr/lib/oracle/xe/app/oracle/product/10.2.0/server)      (PROGRAM = extproc)    )   (SID_DESC =      (GLOBAL_DBNAME = XE)      (ORACLE_HOME = /usr/lib/oracle/xe/app/oracle/product/10.2.0/server)      (SID_NAME = XE)    )  ) LISTENER =  (DESCRIPTION_LIST =    (DESCRIPTION =      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC_FOR_XE))      (ADDRESS = (PROTOCOL = TCP)(HOST = dev)(PORT = 1521))    )  ) DEFAULT_SERVICE_LISTENER = (XE)


粗体字部分是增加的内容。重启oracle,问题解决。

原文链接地址是:http://marshal.easymorse.com/archives/1537

读书人网 >其他数据库

热点推荐