您的位置:首页技术文章

在Linux下安装Oracle9i

【字号: 日期:2023-11-19 15:43:32浏览:63作者:馨心
在安装之前有几个地方需要注重的:你的交换分区最好有一个G左右那么大,第二你的硬盘分区最好也要有足够大的空间。下面我那个转贴的中译本:1、创建用户和组:[roko@miniroko] su - [root@miniroko]# groupadd oinstall[root@miniroko]# groupadd dba[root@miniroko]# useradd -g oinstall -G dba Oracle[root@miniroko]# passwd oracle2、预备文件目录:[root@miniroko]# mkdir -p /opt/ora9/prodUCt/9.2[root@miniroko]# mkdir /var/opt/oracle[root@miniroko]# chown oracle.dba /var/opt/oracle[root@miniroko]# chown -R oracle.dba /opt/ora93、调节系统内核参数及安装支持软件包:3.1、首先用命令rpm -qagrep compat 查看系统中是否安有以下几个软件包:compat-gcc-7.3-2.96.118.i386.rpmcompat-libgcj-7.3-2.96.118.i386.rpmcompat-libgcj-devel-7.3-2.96.118.i386.rpmnss_db-compat-2.2-20.i386.rpm假如没有,请拿出你的安装盘,安装以上的包。不要用原文给的那个APT的东东,不熟的人遇上没有解决的依靠性问题的话,就非凡讨厌。3.2、设置内核参数,调节信号灯及共享内存:[root@miniroko]# echo 250 32000 100 128 > /proc/sys/kernel/sem[root@miniroko]# echo 536870912 > /proc/sys/kernel/shmmax[root@miniroko]# echo 4096 > /proc/sys/kernel/shmmni[root@miniroko]# echo 2097152 > /proc/sys/kernel/shmall[root@miniroko]# echo 65536 > /proc/sys/fs/file-max[root@miniroko]# echo 1024 65000 > /proc/sys/net/ipv4/ip_local_port_range当然为了一开机系统就能自动帮你设好这些参数,也可改动 /etc/sysctl.conf 这个文件,加入以下的语句:kernel.shmmax = 536870912kernel.shmmni = 4096kernel.shmall = 2097152kernel.sem = 250 32000 100 128fs.file-max = 65536net.ipv4.ip_local_port_range = 1024 65000保存后,即可。建议关于net.ipv4.ip_local_port_range不要改动,可以用cat /proc/sys/net/ipv4/ip_local_port_range 看到红帽子对这个所定义的范围已经符合,而且端口范围比这个小。3.3、设置oracle对文件的要求:编辑文件:/etc/security/limits.conf 加入以下语句:oracle soft nofile 65536oracle hard nofile 65536oracle soft nproc 16384oracle hard nproc 16384这个需要重启后才能生效的。但是安装的时候无所谓了。4、设置oracle的系统环境:以oracle用户的身份登录:su oraclecd ~编辑它的.bashrc文件加入以的东东:#oracle 9ieXPort ORACLE_BASE=/opt/ora9export ORACLE_HOME=/opt/ora9/product/9.2export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/Apache/Apache/bin:$PATHexport ORACLE_OWNER=oracleexport ORACLE_SID=ora9iexport ORACLE_TERM=vt100export LD_ASSUME_KERNEL=2.4.1export THREADS_FLAG=nativeexport LD_LIBRARY_PATH=/opt/ora9/product/9.2/lib:$LD_LIBRARY_PATHexport 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 NLS_LANG='croatian_croatia.ee8iso8859p2' (注重这个东东把它注释掉,因为我们用的是中文系统。 然而为了能够显示中文加入以下一行:export LC=en_US退出,将你下载的三个iso文件预备好。5、解压你下载的文件:5.1、新建一个目录:mkdir /mnt/Oracle5.2、将三个文件拷入新建的目录:cp ln_* /mnt/Oracle5.3、解压三个文件: cd /mnt/Oraclegunzip gunzip lnx_920_disk1.cpio.gzgunzip lnx_920_disk2.cpio.gzgunzip lnx_920_disk3.cpio.gzcpio -idmv < lnx_920_disk1.cpiocpio -idmv < lnx_920_disk2.cpiocpio -idmv < lnx_920_disk3.cpio 5.4、这个将生成三个文件夹:DISK1, DISK2, DISK36、开始安装:以oracle的用户身份进入:su oraclecd ~/mnt/Oracle/DSIK1/runInstall.sh在安装的过程中会碰到几个错误:第一个错误提示关于这个文件ins_oemagent.mk的,不要去管它,选择忽略,我们将在下面的步骤中修复它。第二错误提示:Error in invoking target install of makefile $ORACLE_HOME/ctx/lib/ins_ctx.mk这个时候就先不要选择忽略了,这个时候你要先打开一个终端:以oracle用户的身份登录进去,运行以下的命令:[oracle@miniroko oracle]$ cd $ORACLE_HOME/install[oracle@miniroko install]$ tail make.log可以看到这个,然后在其下有错误提示:gcc -o ctxhx -L/opt/ora9/product/9.2/ctx/lib/ -L/opt/ora9/product/9.2/lib/-L/opt/ora9/product/9.2/lib/stubs/ /opt/ora9/product/9.2/ctx/lib/ctxhx.o-L/opt/ora9/product/9.2/ctx/lib/ -lm -lsc_ca -lsc_fa -lsc_ex -lsc_da -lsc_ut-lsc_ch -lsc_fi -lctxhx -lc -Wl,-rpath,/opt/ora9/product/9.2/ctx/lib -lnls9-lcore9 -lnls9 -lcore9 -lnls9 -lXML9 -lcore9 -lunls9 -lnls9我们运行以下的命令来修改它:[oracle@miniroko]$ cd $ORACLE_HOME/bin[oracle@miniroko bin]$ gcc -o ctxhx -L/opt/ora9/product/9.2/ctx/lib/-L/opt/ora9/product/9.2/lib/ -L/opt/ora9/product/9.2/lib/stubs//opt/ora9/product/9.2/ctx/lib/ctxhx.o -L/opt/ora9/product/9.2/ctx/lib/-lm -lsc_ca -lsc_fa -lsc_ex -lsc_da -lsc_ut -lsc_ch -lsc_fi -lctxhx -lc-Wl,-rpath,/opt/ora9/product/9.2/ctx/lib -lnls9 -lcore9 -lnls9 -lcore9-lnls9 -lxml9 -lcore9 -lunls9 -lnls9 -ldl也就重新在这个地方编译一下上面出错的地方。然后再回到安装界面,对那个错误对话框选择忽略。继续安装就行了。第三个错误会在启动和配置助手程序的时候出错,不要管它,选择忽略就行了。我们在下面的步骤将会对第一个错误和第三个错误进宪修补。7、修改系统:以oracle用户的身份登入,执行以下命令:[oracle@miniroko oracle]$ cd $ORACLE_HOME/network/lib[oracle@miniroko lib]$ make -f ins_net_client.mk install然后编辑这个文件:oracle@miniroko lib]$vi $ORACLE_HOME/ctx/lib/ins_ctx.mk找到第13行、第14行由ctxhx: $(CTXHXOBJ)$(LINK) $(CTXHXOBJ) $(INSO_LINK)改为:ctxhx: $(CTXHXOBJ)$(LINK) -ldl $(CTXHXOBJ) $(INSO_LINK)存盘退出,执行以下命令:[oracle@miniroko lib]$ make -f $ORACLE_HOME/ctx/lib/ins_ctx.mk install现在可以重新启动agents了。[oracle@miniroko lib]$ /opt/ora9/product/9.2/bin/agentctl start8、为了方便治理,可以写一个启动脚本:以ROOt身份进入,编写以下脚本:#!/bin/bash## (c) denis.klaric@in2.hr## name: /etc/rc.d/init.d/ora9# description: starts and stops oracle 9i database, TNS listener# http server, and fixes kernel parameters for oracle#oracle environmentexport ORACLE_HOME=/opt/ora9/product/9.2export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/Apache/Apache/bin:$PATHexport NLS_LANG='croatian_croatia.ee8iso8859p2'export ORACLE_SID=tisexport DISPLAY=:0oracle_user=oracle# see how we're calledcase $1 instart)# fix kernel parametersecho 250 32000 100 128 > /proc/sys/kernel/semecho 536870912 > /proc/sys/kernel/shmmaxecho 4096 > /proc/sys/kernel/shmmniecho 2097152 > /proc/sys/kernel/shmallecho 65536 > /proc/sys/kernel/fs/file-maxecho 1024 65000 > /proc/sys/net/ipv4/ip_local_port_range# start listener, apache and databasesu - '$oracle_user'<<EOOlsnrctl startapachectl startsqlplus /nolog<<EOSconnect / as sysdbastartupEOSEOOstop)# stop listener, apache and databasesu - '$oracle_user'<<EOOlsnrctl stopapachectl stopsqlplus /nolog<<EOSconnect / as sysdbashutdown immediateEOSEOO*)echo 'Usage: ora9 [startstop]'esac存为ora9后,然后用chmod a+x ora9,即可在以后以root身份运行/etc/rc.d/init.d/ora9 start stop 来治理oracle的启动和停止了。 假如要将这个脚本加入到系统中使其可开机运行,那么要运行以下命令:chkconfig --level 3(或者是5) --add ora9即可。
标签: Linux系统