You are on page 1of 4

Oracle9i(R2) for linux 安装指南

本文将介绍 Oracle Database 9i 在 Red Hat Linux9 下的安装过程以及安装过程中可能


会出现的问题,并加以解决。
一、系统要求
1、内存
安 装 Oralce 9i 软 件 至 少 需 要 512M 内 存 , 用 以 下 命 令 可 以 查 看 机 子 的 内 存 大 小 :
grep MemTotal /proc/meminfo
MemTotal: 900252 kB
900252kB 就是你系统的内存大小。
我们是在 PC 机上装的 linux,内存为 512M
2 、 交 换 区 :
交换区的大小一般要求是内存的两倍,至少要求达到 400M 以上,当然是越大越好,用以
下 的 命 令 可 以 查 看 系 统 交 换 区 的 大 小 :
/sbin/swapon -s
Filename Type Size Used Priority
/dev/sda6 partition 105221 686976 –1
其中 105221 就是系统交换区的大小。
3 、 驱 : 光
如果你使用光盘安装 Oracle9i 则你的机子上需要 8 速以上的 CDROM,如果你是下载了
oracle9i 的包文件,则不需要使用的 CDROM。
4 、 硬 盘 空 间 :
安装 Oracle9i 数据库至少要有 2.86GB 以上的剩余空间。
5 、 JDK
如果你要安装 Oracle HTTP Server 还需要用到 blackdown 的 JDK1.3.1,可以到网上去
下载
二、安装
1、 创 建 用 户 和 组 :
# groupadd oinstall
# groupadd dba
# useradd -g oinstall -G dba oracle
# passwd oracle
2、 准 备 文 件 目 录 :
# mkdir -p /opt/ora9/product/9.2
# mkdir /var/opt/oracle
# chown oracle.dba /var/opt/oracle
# chown -R oracle.dba /opt/ora9
3、 安 装 支 持 软 件 包 :
首 先 用 命 令 rpm -qa|grep compat 查 看 系 统 中 是 否 安 有 以 下 几 个 软 件 包 :
compat-gcc-7.3-2.96.118.i386.rpm
compat-libgcj-7.3-2.96.118.i386.rpm
compat-libgcj-devel-7.3-2.96.118.i386.rpm
nss_db-compat-2.2-20.i386.rpm
如果没有,请拿出你的安装盘,安装以上的包。如点击“主菜单-系统设置-删除/添加应用程序-开发-
开发工具”进行相应的开发工具的安装。
4、 设置内核参数,调节信号灯及共享内存:
# 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
保 存 后 , 即 可 。 建 议 关 于 net.ipv4.ip_local_port_range 不 要 改 动 , 可 以 用 cat
/proc/sys/net/ipv4/ip_local_port_range 看到红帽子对这个所定义的范围已经符合,而且端口
范围比这个小。
5、 设 置 oracle 对 文 件 的 要 求 :
编 辑 文 件 : /etc/security/limits.conf 加 入 以 下 语 句 :
oracle soft nofile 65536
oracle hard nofile 65536
oracle soft nproc 16384
oracle hard nproc 16384
这个需要重启后才能生效的。但是安装的时候无所谓了。
6、 设 置 oracle 的 系 统 环 境 :
以 oracle 用 户 的 身 份 登 录 :
su oracle
cd ~
编 辑 它 的 .bashrc 文 件 加 入 以 的 东 东 :
#oracle 9i
export ORACLE_BASE=/opt/ora9
export ORACLE_HOME=/opt/ora9/product/9.2
export PATH=$ORACLE_HOME/Apache/Apache/bin:$ORACLE_HOME/bin:$PATH  
export ORACLE_OWNER=oracle
export ORACLE_SID=ora9i
export ORACLE_TERM=xterm
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
export NLS_LANG=AMERICAN
7、 解 压 你 下 载 的 文 件 :
7.1 、 新 建 一 个 目 录 : mkdir /mnt/Oracle
7.2 、 将 三 个 文 件 拷 入 新 建 的 目 录 : cp ln_* /mnt/Oracle
7.3 、 解 压 三 个 文 件 : cd /mnt/Oracle
gunzip gunzip lnx_920_disk1.cpio.gz
gunzip lnx_920_disk2.cpio.gz
gunzip lnx_920_disk3.cpio.gz
cpio -idmv < lnx_920_disk1.cpio
cpio -idmv < lnx_920_disk2.cpio
cpio -idmv < lnx_920_disk3.cpio
7.4、这个将生成三个文件夹:DISK1, DISK2, DISK3
8、 另外开一个控制台,开始安装:
xhost +
以 oracle 的用户身份进入:
su - oracle
cd /mnt/Oracle/DSIK1/runInstall.sh
在安装的过程中会遇到几个错误:
第一个错误提示关于这个文件 ins_oemagent.mk 的,不要去管它,选择忽略,我们
将在下面的步骤中修复它。
第二错误提示:Error in invoking target install of makefile
$ORACLE_HOME/ctx/lib/ins_ctx.mk 
这个时候就先不要选择忽略了,这个时候你要先打开一个终端:以 oracle 用户的身份
登录进去,运行以下的命令:
cd $ORACLE_HOME/install
tail make.log

可以看到这个,然后在其下有错误提示:
gcc -o ctxhx -L/u01/app/oracle/product/9.2.0.1.0/ctx/lib/ -L
/u01/app/oracle/product/9.2.0.1.0/lib/
-L/u01/app/oracle/product/9.2.0.1.0/lib/stubs/
/u01/app/oracle/product/9.2.0.1.0/ctx/lib/ctxhx.o
-L/u01/app/oracle/product/9.2.0.1.0/ctx/lib/ -lm -lsc_ca -lsc_fa
-lsc_ex -lsc_da -lsc_ut
-lsc_ch -lsc_fi -lctxhx -lc -Wl,-
rpath,/u01/app/oracle/product/9.2.0.1.0/ctx/lib -lnls9
-lcore9 -lnls9 -lcore9 -lnls9 -lxml9 -lcore9 -lunls9 -lnls9
我们运行以下的命令来修改它:
cd $ORACLE_HOME/bin
gcc -o ctxhx -L/u01/app/oracle/product/9.2.0.1.0/ctx/lib/ -L
/u01/app/oracle/product/9.2.0.1.0/lib/
-L/u01/app/oracle/product/9.2.0.1.0/lib/stubs/
/u01/app/oracle/product/9.2.0.1.0/ctx/lib/ctxhx.o
-L/u01/app/oracle/product/9.2.0.1.0/ctx/lib/ -lm -lsc_ca -lsc_fa
-lsc_ex -lsc_da -lsc_ut
-lsc_ch -lsc_fi -lctxhx -lc -Wl,-
rpath,/u01/app/oracle/product/9.2.0.1.0/ctx/lib -lnls9
-lcore9 -lnls9 -lcore9 -lnls9 -lxml9 -lcore9 -lunls9 -lnls9 -ldl
也就重新在这个地方编译一下上面出错的地方。然后再回到安装界面,对那个错误对话框选择忽略。继续安
装 就 行 了 。

第三个错误会在启动和配置助手程序的时候出错,不要管它,选择忽略就行了。我们在下面的步骤将会对
第 一 个 错 误 和 第 三 个 错 误 进 宪 修 补 。

7 、 修 改 系 统 :
以 oracle 用 户 的 身 份 登 入 , 执 行 以 下 命 令 :
$ cd $ORACLE_HOME/network/lib
$ make -f ins_net_client.mk install

然 后 编 辑 这 个 文 件 :
$vi $ORACLE_HOME/ctx/lib/ins_ctx.mk 找到第 13 行、第 14 行由
ctxhx $(CTXHXOBJ) 
$(LINK) $(CTXHXOBJ) $(INSO_LINK)   
改 为 :
ctxhx $(CTXHXOBJ) 
$(LINK) -ldl $(CTXHXOBJ) $(INSO_LINK)   
存 盘 退 出 , 执 行 以 下 命 令 :
$ make -f $ORACLE_HOME/ctx/lib/ins_ctx.mk  install

现 在 可 以 重 新 启 动 agents 了 。
$ /opt/ora9/product/9.2/bin/agentctl start