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
<{: Zix :;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
Y<D , #!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++
`=~|5<K} 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
HWy<~Xh=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
如果成功,会输出其他用户可以连接此窗口的结果。 [y.='
然后在另外一个终端中以oracle登陆,执行命令: "8/sY<&5
$./runInstaller t89@|o"i
网上几乎所有的文章都是使用设置环境变量DISPLAY的方法来安装了,但是这里就是不行,这也是困扰我很久的主要问题! 好了,你现在应该能看到安装的界面了吧! ?AsaKF(Wk
可是界面上怎么都是“方框”的乱码呢?呵呵,那是因为语言、字体设置的问题,退出安装,先设置一下环境变量: oo'
$ export LC_ALL=C -i|m(0g
$ ./runInstaller Xh5n-ig
这下好了吧,现在可以方便的进行安装了,应该不会再出现什么问题了! w}j|1 jGo
在安装过程中需要以root来执行两次sh脚本,根据它的提示做就可以了。 S Q]'QdYC
[OWD,*mk
12) 终于安装成功了,现在可以建立你的数据库了