RHEL5上Oracle9i的安装

因为安装 Oracle 本来就是一件麻烦事,更何况在 Linux 环境下。以往也有一些相关的教程,但大多以 AS3 或者 AS4 为主。自从 Redhat 发布 RHEL5 后,还没有很好的参考资料。即使有一些残缺的文献,大多都是个人撰写的,其中夹带着一些个人感慨或者其它一些不相关的东西在里面,或者在安装过程当中先操作一些错误的步骤,才回过头告诉你正确的方法。看多了整个人就迷失在作者的梦境当中去了。
基于上述这些原因我才撰写了此文,本文采用了 RHEL AS 5+Oracle9i 的组合方式。个人觉得这个组合还是比较有代表性的:前者是 Redhat 最新的服务器版本;后者是 Oracle 中用得比较广泛也是最容易得到的版本,尤其有利于初学者或者环境演示使用。
本文力求将安装 Oracle 的过程简单化,思路清晰明了,去除繁杂无用的东西。正如李小龙恩师叶大师所讲的“剪枝蔓,立主脑”也就是这个道理吧。
 
3.  软件准备
 
在安装之前我们要先准配好这一次要用到的所有软件包。
 
l RHEL5 安装包 ( 共五张 CD)
 
l Oracle 安装包:
ship_9204_linux_disk1.cpio
ship_9204_linux_disk2.cpio
ship_9204_linux_disk3.cpio
 
l 操作系统补丁包 rhel3_pre_install.sh
 
l RPM 软件包:
 libXpm-3.5.5-3.i386 来自RHEL5-Disk1
 libXpm-devel-3.5.5-3.i386 来自RHEL5-Disk2
 libXp-1.0.0-8.i386 来自RHEL5-Disk2
 libXp-devel-1.0.0-8.i386 来自RHEL5-Disk2
 
4.  注意事项
 
1)      建议在装系统时手工分区,如果你选用自动分区的话一定要在分区之后查看一下根目录的空间是否够用。因为接下来在 Oracle 的安装主目录 /home 下面将会使用很大的空间。
2)      不要过度的迷信 RHEL 为你准备的【定制添加 / 删除软件包】功能,安装系统的时候必须选择【定制安装】并且将所有可能要用到的软件包尽量一次装全,以免以后留下麻烦,尤其是【开发】和【服务器】这两项。
3)      这是老生常谈了,修改文件时要注意先备份再操作。
4)      凡是在 Windows 终端使用 SSH 工具远程登录操作的,在修改内核文件时,绝对不要用拷贝粘贴功能,不管多麻烦也要老老实实、一个字符一个字符地敲!你的编辑器不见得真的是纯文本文件,在拷贝粘贴的过程中很可能会混入一些 Linux 不能识别的字符,导致内核文件损坏和系统瘫痪。
 
5.  系统安装
 
安装 RHEL AS 5 不再赘述,只要注意以下几点就可以了。
1)      安装时的支持语言选择【 Chinese Simple
2)      安装软件包时选择【定制安装】,定制的软件包如下:
桌面环境
默认即可,建议将【 KDE 】也选上。
应用程序
至少应当选中【工程加科学】和【编辑器】
开发 ( 全选 )
强烈建议全部选中,包括每个模块下的软件包,免得日后带来不必要的麻烦。
服务器
至少应当选中【服务器配置工具】和【网络服务器】
基本系统
至少应当选中【 Java 】、【 X 窗口系统】、【管理工具】和【系统工具】
语言支持
默认【 Chinese Simple+English (USA)
3) 如果你不熟悉防火墙的话,强烈建议禁用防火墙,免得日后带来不必要的麻烦。
 
6.  系统配置
 
1)        建立用户和用户组
# groupadd oinstall
# groupadd dba
# useradd -g oinstall -G dba oracle
# passwd oracle
 
2)        建立安装目录
# mkdir -p /home/oracle/product/9.2.0
# chown -R oracle.dba /home/oracle
 
3)        设置内核参数,调节信号灯及共享内存。修改文件 /etc/sysctl.conf
 
// 这是内存 2G 的参数,依据实际情况要对前两行做修改。
kernel.shmmax = 2147483648
// 参数单位为字节,即 2*1024*1024*1024
kernel.shmall = 2097152
// 参数单位为字节,即 2*1024*1024
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000
 
修改 sysctl.conf 文件完成后,要执行 sysctl 命令使之生效。
#sysctl –p
 
4)        打补丁
将补丁 rhe13_pre_install.sh 上传到当前任意目录,然后执行。
#sh rhe13_pre_install.sh
 
如果补丁安装正常,则会出现如下提示:
Applying patch...
Ensuring permissions are correctly set...
Done.
Patch successfully applied
到此,操作系统的配置工作已经完成。也就是说我们做好了环境平台的搭建,下面就可以正式地进行 Oracle9i 的安装了。
 
7.  Oracle 9i 的安装
 
1)      登录复制安装包
 
oracle 用户登录,将 Oracle 安装包上传到用户主目录 (/home/oracle) 中。
 
2)      解压安装包
$cpio -idvm < ship_9204_linux_disk1.cpio
$cpio -idvm < ship_9204_linux_disk2.cpio
$cpio -idvm < ship_9204_linux_disk3.cpio
 
3)      修改文件 /home/oracle/.bash_profile
 
export ORACLE_BASE=/home/oracle
export ORACLE_HOME=/home/oracle/product/9.2.0
export PATH=$PATH:$ORACLE_HOME/bin:$ORACLE_HOME/Apache/Apache/bin
export ORACLE_OWNER=oracle
export ORACLE_SID=cadb
export ORACLE_TERM=xterm
export THREADS_FLAG=native
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib
export NLS_LANG="SIMPLIFIED CHINESE_CHINA.zhs16gbk"
export ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data
 
 
修改完执行 source   命令使变量生效,或者重新启动系统也可以。执行时注意一下执行的结果,如果语法错误会提示。
#source .bash_profile   或者   #reboot
 
4)      准备工作
$ su - root
# cd /usr/lib
# ln -s libstdc++-3-libc6.2-2-2.10.0.so libstdc++-libc6.1-1.so.2
 
5)      安装支持软件包
# rpm -ivh libXpm-3.5.5-3.i386.rpm
# rpm -ivh libXpm-devel-3.5.5-3.i386.rpm
# rpm -ivh libXp-1.0.0-8.i386.rpm
# rpm -ivh libXp-devel-1.0.0-8.i386.rpm
# ulimit -s
# exit
 
6)      安装 Oracle 9i DataBase 9.2.0.4.0
 
oracle 用户登录,运行如下命令,打开安装程序的欢迎界面。 ( 如图 1)
$export LANG=en_US
$/home/oracle/Disk1/runInstaller
 
 
 
这一步是让你选择基准目录,默认即可。 ( 如图 2)
 
 
安装过程中要求输入【 UNIX Group Name 】,这里要输入 oinstall( 如图 3)
 
 
到了这一步 ( 如图 4) 要重新打开一个终端窗口,执行如下命令:
$ su - root
# /tmp/orainstRoot.sh
执行完毕后,再回到安装界面点击【 Continue 】按钮。
 
 
  这一步是让你选择安装目录,默认即可。(如图5)
 
接下来要对安装选项做一些设置。 ( 如图 6 至图 8)
安装项目为: Oracle9i DataBase 9.2.0.4.0
安装类型为: Enterprice Edition
软件包选择: Software Only
 
 
 
 
 
 
到了这一步 ( 如图 9) 要重新打开一个终端窗口,执行如下命令:
$ su - root
# /home/oracle/product/9.2.0/root.sh
这里会提示一句:
Enter the full pathname of the local bin directory:[/usr/local/bin]
直接敲回车即可,再回到安装界面点击【 OK 】按钮。
 
 
 
到了这一步就安装完毕了,点击【 Exit 】按钮退出。 ( 如图 10)
 
 
7)      创建链接
$ cd /home/oracle/product/9.2.0
$ ls -l JRE
$ rm JRE
$ ln -s /home/oracle/jre/1.3.1 JRE
$ su - root
#cd /home/oracle/product/9.2.0/JRE/bin
#ln -s java jre
#cd i386/native_threads
#ln -s java jre
#exit
 
8)      创建数据库
 
运行如下命令,打开数据库配置的欢迎界面。
$export LANG=en_US
$dbca
安装过程中一般默认即可。但有几点要注意。第三步为全局数据库和 SID 起名的时候要注意保持一致。 ( 如图 11)
 
 
第五步 Database Character Sets 中要将字符集设置成 ZHS16GBK( 如图 12)  
 
注意设密码时候不能纯数字,一般数字加字母。 ( 如图 13)
 
 
数据库创建完成后还有三项工作:
第一步,修改文件 /etc/oratab ,把最后一行的 N 改成 Y
第二步,将初始化文件 /home/oracle/admin/ 你创建的那个数据库 /pfile/init*.ora.* 复制到 /home/oracle/product/9.2.0/dbs/initcadb.ora
最后启动数据库。
$dbstart
 
9)      创建监听器
$netca
首先进入配置界面,选择【监听器配置】项,一路【 Next 】下去直到返回配置界面。 ( 如图 14)
 
 
然后再选择【本地网络服务名称配置】项继续 ( 如图 15) ,但是这里有几个地方需要注意一下:
Service Name 为全局数据库名称,即你创建的那个数据库名称。
Host name 为本机的主机名或者 IP 地址。
Net Service Name 为默认和 Service Name 同名,你也可以改为其他的名字。
 
 
创建完成后会在 /home/oracle/product/9.2.0/network/admin 目录下生成 listener.oratnsnames.ora 这两个文件,前者是【监听器配置】项配置完成后生成的,后者是【本地网络服务名称配置】项配置完成后生成的。这两个文件的生成说明监听器创建成功,但配置不一定正确。
所以需要修改文件 listener.ora        添加如下内容
SID_LIST_LISTENER =           // 这一段可能不用改了。
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = /home/oracle/product/9.2.0)
(PROGRAM = extproc)
)
)
(SID_DESC =
(GLOBAL_DBNAME = cadb) 
// 要与 SID_NAME 的名称一致。
(ORACLE_HOME = /home/oracle/product/9.2.0)
(SID_NAME =cadb) 
// 要与 GLOBAL_DBNAME 一致。
)
 
修改完成后,需要重启监听服务
$lsnrctl stop
$lsnrctl start
 
10)  输出环境变量及备份数据库
$source /home/oracle/.bash_profile
$exp system/ 密码 owner=xxbra file=/tmp/ra.dmp log=/tmp/ra.log rows=y
$export LANG=en_US
$dbsart
 
11)  启动数据库管理工具
 
修改文件 /home/oracle/product/9.2.0/bin/oemapp
 
在文中第 90
将原文: PATH=/home/oracle/jre/1.1.8/bin:$PATH
修改为: PATH=/home/oracle/jre/1.3.1/bin:$PATH
 
在文中第 100
JRE="jre $JRENATIVEOPTION -nojit $ORACLE_OEM_JAVAMX $TRACE"
将原文中 -nojit 参数去掉。
 
12)  创建表空间
$oemapp dbastudio
进入图形界面,以 sys 管理员身份登录,创建表空间及用户。由于是图形界面,和其他 SQL 数据库管理工具大同小异。因此,在这里就不再赘述了,具体请见截图。
登录数据库管理器的步骤如下。 ( 如图 16 至图 18)
 
登录数据库管理器
 
  添加数据库
 
  输入用户名密码
 
 
 
创建表空间的步骤如下。 ( 如图 19 至图 22)
  创建表空间
 
  配置表空间
 
  调整表空间容量
 
  创建成功
 
创建用户角色的步骤如下。 ( 如图 23 至图 28)
  创建用户
 
  用户命名
 
  角色配置
 
  系统配置
 
  用户组配置
 
  创建成功
 
 
8.  写在最后的话
 
顺便说一句,由于 Oracle9i 的监听器会经常读写日志文件 listener.log ,该日志一旦膨胀过大 (2G) ,就会造成监听器启动失败。因此需要关闭掉日志写入功能。
解决方案如下:
/home/oracle/product/9.2.0/network/admin/listener.ora 中的最后加上一句
 
LOGGING_LISTENER=OFF
 
但是要注意的是:这一句必须在数据库或监听器重启过以后再进行修改。不要在刚开始修改 listener.ora 时就加上这一句,否则会引起监听器启动失败。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值