首页 > 数据库 > Oracle > 正文

安装 Oracle 9iR2 on RHEL AS 3 (摘录)

2020-03-09 22:51:33
字体:
来源:转载
供稿:网友
 installing oracle 9ir2 on rhel as 3 step-by-step

作者: fenng

installing oracle 9ir2 on red hat enterprise linux advanced server 3 (rhel 3)

全球最大的 linux 厂商 red hat 公司 最近发布了red hat enterprise linux 3.该版本号称有史以来最强大的开
源操作系统,也被视为是当前最为完整的 linux 企业级解决方案.得到了包括 oracle 在内的众多重量级厂商的积极响
应, 很多产品在该平台上通过了认证.oracle 9ir2自然也在此列. oracle 9i+ rhel3 会有什么样的效果?可能很多技
术人员都很感兴趣.心动不如行动,不如马上开始搭建自己的应用环 境,亲身感受一下.

配置redhat el3

操作系统描述:red hat enterprise linux as release 3 (taroon)
       kernel 2.4.21-4.el on an i686


安装操作系统之后,应该修改核心参数.执行如下参数:

#echo "kernel.sem=/"250 32000 100 128/"" >> /etc/sysctl.conf
#echo "kernel.shmmax=2147483648" >> /etc/sysctl.conf

第一条命令中的 250、32000、100、128 分别对应semmsl、semmns、semopm、semmni这四个核心参数.
上面是典型的核心参数配置.您可能需要根据您的实际环境进行适当的变动.

关于这些核心参数的说明在oracle的oracle9i installation guide release 2 (9.2.0.1.0) for unix systems
中有很详细的说明.( http://download-west.oracle.com/docs/html/a96167_01/toc.htm )

然后,应该检查一下上面的操作是否正确:

# more /etc/sysctl.conf | grep kernel.s
kernel.sysrq = 0
kernel.shmmax=2147483648
kernel.sem="250 32000 100 128"
#


检查并安装相关补丁

在这个版本的rhel上安装oracle,必须要有几个软件包(参考 metalink 上的 oracle note:252217.1) . 确认以下
rpm包都已经安装:

# rpm -qa | grep compat
compat-gcc-7.3-2.96.122
compat-libstdc++-devel-7.3-2.96.122
compat-gcc-c++-7.3-2.96.122
compat-libstdc++-7.3-2.96.122
compat-glibc-7.x-2.2.4.32.5
compat-db-4.0.14-5

# rpm -qa | grep openmotif
openmotif-2.2.2-16
openmotif-devel-2.2.2-16

#openmotif-2.2.2-16 即可

# rpm -qa | grep setarch
setarch-1.3-1

上面显示的内容是在笔者已经安装了具体的rpm包之后的结果.一般情况下,你的系统上的输出结果和这个不同.如果个
别包没有安装,把系统安装光盘mount上,找到具体的软件包(大多数在第三张光盘上),然后利用如下的命令来安装相应
的包:

# rpm -ivh compat.....rpm

要额外注意的是,这些软件包之间是有依赖性的,先后的顺序要找好.否则会报告不能安装的错误.

还需要将gcc、g++更换为2.96的版本. (参考 metalink 上的 oracle note:252217.1 )

# mv /usr/bin/gcc /usr/bin/gcc323
# ln -s /usr/bin/gcc296 /usr/bin/gcc
# mv /usr/bin/g++ /usr/bin/g++323
# ln -s /usr/bin/g++296 /usr/bin/g++

如果报告找不到文件,请确认该软件包是否安装.

 

检查环境变量

这个版本的默认的glibc 很合适.免去了不少麻烦.

登录为oracle用户
# su – oracle
$ cd
$ vi .bash_profile

#添加如下内容

#这个参数必须指定,否则java安装界面无法启动
export ld_assume_kernel=2.4.1

export oracle_base=/u01/app/oracle
export oracle_home=$oracle_home/product/9.2.0
export oracle_sid=demo
export oracle_term=xterm
export ora_nls33=$oracle_home/ocommon/nls/admin/data
ld_library_path=$oracle_home/lib:/lib:/usr/lib
ld_library_path=$ld_library_path:/usr/local/lib
export ld_library_path

# set shell search paths
export path=$path:$oracle_home/bin

然后执行
$ source .bash_profile
使环境变量生效

对ld_assume_kernel环境变量的说明:

这个参数实际上是为了避免linux上的nptl(native posix thread library)和oracle应用不兼容的问题. 设定
ld_assume_kernel为2.4.1表示使用旧有的 "linuxthreads with floating stacks" . (这里有对 floating
stacks的大体上的解释. )



从metalink ( http://metalink.oracle.com/ 需要csi )下载必须的补丁

需要的补丁:

p3095277_9204_linux.zip 9.2.0.4.0的升级补丁包.
p3006854_9204_linux.zip 在运行 runinstaller 之前打.
p3119415_9204_linux.zip 在升级到9.2.0.4.0之后打.
p2617419_210_generic.zip 打3119415补丁所需要的.

p3095277_9204_linux.zip大约有300多兆.如何快速下载metalink上的补丁?请参考这个link:
http://www.ncn.cn/oracle/tips/oratip009.htm

后面的三个比较小.可以在 itpub 下载:
http://www.itpub.net/showthread.php?s=&threadid=171693&perpage=15&pagenumber=1

唉,又是补丁,安装可算是比较费周折的了,不知道oracle的工程师是不是每次安装也会感到麻烦.



开始安装9.2.0

运行runinstaller之前,需要打补丁3006854: 注意,必须以root身份运行.

# unzip p3006854_9204_linux.zip
会在当前目录下创建一个目录,进入到该目录中

# cd 3006854
# ./rhel3_pre_install.sh
如果报告如下错误:
-bash: ./rhel3_pre_install.sh: permission denied
修改一下权限就可以了
# chmod +x *.sh


然后就可以运行runinstaller安装. 操作过程不再赘述.

但是relink 阶段,会报告两个错误:ins_oemagent.mk 和 ins_ctx.mk. 点 ignore 忽略.要升级到9.2.0.4的版本才
可以修复这两个bug.


升级到9.2.0.4.0

安装结束后,需要停掉oracle的所有相关程序. 最好命令都执行完之后再用 ipcs 命令确认一下.然后就可以开始打补丁
升级了.

解包:

$ unzip p3095277_9204_linux.zip

$ cpio -icvd < 9204_lnx32_release.cpio

现在可以再次运行runinstaller,在oui的界面中找到patch的stage文件,然后即可以进行升级.

注意:
首先要升级oui,否则不让升级到9.2.0.4.而且,升级完oui以后,要退出oui然后再重新运行oui, 再升级到9.2.0.4.不退出
继续升级会报告错误.升级过程中,仍然会出现ins_oemagent.mk错误,点 ignore 忽略.我们将在下一个步骤中修复该
错误.


再次打补丁

升级过后,需要打补丁修复ins_oemagent.mk错误.

首先安装 opatch.

$ unzip p2617419_210_generic.zip

$ pwd
/u01/install
$ export path=$path:/u/install/3119415:/sbin

注意:
修改path时,除了要包括解压出来的opatch目录外,还要包括/sbin目录,这样才可以找到 fuser命令.而fuser命令也是
该补丁过程所需要的.

$ unzip p3119415_9204_linux.zip
archive: p3119415_9204_linux.zip
creating: 3119415/
......
inflating: 3119415/readme.txt

$ cd 3119415
$ opatch apply



运行dbca的问题.

$ dbca

会正常出现图形界面,然后可以选择创建数据库,但是最后一步莫名其妙的界面消失.在命令行出现如下错误:

/oracle/product/9.2.0.1/bin/dbca: line 124: 27348 killed $jre_dir/bin/jre -doracle_home=
$oh -djdbc_protocol=thin -mx64m -classpath $classpath
oracle.sysman.assistants.dbca.dbca $arguments

要解决这个问题:

$vi $oracle_home/bin/dbca

#将下面列出的除第3 行外的其余行注释掉.

#if [ -f /etc/rac_on ]; then
#run dbca
$jre_dir/bin/jre –native –doracle_home=$oh……
#else
#run dbca
#$jre_dir/bin/jre –doracle_home=$oh……
#fi

参考信息

werner puschitz 的 installing oracle9i on red hat linux
pondka的 在redhat el as 3上安装oracle9.2.0
linux: native posix threading library (nptl) / ( http://people.redhat.com/drepper/nptl-design.pdf )
google 新闻组上对 dbca 那个错误的解决办法
oracle9i installation guide release 2 (9.2.0.1.0) for unix systems

原文出处:
<a href="http://www.dbanotes.net/oracle/install-oracle9ir2-rhel3.htm">http://www.dbanotes.net/oracle/install-oracle9ir2-rhel3.htm</a>
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表