# groupadd dba # groupadd oinstall # useradd oracle - g oinstall - G dba # passwd oracle
# rm - Rf / uxdb / ora9i # cd / usr / bin # rm - f dbhome oraenv coraenv # rm - f / etc / oratab
# mkdir - p / uxdb / ora9i / product / 9.2 # chown - R oracle.dba / uxdb / ora9i # mkdir / var / opt / oracle # chown oracle.dba / var / opt / oracle
$ pwd / home / oracle $ mkdir setup $ ln - s / uxdb / ora9i ora9i $ cd setup $ gzip - dc ~/ ora9i / ship_9204_linux_disk1.cpio.gz | cpio - idmv $ gzip - dc ~/ ora9i / ship_9204_linux_disk2.cpio.gz | cpio - idmv $ gzip - dc ~/ ora9i / ship_9204_linux_disk3.cpio.gz | cpio - idmv $ mkdir .. / up926 $ cd .. / up926 $ unzip ~/ ora9i / p3948480_9206_LINUX.zip $ mkdir .. / up927 $ cd .. / up927 $ unzip ~/ ora9i / p4163445_92070_LINUX.zip $ rm - f ~/ ora9i /**/ /*.gz $ rm -f ~/ora9i/*.zip
# cat / proc / meminfo | grep - e Mem: - e Swap: # / sbin / swapon - s
修改 / etc / sysctl.conf 这个文件,加入以下的语句: kernel.shmmax = 1006632960 ... {包含了虚拟内存的最大共享内存,详情见备注} kernel.shmmni = 4096 ... {最小内存数,一般都是4k的大小,也就是4096} kernel.shmall = 655360 ... {内存640M的数值,公式 shmmax=内存(M)*1024} kernel.sem = 250 32000 100 128 fs.file - max = 65536 net.ipv4.ip_local_port_range = 1024 65000
# export RAMSIZE = 640 # echo - n " shmall= " ; echo " $RAMSIZE * 1024 " | bc # echo - n " shmmax= " ; echo " $RAMSIZE * 1024 * 1.5 * 1024 " | bc
编辑文件:在 / etc / security / limits.conf 加入以下语句,然后重启Linux主机。 oracle soft nofile 65536 oracle hard nofile 65536 oracle soft nproc 16384 oracle hard nproc 16384
# mc 296 <----- lrwxrwxrwx 1 root root 6 4月 6 22 : 50 g ++ -> g ++ 296 - rwxr - xr - x 3 root root 81864 2004 - 03 - 24 g ++ 296 - rwxr - xr - x 4 root root 88836 2005 - 07 - 19 g ++ 323 lrwxrwxrwx 1 root root 6 4月 6 22 : 50 gcc -> gcc296 - rwxr - xr - x 2 root root 81864 2004 - 03 - 24 gcc296 - rwxr - xr - x 2 root root 88836 2005 - 07 - 19 gcc323 - rwxr - xr - x 1 root root 84808 2004 - 08 - 04 gcc - ssa - rwxr - xr - x 1 root root 86200 2004 - 08 - 04 g ++- ssa ----->
$ cd setup / Opatch / rhe3 $ unzip p3006854_9204_LINUX.zip $ su - # cd / home / oracle / setup / Opatch / rhe3 / 3006854 # sh rhel3_pre_install.sh <----- Applying patch... Patch successfully applied ----->
$ cd setup / Disk1 $ . / runInstaller
# chown oracle.root / sbin / fuser
$ cd $ORACLE_BASE $ unzip ~/ setup / Opatch / 9206 / p2617419_10102_GENERIC.zip $ cd / tmp $ mkdir ora $ cd ora $ unzip ~/ setup / Opatch / 9204 / p3119415_9204_LINUX.zip $ unzip ~/ setup / Opatch / 9204 / p3238244_9204_LINUX.zip $ unzip ~/ setup / Opatch / 9206 / p4193295_9206_LINUX.zip $ cd $ORACLE_BASE / oui / bin / linux $ ln - s libclntsh.so. 9.0 libclntsh.so
$ cd / tmp / ora / 3119415 $ opatch apply $ cd / tmp / ora / 3238244 $ opatch apply
$ cd / tmp / ora / 4193295 $ opatch apply $ opatch lsinventory
$ cd $ORACLE_HOME / network / lib $ make –f ins_oemagent.mk install
$ agentctl start $ agentctl status
$ cd $ORACLE_HOME / ldap / lib $ make - f ins_ldap.mk install
$ cd / tmp / ora / 4193295 $ sqlplus / nolog connect / as sysdba spool . / logfile @catcpu.sql
$ dbstat ... {首先检查系统状态} $ dbshut ... {关闭数据库再修改} $ dbstat ... {确认数据库已关闭} $ vi / etc / oratab <----- * : / uxdb / ora9i / product / 9.2 :N ora9i: / uxdb / ora9i / product / 9.2 :Y -----> $ dbstart <----- Can ' t find init file for Database "ora9i". Database " ora9i " NOT started. -----> $ vi $ORACLE_HOME / bin / dbstart ... {在vi用/PFILE来搜索,添加SPFILE部分} <----- PFILE = $ ... {ORACLE_HOME} / dbs / init$ ... {ORACLE_SID} .ora SPFILE = $ ... {ORACLE_HOME} / dbs / spfile$ ... {ORACLE_SID} .ora ...... if [ - f $PFILE ] || [ - f $SPFILE ]; then ----->
$ mo <----- / uxdb / ora9i / admin / turbo / pfile / initora9i.ora. 33200616611 # copy to: dbs ----> / uxdb / ora9i / product / 9.2 / dbs / initora9i.ora # check spfile ----> / uxdb / ora9i / product / 9.2 / dbs / spfileora9i.ora ----->
$ dbstart $ dbstat
$ dbshut $ lsnrctl stop $ agentctl stop $ stopJServ.sh $ cd up926 $ find - name all_except_bin.jar <----- . / Disk1 / stage / Components / oracle.swd.jre / 1.4 . 2.02 . 0 / 1 / DataFiles / all_except_bin.jar -----> $ cd . / Disk1 / stage / Components / oracle.swd.jre / 1.4 . 2.02 . 0 / 1 / DataFiles $ cp - pf all_except_bin.jar all_except_bin.jar.eng $ unzip all_except_bin.jar.eng $ find - name font * zh * <----- . / jre / 1.4 . 2 / lib / font.properties.zh.Turbo . / jre / 1.4 . 2 / lib / font.properties.zh_CN.Redhat8. 0 . / jre / 1.4 . 2 / lib / font.properties.zh_TW.Redhat8. 0 . / jre / 1.4 . 2 / lib / font.properties.zh_CN.Sun . / jre / 1.4 . 2 / lib / font.properties.zh_CN_UTF8.Sun . / jre / 1.4 . 2 / lib / font.properties.zh_TW.Sun . / jre / 1.4 . 2 / lib / font.properties.zh_TW_UTF8.Sun -----> $ cd jre / 1.4 . 2 / lib $ rm - f font. * .zh font. * .tlc font. * .zys $ ln - s font.properties.zh_CN.Redhat8. 0 font.properties.zh.zys $ ln - s font.properties.zh.Turbo font.properties.zh.tlc $ ln - s font.properties.zh.zys font.properties.zh $ ls - la * zh * ... {说明:font.properties.zh.zys,此选项保证Redhat AS3_U6显示中文} ... {说明:font.properties.zh.tlc,如果安装了tlc字体,可以显示中文} $ cd .. / .. / .. $ rm - f all_except_bin.jar $ zip - r all_except_bin.jar jre / $ rm - Rf jre /
/ bin / rm: lstat‘ / uxdb / ora9i / product / 9.2 / rdbms / filemap’失败: 没有那个文件或目录 # cd $ORACLE_HOME # vi root.sh ... {在vi里用/RM=来搜索,一共有两个地方需要替换} <----- RM = " /bin/rm -f " ...... RM = " /bin/rm -f " -----> # sh root.sh
$ perl - V $ ln - s $ORACLE_HOME / jdk $ORACLE_HOME / Apache / jdk $ cd $ORACLE_HOME / Apache / Apache / bin $ vi apachectl <----- PERL5LIB =/ uxdb / ora9i / product / 9.2 / Apache / perl / lib / 5.00503 : / uxdb / ora9i / product / 9.2 / Apache / perl / lib / site_perl / 5.005 / i686 - linux; export PERL5LIB -----> $ vi startJServ.sh <----- $ ... {APACHE_HOME} / bin / apachectl startssl -----> $ dbstart $ lsnrctl start $ agentctl start $ startJServ.sh
$ tnsping 192.168 . 100.60 $ dbstat $ lsnrctl status $ agentctl status $ apachectl status $ apachectl fullstatus
http: // 192.168.100.60:7777/ http: // 192.168.100.60:7778/ https: // 192.168.100.60:4443/
在重装 Oracle 的时候,如果你忘了注释掉 oraweb/orassl/oraSSL 三项,那么装好后的 Apache 端口会跟上面的不同,但很容易就调整回正常。
$ vi $ORACLE_HOME/Apache/Apache/conf/httpd.conf {在vi用/444和/777查找}
<-----
Port 7777
Listen 7777
......
<IfModule mod_ssl.c>
Port 7778
Listen 7778
Listen 4443
</IfModule>
......
<IfModule mod_oprocmgr.c>
ProcNode rebeca 7777
<IfModule mod_ssl.c>
ProcNode rebeca 7778
</IfModule>
......
##
## SSL Virtual Host Context
##
<VirtualHost _default_:4443>
......
Port 4443
----->
$ vi $ORACLE_HOME/Apache/Apache/bin/apachectl {在vi用/:77查找}
<----
STATUSURL="http://localhost:7778/server-status"
----->
$ apachectl restart
$ apachectl fullstatus
3) 如果你想让Oracle在开机和关机的时候以服务方式运行,请参考"脚本精选"。如果手工启动和关闭已经足够,那么现在就在WinXp上装个客户端访问ora9i。
例如:ORACLE_SID=ora9i, ORACLE_NAME=turbo, IP=192.168.100.60。那么,配置 Net Config 时,填写 turbo 和 192.168.100.60,在 oemapp cosole访问时,可以使用本地 tnsname 的 TURBO,或者写主机名(填IP或域名)以及SID,然后网络服务名就会自动变成 ORA9I_192.168.100.60。
--------------------
参考文献:
好几年前就使用 Oracle 8i,安装过程很复杂,不看文档根本做不下去。现在Oracle 9i 比较好一点,问题少一些,但别人的经验总是有帮助的。在我动手安装和整理文档的时候,主要是参考以下内容,随后进行了比较大的补充。
1) http://www.chinaunix.net/jh/19/365977.html
[原创] RedHatLinux AS3 U2 安装 oracle9204 成功 笔录
2) http://www.linuxmine.com/3494.html
在RedHat EL AS 3上安装Oracle9.2.0
3) http://www.cublog.cn/opera/showart.php?blogid=10337&id=80972
Oracle for AS3 安装教程
4) http://oracle.chinaitlab.com/install/365186.html
在DELL pe800下安装linux AS3.0+ora 9i 成功经验
5) http://www.gbunix.com/htmldata/2004_08/2/5/article_643_1.html
在Redhat9上安装Oracle 9.2
6) http://www.chinaunix.net/jh/19/650937.html
[原创] 红旗高级服务器Linux 4.1 最新安装Oracle9204 改记