RedHat Advance Server 3上安装oracle 9.2.0, 并升级到9.2.0.4
转载
RedHat Advance Server 3上安装oracle 9.2.0, 并升级到9.2.0.4
今天花了一天的时间来装Oracle,在网上找了不少的资料,结果发现十个人有十种安装方法
参考了其中的四种,然后自己安装了一遍,等于是综合了大家的智慧,完成了Oeacle的安装
我把自己总结的文档发在这里,希望对大家有所帮助,绝对的原创啊
下面所讲的安装方法可能也适用于RedHat9,有兴趣的朋友可以试一试
首先,准备安装需要的软件包和补丁包:
1.用rpm -qa│grep compat 查看系统中是否安有以下几个软件包:
compat-libstdc++-7.3-2.96.122
compat-gclearcase/" target="_blank" >cc-c++-7.3-2.96.122
compat-libstdc++-devel-7.3-2.96.122
compat-db-4.0.14-5
compat-gcc-7.3-2.96.122
nss_db-compat-2.2-20.i386.rpm
2. rpm -qa │ grep openmotif查看下列软件包
openmotif21-2.1.30-8
3. rpm -qa │ grep setarch查看:
setarch-1.3-1
以上文件如果没有的话,在RHEL3的CD3和CD4上有相关的RPM包,使用:
# rpm -i compat...i386.rpm
命令来安装相应的包.
4.从网上下载升级补丁包,用于将Oracle9.2.0升级到9.2.0.4:
p3006854_9204_LINUX.zip
所有的补丁说明如下:
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补丁所需要的补丁.
第二,准备安装过程中需要的用户和用户组
在安装的过程中我们使用两个用户同时进行,其中一个是root用户,另外一个是你新建立的oracle用户。
1、打开一个终端,以root用户登录或者是:su -
2、
# groupadd oinstall
# groupadd dba
# useradd -g oinstall -G dba oracle
# passwd oracle
第三,安装准备步骤.
1、准备文件目录:
# mkdir -p /opt/ora9/product/9.2
# mkdir /var/opt/oracle
# chown oracle.dba /var/opt/oracle
# chown -R oracle.dba /opt/ora9
2、设置内核参数,调节信号灯及共享内存:
# echo 250 32000 100 128 > /proc/sys/kernel/sem
# echo 536870912 > /proc/sys/kernel/shmmax
# echo 4096 > /proc/sys/kernel/shmmni
# echo 2097152 > /proc/sys/kernel/shmall
# echo 65536 > /proc/sys/fs/file-max
# echo 1024 65000 > /proc/sys/net/ipv4/ip_local_port_range
当然为了一开机系统就能自动帮你设好这些参数,也可改动 /etc/sysctl.conf 这个文件,加入以下的语句:
kernel.shmmax = 536870912
kernel.shmmni = 4096
kernel.shmall = 2097152
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000
3、设置oracle对文件的要求:
编辑文件:/etc/security/limits.conf 加入以下语句:
oracle soft nofile 65536
oracle hard nofile 65536
oracle soft nproc 16384
oracle hard nproc 16384
4、设置系统环境:
首先设置root用户这个终端的。
export ORACLE_BASE=/opt/ora9
export ORACLE_HOME=/opt/ora9/product/9.2
(Oracle被安装在这些位置)
这个步骤用来最后打补丁时使用,注意这个终端要保持不要关掉它。
5.设置oracle用户的环境, 新开一个终端,
su - oracle
注意一定要新开一个
打开.bash.profile文件,将如下内容加入:
#oracle 9i
export ORACLE_BASE=/opt/ora9
export ORACLE_HOME=/opt/ora9/product/9.2
export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/Apache/Apache/bin:$PATH
export ORACLE_OWNER=oracle
export ORACLE_SID=ora9i
export ORACLE_TERM=vt100
export LD_ASSUME_KERNEL=2.4.1
export THREADS_FLAG=native
export LD_LIBRARY_PATH=/opt/ora9/product/9.2/lib:$LD_LIBRARY_PATH
export PATH=/opt/ora9/product/9.2/bin:$PATH
#
# change this NLS settings to suit your country:
# example:
# german_germany.we8iso8859p15, american_america.we8iso8859p2 etc.
#
export LANG=en_US
保存后退出。
然后。退出登录,再次进入,这时候oracle的环境就已经生效了。
6、解压文件,安装前打补丁,切换到root用户的控制台:
第四,开始正式安装
1、
cd /home
mkdir ora9i
cd ora9i
这些目录你可以自己定义,用来存放安装文件。
然后将从网上下载的三个Oracle920的安装文件拷到这里:
2.解gz文件
gunzip gunzip lnx_920_disk1.cpio.gz
gunzip lnx_920_disk2.cpio.gz
gunzip lnx_920_disk3.cpio.gz
3.释放cpio文件
cpio -idmv < lnx_920_disk1.cpio
cpio -idmv < lnx_920_disk2.cpio
cpio -idmv < lnx_920_disk3.cpio
//这个步骤将生成三个文件夹:DISK1, DISK2, DISK3
2、打安装前的补丁:
以root身份运行.
这也是在/home/ora9i/里进行的。
# unzip p3006854_9204_LINUX.zip
Archive: p3006854_9204_LINUX.zip
creating: 3006854/
inflating: 3006854/rhel3_pre_install.sh
inflating: 3006854/README.txt
# cd 3006854
# sh rhel3_pre_install.sh
3、完成Oracle的安装:
新开一个控制终端(用root用户开)
#xhost +
这个命令用来保证oracle用户调用X11,否则无法安装
我看过的所有的文档里都没有提到,结果害得我在这个地方憋了两个小时才搞定
#su - oracle
在登录终端中切换到oracle用户:
在oracle主目录里运行:/home/ora9i/Disk1/runInstaller
注意的是以下几点:
第一,在RedHat Advance Server 3下安装Oracle9i不用将gcc降级,有些文档里说需要将gcc降为2.96,其实是不需要的
第二,在部分文档里,要求oracle用户的bash.profile文件中降LD_ASSUME_KERNEL设置为2.4.19,千万不要这样设置,否则会在Rlink时会有一大堆报错
第三,安装Oracle不需要额外安装JDK,Oracle自己带
第四,再安装过程中,系统会提醒你用root身份去执行两个sh文件,再root的登录终端中按提示操作就可以了
第五,Relink阶段,会出两个错误:ins_oemagent.mk 和 ins_ctx.mk. 点 Ignore 忽略.
第六.注意在安装过程中不要创建数据库,如果创建了也没有关系在升级之前将它给删除掉(不过装了再删是不是有点麻烦?干脆不创建数据库了)
上面这几点害得我郁闷死了!!!!!!!!一定要注意啊!!!!
第五,开始升级Oracle9.2.0
1.
安装结束后,HTTPD会自动运行.在升级之前,需要将它停下来.
$ cd $ORACLE_HOME/Apache/Apache/bin
$ ./apachectl stop
./apachectl stop: httpd stopped
LISTENER也需要停下来.
$ lsnrctl stop
LSNRCTL for Linux: Version 9.2.0.1.0 - Production on 07-NOV-2003 16:25:41
Copyright (c) 1991, 2002, Oracle Corporation. All rights reserved.
Connecting to (ADDRESS=(PROTOCOL=tcp)(PORT=1521))
The command completed successfully
注意:
如果不停的话,oracle会提示不能覆盖文件.这个时候再去将服务停下来也可以,点Retry就可以了.
2.
开始打补丁升级.
注意打补丁时使用root用户,切换到root用户控制台:
解包:
$ unzip p3095277_9204_LINUX.zip
Archive: p3095277_9204_LINUX.zip
inflating: 9204_lnx32_release.cpio
inflating: README.html
inflating: patchnote.css
$ cat 9204_lnx32_release.cpio │ cpio -i --make-directories
做完这个后,再切换到oracle用户控制台, 再次运行/home/ora9i/Disk1/runInstaller升级,注意必须先选择最下面的安装选项,安装OUI
要不然没有办法打那个最上面的升级补丁。
升级完OUI后,要退出,再次运行/home/ora9i/Disk1/runInstaller
选择第一个选项,将Oracle升级到9.2.0.4。
这时候还是会有一个错误出现。再次选择忽略它。
3、打其他的补丁:
切换到root的终端。注意这个最好是原来那个保持了ORACLE_HOME, ORACLE_BASE的环境变量那个终端:
修复ins_oemagent.mk错误.
首先安装 opatch.
$ unzip p2617419_210_GENERIC.zip
Archive: p2617419_210_GENERIC.zip
creating: OPatch/
creating: OPatch/docs/
inflating: Opatch/docs/FAQ
......
inflating: README.txt
$ ls
$ pwd
/home/or9i
$ export PATH=$PATH:/home/or9i/OPatch:/sbin
注意:
修改PATH时,除了要包括解压出来的OPatch目录外,还要包括/sbin目录.这一点,metalink上没有说.
$ unzip p3119415_9204_LINUX.zip
Archive: p3119415_9204_LINUX.zip
creating: 3119415/
......
inflating: 3119415/README.txt
$ cd 3119415
$ opatch apply
呵呵,在这一步看到success的提示,那么全部的安装就算成功了.
祝贺你,恶梦结束了
用$dbca
看看能不能出现Oracle的图形管理工具
额外的提示:
第一:很多人都没有解决安装界面乱码的问题,很不幸,我也没有解决.只找到一个曲线救国的办法.采用的方法是将系统语言暂时设置为英文,安装结束后再更改回中文简体,这样可以解决安装过程中的问题
如果你有解决的办法,请告诉我,谢谢!
第二:要分清每一个步骤是需要用oracle用户还是root用户,有些问题,可以用set命令看看环境变量是不是设置正确
第三,Oracle升级时所用的补丁必须以root身份打