FC 4下安装ORACLE 9i 的全过程
以前在Windows XP下安装过Oracle9i,但是装完了发现它自带的Apache Server跟我原来安装的Apache出现了冲突,使我感到很不爽,于是就把它给卸了。最近又要使用Oracle了,所以又得重新安装,于是决定在 Linux底下文字安装Oracle9i。在安装过程中还使出现了很多的问题,浪费了两天的时间。终于,经过查阅了一些资料,在网友们的帮助下终于安装成功了。为了防止遗忘,马上把安装过程写下来,给大家分享,希望能为以后需要安装的朋友节省点时间。
"X$a~SS~{]
安装环境: , s6? g i
Fedora core 4 FwDQ.&
Oracle9i release 2 &nAFR6;@
;MguBZcR
安装前的准备: $|)Rr;6[:
安装前需要下载如下软件: "dN*%"
ship_9204_linux_disk1.cpio.gz ba;c8h+N?
ship_9204_linux_disk2.cpio.gz ^y_9&XS]e*
ship_9204_linux_disk3.cpio.gz #tk"P+J4
下载地址: +FMm,3v
http://www.oracle.com/technology/software/products/oracle9i/index.html [UoP~=
}fsN=rl^a
p3006854_9204_LINUX.zip(Red Enterprise Linux3的补丁,不过也可以用于 Fedora) X*O3MU
下载地址: zEH`h5nv
http://www.idevelopment.info/data/Oracle/DBA_tips/Linux/FedoraCore2_RPMS r|r(BdL0
/p3006854_9204_LINUX.zip C^,@MK
-Lr*yTH;
开始安装 #D@%5YQj
a. 新建目录 $mkdir /mnt/oracle XhDo/O
b. 将安装文件拷贝到新建的目录下 `k/0fu;m.
/W0p%
c. 解压文件: $gunzip ship_9204_linux_disk1.cpio.gz W4RWt-i
}wvLcv
释放文件:cpio -idmv < ship_9204_linux_disk1.cpio !9y*G`V`
:X;,W d'
可以看到在生成了目录 /mnt/oracle/Disk1 ++oxAM
q` yoj!w
接着上面的步骤生成了Disk2 和 Disk3。 "n?dd`|0{
K o%DZA
解压补丁文件 $ unzip p3006854_9204_LINUX.zip
:;emR0tl
生成了目录 /mnt/oracle/3006854 [B:-$=
`dw>ex
d. 创建安装Oracle所需要的用户以及组 Krf #oC
X0`/q
1)以root用户登录或者是:su - root hTY{|B'I^
2) Oracle不能已root安装,所以要建立一个oracle用户,建立oracle 用户和密码: c+ C*2|}3N
# groupadd oinstall (在安装oracle时会提示输入UNIX Group name:oinstall) b@_Asrb
# groupadd dba "K]!=K'
# useradd -g oinstall -G dba oracle PxLJ-B?Z]
# passwd oracle (注意:此不能忘记,如果没有建立密码,可能下次无法用oracle登陆) >[&G)X0
# groupadd apache OBoC`',^
# useradd –gapache –G oinstall apache z-=cCJ:%
# passwd apache IQNrd^`
Rb% ;W
3)b) 准备文件目录: TX!P'd8B)
# mkdir -p /opt/ora9/product/9.2 zsD |?E
# mkdir /var/opt/oracle Jr0iJ,S
# chown oracle.dba /var/opt/oracle AomXxok
# chown -R oracle.dba /opt/ora9 "ir{2.K?
C3!*'
4)设置内核参数,调节信号灯及共享内存 2,S{y5 KX
修改 /etc/sysctl.conf 这个文件,加入以下的语句: J!qD'd
kernel.shmmax = 2147483648 (机器内存2G,如果你的没这么大可相应设置小些,我的是512M的,所以改成相应的内存就可以了) w~+eo5/
kernel.shmmni = 4096 Q[t, ^r
kernel.shmall = 2097152 {C-c^cfK/x
kernel.sem = 250 32000 100 128 _zFY_]Y"
fs.file-max = 65536 t>2t z-!
net.ipv4.ip_local_port_range = 1024 65000 YD ,
#!2#]-
5)执行sysctl以反映修改 6:.4e7iV
# sysctl –p pbAc2K "J
FyEq6)
6)设置oracle对文件的要求 &W]U]Sl[pC
编辑文件:/etc/security/limits.conf 加入以下语句: 4I"~l^P
oracle soft nofile 65536 /]+mO/]>
oracle hard nofile 65536 bb3IAy's
oracle soft nproc 16384 #NP*kZtV
oracle hard nproc 16384 pQ6JN?
5Wn4O6k
7)以root身份设置系统环境 oaK1TnzW7
%y2EJ~hn|
#export ORACLE_BASE=/opt/ora9 )j63vjH7
#export ORACLE_HOME=/opt/ora9/product/9.2 WlN#!7
%sQ~xu ?u
Hqu8pqE
8)确定使用正确的编译器 (这一步我用过了,反而出现了问题,导致gcc找不到,所以建议不要使用;如果后面运行sh脚本时出问题了再回来做此步) >)Hrl%:
#mv /usr/bin/gcc /usr/bin/gcc323 --如果没有gcc这个文件,请不要执行此命令 gRfx5D"
#mv /usr/bin/g++296 /usr/bin/g++ --如果没有gcc这个文件,请不要执行此命令 g&90gzH
#ln –s /usr/bin/gcc296 /usr/bin/gcc P(r"Gvl5
#ln –s /usr/bin/g++296 /usr/bin/g++ `=~|5K}
3aPxpjD
9)打开一个新的终端,以Oracle用户登陆,然后修改./bash_profile文件 `(*DiLNFZ
L]Im!.6
$ vi /home/oracle/.bash_profile nP#&pky
ut #wa,
添加以下的内容: y'w0,bUtw
)YFfwt
export DISPLAY=”127.0.0.1:0.0” (我这里虽然设了,但是安装开始时还是显示无法连接X Server,查资料后知道可能是JDK版本的问题, Eb{0Mh{
这里可以不加此行,下面自有解决方案) G>^#xYaF>
export ORACLE_BASE=/opt/ora9 _7dGQ!5LU
export ORACLE_HOME=/opt/ora9/product/9.2 _`oCgIxW
export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/Apache/Apache/bin:$PATH HWyh=u
export ORACLE_OWNER=oracle Xs/(
export ORACLE_SID=ora9i (数据库全局变量名) l 3 N]w x
export ORACLE_TERM=xterm (xterm窗口模式 vt100 终端调试模式) ?n M
export LD_ASSUME_KERNEL=2.4.1 (这一步非常重要,不能用实际的内核为2.4.22) export THREADS_FLAG=native ?0@I#36t
export LD_LIBRARY_PATH=/opt/ora9/product/9.2/lib:$LD_LIBRARY_PATH gn3t}^.Bm
export PATH=/opt/ora9/product/9.2/bin:$PATH vBX S p8
export NLS_LANG=AMERICAN (设置语言AMERICAN英文) #V4vS
export ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data {hN[F6-
保存后退出. 执行: source .bash_profile 查看 set | more xjJ9R
然后。退出登录,再次进入,这时候oracle的环境就已经生效了.注:一定要推出后重登陆,否则不会生效! Lb{gf JV
T!Y+b~WCLx
注意,如果内核参数设置过高,即设置为实际内核 export LD_ASSUME_KERNEL=2.4.22就会出现以下错误:/ i(nEXBMNu1
./->
opt/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 ]Hq$ aAX{U
xb t|?6$u
造成不能安装 OEM,net configure 等组件 G }750
tzj0 kG%;
10)安装补丁 *,P9/4'
ifRb/! E=>
$ cd /home/ora9i /3006854 9Ve
RjE;.1;i'
$ chmod +x rhe13_pre_install.sh c5::8ggs
$ sh rhe13_pre_install.sh yo1Antr1
Applying patch... L0v" 2x%O
Patch successfully applied T}w'S
0]*!4J}Ljv
这里很重要,一定要成功,否则就无法安装,会出现下面的错误。如果执行时报错:gcc找不到,则进行上面设置编译器的步骤。我设了反而出错了! :( dn)vSVk%qY
注意:如果没有安装补丁,安装时会出现如下的错误信息: A9AUr|p9
)',gOs< WW
Initializing Java Virtual Machine from /tmp/OraInstall2005-01-18_06-01-55PM/jre/bin/java. Please wait... Z az}?*>s
Error occurred during initialization of VM ,|h(7N,
Unable to load native library: /tmp/OraInstall2005-01-18_06-01-55PM/jre/lib/i386/libjava.so: symbol __libc_wait, version GLIBC_2.0 not defined in file libc.so.6 with link time reference yQe:k"8<
B]E~u4P
11) 以oracle用户安装Oracle L1Tm4A;
rV=$R K
$ cd /mnt/oracle/Disk1 BoNQcX
BE]>f
$./runInstaller ~_%aL
Initializing Java Virtual Machine from /tmp/OraInstall2005-11-09_07-21-54PM/jre/bin/java. Please wait... 9stR6zk8
如果以上步骤设置了DISPLAY的环境变量,而且安装界面也已出现,那么祝贺你,你安装Oracle9i已基本不会有问题了。但是我设置了以后就出现了如下的错误,导致无法继续安装: " )>CnX
Exception in thread "main" java.lang.InternalError: Can''t connect to X11 window server using ''127.0.0.1:0.0'' as the value of the DISPLAY variable. +j~vk,
at sun.awt.X11GraphicsEnvironment.initDisplay(Native Method) nVt)+y5
at sun.awt.X11GraphicsEnvironment.(X11GraphicsEnvironment.java:59) Hmj'FbL3
at java.lang.Class.forName0(Native Method) >!}6-w
at java.lang.Class.forName(Class.java:120) &GWHA ?w
at java.awt.GraphicsEnvironment.getLocalGraphicsEnvironment(GraphicsEnvironment.java:58) f9T4p;
at java.awt.Window.(Window.java:188) Ii:}ZOKD
at java.awt.Frame.(Frame.java:315) 6aDuUe
at java.awt.Frame.(Frame.java:262) 4##w'+u
at oracle.sysman.oii.oiic.OiicInstaller.main(OiicInstaller.java:593) OW6wLEt#
f1VeSdu
我在网上查了一下,原因可能是由于JDK的版本过老,在使用AWT时的一个属性出了问题。可以使用如下方法解决: 24_$gG
如果你设置了环境变量DISPLAY,请先到/home/oracle/.bash_profile中把DISPLAY删掉,然后打开一个新的终端(注:必须是图形界面下的Koncole,如果在文字界面下将不成功),以root登陆,输入如下命令: 7 =@_j"
#xhost + R^QKEyCn
如果成功,会输出其他用户可以连接此窗口的结果。 [
安装环境: , s6? g i
Fedora core 4 FwDQ.&
Oracle9i release 2 &nAFR6;@
;MguBZcR
安装前的准备: $|)Rr;6[:
安装前需要下载如下软件: "dN*%"
ship_9204_linux_disk1.cpio.gz ba;c8h+N?
ship_9204_linux_disk2.cpio.gz ^y_9&XS]e*
ship_9204_linux_disk3.cpio.gz #tk"P+J4
下载地址: +FMm,3v
http://www.oracle.com/technology/software/products/oracle9i/index.html [UoP~=
}fsN=rl^a
p3006854_9204_LINUX.zip(Red Enterprise Linux3的补丁,不过也可以用于 Fedora) X*O3MU
下载地址: zEH`h5nv
http://www.idevelopment.info/data/Oracle/DBA_tips/Linux/FedoraCore2_RPMS r|r(BdL0
/p3006854_9204_LINUX.zip C^,@MK
-Lr*yTH;
开始安装 #D@%5YQj
a. 新建目录 $mkdir /mnt/oracle XhDo/O
b. 将安装文件拷贝到新建的目录下 `k/0fu;m.
/W0p%
c. 解压文件: $gunzip ship_9204_linux_disk1.cpio.gz W4RWt-i
}wvLcv
释放文件:cpio -idmv < ship_9204_linux_disk1.cpio !9y*G`V`
:X;,W d'
可以看到在生成了目录 /mnt/oracle/Disk1 ++oxAM
q` yoj!w
接着上面的步骤生成了Disk2 和 Disk3。 "n?dd`|0{
K o%DZA
解压补丁文件 $ unzip p3006854_9204_LINUX.zip
:;emR0tl
生成了目录 /mnt/oracle/3006854 [B:-$=
`dw>ex
d. 创建安装Oracle所需要的用户以及组 Krf #oC
X0`/q
1)以root用户登录或者是:su - root hTY{|B'I^
2) Oracle不能已root安装,所以要建立一个oracle用户,建立oracle 用户和密码: c+ C*2|}3N
# groupadd oinstall (在安装oracle时会提示输入UNIX Group name:oinstall) b@_Asrb
# groupadd dba "K]!=K'
# useradd -g oinstall -G dba oracle PxLJ-B?Z]
# passwd oracle (注意:此不能忘记,如果没有建立密码,可能下次无法用oracle登陆) >[&G)X0
# groupadd apache OBoC`',^
# useradd –gapache –G oinstall apache z-=cCJ:%
# passwd apache IQNrd^`
Rb% ;W
3)b) 准备文件目录: TX!P'd8B)
# mkdir -p /opt/ora9/product/9.2 zsD |?E
# mkdir /var/opt/oracle Jr0iJ,S
# chown oracle.dba /var/opt/oracle AomXxok
# chown -R oracle.dba /opt/ora9 "ir{2.K?
C3!*'
4)设置内核参数,调节信号灯及共享内存 2,S{y5 KX
修改 /etc/sysctl.conf 这个文件,加入以下的语句: J!qD'd
kernel.shmmax = 2147483648 (机器内存2G,如果你的没这么大可相应设置小些,我的是512M的,所以改成相应的内存就可以了) w~+eo5/
kernel.shmmni = 4096 Q[t, ^r
kernel.shmall = 2097152 {C-c^cfK/x
kernel.sem = 250 32000 100 128 _zFY_]Y"
fs.file-max = 65536 t>2t z-!
net.ipv4.ip_local_port_range = 1024 65000 YD ,
#!2#]-
5)执行sysctl以反映修改 6:.4e7iV
# sysctl –p pbAc2K "J
FyEq6)
6)设置oracle对文件的要求 &W]U]Sl[pC
编辑文件:/etc/security/limits.conf 加入以下语句: 4I"~l^P
oracle soft nofile 65536 /]+mO/]>
oracle hard nofile 65536 bb3IAy's
oracle soft nproc 16384 #NP*kZtV
oracle hard nproc 16384 pQ6JN?
5Wn4O6k
7)以root身份设置系统环境 oaK1TnzW7
%y2EJ~hn|
#export ORACLE_BASE=/opt/ora9 )j63vjH7
#export ORACLE_HOME=/opt/ora9/product/9.2 WlN#!7
%sQ~xu ?u
Hqu8pqE
8)确定使用正确的编译器 (这一步我用过了,反而出现了问题,导致gcc找不到,所以建议不要使用;如果后面运行sh脚本时出问题了再回来做此步) >)Hrl%:
#mv /usr/bin/gcc /usr/bin/gcc323 --如果没有gcc这个文件,请不要执行此命令 gRfx5D"
#mv /usr/bin/g++296 /usr/bin/g++ --如果没有gcc这个文件,请不要执行此命令 g&90gzH
#ln –s /usr/bin/gcc296 /usr/bin/gcc P(r"Gvl5
#ln –s /usr/bin/g++296 /usr/bin/g++ `=~|5K}
3aPxpjD
9)打开一个新的终端,以Oracle用户登陆,然后修改./bash_profile文件 `(*DiLNFZ
L]Im!.6
$ vi /home/oracle/.bash_profile nP#&pky
ut #wa,
添加以下的内容: y'w0,bUtw
)YFfwt
export DISPLAY=”127.0.0.1:0.0” (我这里虽然设了,但是安装开始时还是显示无法连接X Server,查资料后知道可能是JDK版本的问题, Eb{0Mh{
这里可以不加此行,下面自有解决方案) G>^#xYaF>
export ORACLE_BASE=/opt/ora9 _7dGQ!5LU
export ORACLE_HOME=/opt/ora9/product/9.2 _`oCgIxW
export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/Apache/Apache/bin:$PATH HWyh=u
export ORACLE_OWNER=oracle Xs/(
export ORACLE_SID=ora9i (数据库全局变量名) l 3 N]w x
export ORACLE_TERM=xterm (xterm窗口模式 vt100 终端调试模式) ?n M
export LD_ASSUME_KERNEL=2.4.1 (这一步非常重要,不能用实际的内核为2.4.22) export THREADS_FLAG=native ?0@I#36t
export LD_LIBRARY_PATH=/opt/ora9/product/9.2/lib:$LD_LIBRARY_PATH gn3t}^.Bm
export PATH=/opt/ora9/product/9.2/bin:$PATH vBX S p8
export NLS_LANG=AMERICAN (设置语言AMERICAN英文) #V4vS
export ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data {hN[F6-
保存后退出. 执行: source .bash_profile 查看 set | more xjJ9R
然后。退出登录,再次进入,这时候oracle的环境就已经生效了.注:一定要推出后重登陆,否则不会生效! Lb{gf JV
T!Y+b~WCLx
注意,如果内核参数设置过高,即设置为实际内核 export LD_ASSUME_KERNEL=2.4.22就会出现以下错误:/ i(nEXBMNu1
./->
opt/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 ]Hq$ aAX{U
xb t|?6$u
造成不能安装 OEM,net configure 等组件 G }750
tzj0 kG%;
10)安装补丁 *,P9/4'
ifRb/! E=>
$ cd /home/ora9i /3006854 9Ve
RjE;.1;i'
$ chmod +x rhe13_pre_install.sh c5::8ggs
$ sh rhe13_pre_install.sh yo1Antr1
Applying patch... L0v" 2x%O
Patch successfully applied T}w'S
0]*!4J}Ljv
这里很重要,一定要成功,否则就无法安装,会出现下面的错误。如果执行时报错:gcc找不到,则进行上面设置编译器的步骤。我设了反而出错了! :( dn)vSVk%qY
注意:如果没有安装补丁,安装时会出现如下的错误信息: A9AUr|p9
)',gOs< WW
Initializing Java Virtual Machine from /tmp/OraInstall2005-01-18_06-01-55PM/jre/bin/java. Please wait... Z az}?*>s
Error occurred during initialization of VM ,|h(7N,
Unable to load native library: /tmp/OraInstall2005-01-18_06-01-55PM/jre/lib/i386/libjava.so: symbol __libc_wait, version GLIBC_2.0 not defined in file libc.so.6 with link time reference yQe:k"8<
B]E~u4P
11) 以oracle用户安装Oracle L1Tm4A;
rV=$R K
$ cd /mnt/oracle/Disk1 BoNQcX
BE]>f
$./runInstaller ~_%aL
Initializing Java Virtual Machine from /tmp/OraInstall2005-11-09_07-21-54PM/jre/bin/java. Please wait... 9stR6zk8
如果以上步骤设置了DISPLAY的环境变量,而且安装界面也已出现,那么祝贺你,你安装Oracle9i已基本不会有问题了。但是我设置了以后就出现了如下的错误,导致无法继续安装: " )>CnX
Exception in thread "main" java.lang.InternalError: Can''t connect to X11 window server using ''127.0.0.1:0.0'' as the value of the DISPLAY variable. +j~vk,
at sun.awt.X11GraphicsEnvironment.initDisplay(Native Method) nVt)+y5
at sun.awt.X11GraphicsEnvironment.(X11GraphicsEnvironment.java:59) Hmj'FbL3
at java.lang.Class.forName0(Native Method) >!}6-w
at java.lang.Class.forName(Class.java:120) &GWHA ?w
at java.awt.GraphicsEnvironment.getLocalGraphicsEnvironment(GraphicsEnvironment.java:58) f9T4p;
at java.awt.Window.(Window.java:188) Ii:}ZOKD
at java.awt.Frame.(Frame.java:315) 6aDuUe
at java.awt.Frame.(Frame.java:262) 4##w'+u
at oracle.sysman.oii.oiic.OiicInstaller.main(OiicInstaller.java:593) OW6wLEt#
f1VeSdu
我在网上查了一下,原因可能是由于JDK的版本过老,在使用AWT时的一个属性出了问题。可以使用如下方法解决: 24_$gG
如果你设置了环境变量DISPLAY,请先到/home/oracle/.bash_profile中把DISPLAY删掉,然后打开一个新的终端(注:必须是图形界面下的Koncole,如果在文字界面下将不成功),以root登陆,输入如下命令: 7 =@_j"
#xhost + R^QKEyCn
如果成功,会输出其他用户可以连接此窗口的结果。 [
转载于:http://blog.itpub.net/122100/viewspace-996223/