1 工作描述
9i由于版本过老,导致很难在Oracle Linux 5 64bit上安装成功。虽然有人说安装成功,但由于操作过于复杂,还需要找9.2.0.4以上的安装介质,因此我没有亲自尝试。幸运的是,9i可以在Oracle Linux 5 32bit上成功安装,尽管也历经了众多的报错,但最终还是安装上了,虽然不是64bit,至少也是一种搭建9i环境的方法。整个安装过程,请见下文。
注:此种方法同样适用于Redhat 5,由于本文主要描述9i如何成功部署在Oracle Linux 5 32bit上,因此创建组和用户,以及修改操作系统限制等操作(和10g没有区别)在本文中忽略。
2 开始安装
[oracle@secdb1 Disk1]$ Initializing Java Virtual Machine FROM /tmp/OraInstall2013-05-14_06-07-00PM/jre/bin/java. Please wait...
/tmp/OraInstall2013-05-14_06-07-00PM/jre/bin/i386/native_threads/java: error while loading shared libraries: libstdc++-libc6.1-1.so.2: cannot OPEN shared object file: No such file OR directory
报错的原因是由于低版本的数据库安装需要调用老版本的动态库,而由于系统上只存在高版本的动态库,版本不匹配导致报错。解决方法也很容易,就是通过建立软连接的方式解决 。
重新执行runInstaller后继续报错。
[oracle@secdb1 Disk1]$ Initializing Java Virtual Machine FROM /tmp/OraInstall2013-05-14_06-11-16PM/jre/bin/java. Please wait...
Error occurred during initialization OF VM
Unable TO LOAD native library: /tmp/OraInstall2013-05-14_06-11-16PM/jre/lib/i386/libjava.so: symbol __libc_wait, version GLIBC_2.0 NOT defined IN file libc.so.6 WITH link TIME reference
这个错误是由于Oracle bug 3006854引起的,解决方法是到MOS上下载p3006854_9204_LINUX.zip补丁,打上这个补丁后终于可以看到久违的OUI了。
Archive: p3006854_9204_LINUX[Patch 3006854 CAN NOT INSTALL ORACLE 9.2.0.1.0 DB ON RHEL3 ALPHA 4].zip
creating: 3006854/
inflating: 3006854/rhel3_pre_install.sh
inflating: 3006854/README.txt
[oracle@secdb1 ~]$ cd 3006854
[root@secdb1 3006854]# ./rhel3_pre_install.sh
Applying patch...
Ensuring permissions are correctly SET...
Done.
Patch successfully applied
3 OUI操作
(1).欢迎界面,点击“Next”;
(2).修改Name和Path,点击“Next”;
(3).选择“Oracle9i Database 9.2.0.4.0”,点击“Next”;
(4).选择“Enterprise Edition”,点击“Next”;
(5).选择“Software Only”,点击“Next”;
(6).安装总缆,确认无误后,点击“Install”;
(7).开始安装数据库软件,点击“Next”;
(8).先后会要求输入Disk2、Disk3的路径,点击“OK”;
(9).执行root脚本后,点击“OK”;
以root用户执行root脚本:
Running Oracle9 root.sh script...
\nThe following environment VARIABLES are SET AS:
ORACLE_OWNER= oracle
ORACLE_HOME= /u01/app/oracle/product/9.2.0/db_1
Enter the FULL pathname OF the LOCAL bin directory: [/usr/LOCAL/bin]:
The file "dbhome" already EXISTS IN /usr/LOCAL/bin. Overwrite it? (y/n)
[n]: n
The file "oraenv" already EXISTS IN /usr/LOCAL/bin. Overwrite it? (y/n)
[n]: n
The file "coraenv" already EXISTS IN /usr/LOCAL/bin. Overwrite it? (y/n)
[n]: n
Adding entry TO /etc/oratab file...
Entries will be added TO the /etc/oratab file AS needed BY
DATABASE Configuration Assistant WHEN a DATABASE IS created
Finished running generic part OF root.sh script.
Now product-specific root actions will be performed.
(10). 安装完成,如果不继续安装其他产品,点击“Exit”,还需要安装其他产品,点击“Next Install”;
4 使用NETCA创建监听器
使用netca启动图形界面来配置监听,和10g没有区别,一路“Next”;
选择“Add”;
使用默认的LISTENER名称;
选择默认的TCP协议;
使用默认的1521端口;
完成
5 使用DBCA建库
/u01/app/oracle/jre/1.1.8/bin/../lib/i686/green_threads/libzip.so: symbol errno, version GLIBC_2.0 NOT defined IN file libc.so.6 WITH link TIME reference (libzip.so)
Unable TO initialize threads: cannot find class java/lang/Thread
Could NOT CREATE Java VM
又出现报错,出错的原因是由于dbca建库时调用的oracle自带的jre版本过低,需要下载安装新版本的jre,然后用高版本的jre替换低版本的即可正常运行dbca。
操作步骤如下:
[oracle@secdb1 db_1]$ mv JRE JRE_BAK
[oracle@secdb1 db_1]$ ln -s ~/jre1.6.0_45/ JRE
[oracle@secdb1 ~]$ cd /u01/app/oracle/product/9.2.0/db_1/JRE/bin/
[oracle@secdb1 ~]$ ln -s java jre
[oracle@secdb1 ~]$ cd /u01/app/oracle/product/9.2.0/JRE/lib/i386/native_threads
[oracle@secdb1 ~]$ ln -s java jre
再次启动DBCA
点击“Next”
选择“Create a database”,创建数据库,点击“Next”;
选择“New Database”,创建一个新的数据库,点击“Next”;
输入SID,点击“Next”;
选择数据库组件,点击“Next”;
选择“Dedicate Server Mode”专用模式,点击“Next”;
设置Memory,Character,DB size,File Locations,Archive;
存储参数设置,点击“Next”;
点击“Finish”;
总述界面,点击“OK”;
开始安装;
安装过程中出现ORA-01430的报错,点击“Ignore”忽略;
解释:在数据库创建过程的“增加 Oracle Spatial”阶段中,您将接收到一个 ORA-01430 错误。如果您搜索日志文件,您将看到以下内容: (SDO_ROOT_MBR mdsys.sdo_geometry) * ERROR at line 2: ORA-01430:column being added already exists in table这是一个已知的问题,并可被忽略。要继续数据库创建过程,请单击 "Ignore" 按钮;
输入SYS和SYSTEM用户的密码后,点击“Exit”,退出DBCA,安装完成。
6 登录数据库
SQL*Plus: Release 9.2.0.4.0 - Production ON Wed May 15 15:33:38 2013
Copyright (c) 1982, 2002, Oracle Corporation. ALL rights reserved.
Connected TO:
Oracle9i Enterprise Edition Release 9.2.0.4.0 - Production
WITH the Partitioning, OLAP AND Oracle DATA Mining options
JServer Release 9.2.0.4.0 - Production
SQL> SELECT STATUS FROM v$instance;
STATUS
------------
OPEN
SQL>
近期评论