这个也是我曾经写在大富翁论坛上的笔记,今天也一并转贴一下: http://www.delphibbs.com/keylife/iblog_show.asp?xid=6526
如下:---
在redhat Linux9下安装Oracle9.2.0的一点经验
作者:jrq
摘要:简述在redhat Linux9环境下安装Oracle9.2.0数据库的过程。
关键字:Oracle9i redhat Linux9 内核参数 环境变量
一直是在redhat Linux7.1环境下使用Oracle817的,前几天整理系统,干脆整体升级,要在redhat Linux9环境下安装Oracle9i。花了几天的时间,在网上查找了很多资料和若干帖子,归纳整理了一下,然后动手终于在redhat9上成功的安装了Oracle9.2.0(Oracle9i Enterprise Edition Release 9.2.0.1.0)。现在把安装过程记录一下,以备日后参考。
一、基本情况介绍: 我的机器配置情况: CPU:P4 1.5G 内存:256M 硬盘:40GB
硬盘分区情况: Windows分区C、D、E,共有25GB。 Linux Swap:1.5GB Linux Ext2:12GB
操作系统:radhat9(Linux Kernel 2.4.20-8)
在网上看到的介绍Oracle如何安装的文章说,Oracle对Linux的Swap分区的要求至少要有内存的2倍,即512M大小,当然越大越好。最初在Linux7.1下使用Oracle817的时候,我的Swap分区大小一直是512M,在这次安装Oracle9i的过程中发现,当到了创建数据库阶段的时候,提示“out of momery”的错误,安装过程被迫停止,估计是Swap有点小了,没有办法,又重新划分了磁盘空间,把Swap分区一下子增大到1.5GB,再次安装,果然安全的、顺利的、无误的通过。 ^_^
Linux的文件分区最少需要7G。因为在Linux下安装Oracle的条件需求比较苛刻,所以在安装redhat Linux9的时候我选择是全部安装,这样在后面的Oracle9i安装中系统就不需要再安装这个包那个包了,省了很多的麻烦了,这个方法还是在redhat Linux7.1下安装Oracle817的时候学会的(在网上看到的文章中也有推荐说全部安装的)。redhat Linux9的全部安装大约需要4.5G的空间,而Oracle9i数据库大概需要2GB的空间(何致億在他的文章中说数据库系统需要2 ~ 2.5 GB的空间),所以一共下来差不多要7GB。
以上数据仅供参考,一句话,给Linux的分区空间越大越好,对Oracle的操作越有利。 ^_^
二、准备工作: 1.Oracle 9i的获取 Oracle920_for_Linux是我在 ftp://ftp.lib.tsinghua.edu.cn/ 这个站点上(清华的FTP服务器),花了一个晚上的时间来下载的,一共是3个压缩文件,名字分别为: lnx_920_disk1.cpio.gz 大小为527 MB (553,607,967 字节) lnx_920_disk2.cpio.gz 大小为561 MB (588,799,187 字节) lnx_920_disk3.cpio.gz 大小为421 MB (442,089,854 字节) 3个文件共有1.47 GB (1,584,497,008 字节)。
2.备注信息 看到网上的文章介绍,一般说是为考虑兼容性的问题,在安装前都需要对redhat系统进行安装或替换一些rpm包,还要确定rpm包的依赖关系,
如: glibc-2.3.2-5.i686.rpm glibc-common-2.3.2-5.i386.rpm glibc-devel-2.3.2-5.i386.rpm 等。
我认为前面只要是选择了redhat Linux9的全部安装,不要再安装或替换这些rpm包了(这个没有深入的研究,不知道说的对不对,但至少是我在自己的机子上没有再安装替换这些rpm包。还有的文章说网上提供免费下载的Red Hat9是一个不完全的版本,它本身并不带有相应版本的glibc安装包,需要对glibc进行安装替换,也许是我下载的redhat Linux9是“完全的”,所以我也没有对glibc进行过任何操作。*_^ 当然在redhat Linux7X下进行安装的时候要另当别论)。
另外,一些文章中介绍安装Oracle9i的时候需要选择JDK的版本进行安装,我也没有进行这方面的工作,是直接安装Oracle9i的(因为Oracle的安装程序是要有JDK支持的,估计redhat Linux9选择的是“全部安装”方式,development已经安装了。可能关于这一点,让曾经在redhat7x下安装过Oracle8i的朋友有点不解 *_* )。
三、配置操作:
既然省却了前面那么一大堆烦人的预安装操作,那么下面就来进行一些实质的操作,从这里起,算是正式进入了Oracle9i的安装过程。
1.设置内核参数,调节信号灯及共享内存: Oracle9i使用Linux的共享内存、交换区等资源进行工作,如果系统的的内核参数设置不能满足Oracle的需求,那么在安装或使用过程就会出现各种问题,因此建议配置或修改这些系统内核的参数。
打开/etc/sysctl.conf 文件,将下列数据写入到sysctl.conf的末尾并保存:
kernel.shmmax = 536870912 kernel.shmmni = 4096 kernel.shmall = 2097152 kernel.sem = 250 32000 100 128 fs.file-max = 65536 net.ipv4.ip_local_port_range = 1024 65000
其中,kernel.shmmax是共享内存段最大尺寸,kernel.shmmni是共享内存段最小尺寸。进入目录/proc/sys/kernel,可分别用命令: #cat shmmax #cat shmmni #cat shmall 查看 kernel.shmmax 、kernel.shmmni、kernel.shmall的数值。
我在一篇文章看到kernel.shmmax的计算方法为: kernel.shmmax = 1024*1024*RAM(M)/2 (至少)。
用命令: #cat sem 可以查看kernel.sem的数值。其中, 250 是参数SEMMSL的值,32000是参数SEMMNS的值, 100是参数SEMOPM的值,而128则是参数SEMMNI的值。
接下来,打开/etc/security/limits.conf文件,将下列数据添加到 limits.conf的末尾并保存: oracle soft nofile 65536 oracle hard nofile 65536 oracle soft nproc 16384 oracle hard nproc 16384
这是设置Oracle对文件的要求。
当对/etc/sysctl.conf 文件和/etc/security/limits.conf文件修改并保存完毕后,请重新启动(reboot)redhat Linux9系统,这样设置的这些参数才能生效。
如果此时进入到/proc/sys/kernel路径,用上述的命令再次查看,就会看到设置的参数已经生效。
2.创建Oracle用户帐号和安装目录 如有以前安装过Oracle 8i for Linux的经验,应该知道在安装Oracle之前须先在Linux操作系统下新增一个名为oracle的用户,以及一个oracle DBA所专用的群组。Oracle在安装和使用中需要用特定用户(非root用户),按照Oracle的标准说明是需要添加三个专门用户和用户组。为了简单方便安装,我们建立两个组,一个负责安装,另一个负责管理,并把Oracle的安装和使用归到一个特定用户来完成。
以root用户登录,进行如下操作,建立两个组(dba组与oinstall组)和一个Oracle用户,操作命令如下: #groupadd dba #groupadd oinstall #useradd –g oinstall –G dba oracle #passwd oracle 设置oracle的密码。 Oracle安装的位置应遵守OFA( Optimal Flexible Architecture )规范。Oracle9i的典型安装需要至少两个安装点:一个安装基本的运行程序,一个为存放数据库,并要确保oracle用户对这两个目录具有可写的权限。
运行下面的命令,创建Oracle的安装点(mount point): #mkdir /opt/oracle9i #mkdir /opt/oracle9i/product #mkdir /opt/oracle9i/product/9.2.0 #chown –R oracle.oinstall /opt/oracle9i #mkdir /var/opt/oracle9i #chown oracle.dba /var/opt/oracle9i #chmod 755 /var/opt/oracle9i
3.设置环境变量 以oracle用户身份登录,打开编辑/home/oracle/.bash_profile文件,在文件末尾添加如下数据行并保存: export LD_ASSUME_KERNEL=2.4.1 export ORACLE_BASE=/opt/oracle9i export ORACLE_HOME=/opt/oracle9i/product/9.2.0 export ORACLE_SID= ORCL (数据库SID,可以修改,建议字母要大写) export ORACLE_TERM=xterm export TNS_ADMIN=$ORACLE_HOME/network/admin export LANG=en_US export ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib export LD_LIBRARY_PATH export PATH=$PATH:$ORACLE_HOME/bin
CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib CLASSPATH=$CLASSPATH:$ORACLE_HOME/network/jlib export CLASSPATH #export DISPLAY=hostIP:0.0
这样oracle用户每次登录时都带有这些环境变量。
其中:ORACLE_HOME为系统软件的安装目录,ORACLE_SID 为数据库的SID,这里可以自行设置。 最后一句“export DISPLAY=hostIP:0.0”,在网上一些介绍安装Oracle的文章中提到过,我曾尝试加上它,但是以oracle身份登录的时候,会出现hostIP的错误提示,并且无法正常登录,我查了一些资料也没有解决(我对Linux知之有限,如果您知道原因所在请您告诉我:jrq@educast.com.cn,谢谢),所以在环境变量中将其注释掉了,所幸的是这并不影响Oracle9i的安装。
友情提示^_^:此处的环境变量的配置工作尤其重要。很多在Linux下安装Oracle失败的原因都是因为环境变量没有配置正确,环境变量的配置直接影响到下面Oracle9i的安装和配置。所以提醒您在设置环境变量的时候多留神。
编辑并保存/home/oracle/.bash_profile文件后,建议先注销退出oracle用户,然后再以oracle用户身份重新登录,这样可以测试一下配置的环境变量是否出错(例如在上面提到的hostIP的错误)。
接下来就可以进行Oracle9.2.0 for Linux 的安装工作了。 四、安装过程:
1.对安装文件进行解压 以root用户登录,新建目录/setup,将Oracle920_for_Linux 3个压缩文件: lnx_920_disk1.cpio.gz 大小为527 MB (553,607,967 字节) lnx_920_disk2.cpio.gz 大小为561 MB (588,799,187 字节) lnx_920_disk3.cpio.gz 大小为421 MB (442,089,854 字节)
复制到目录/setup中。(如果您没有建立/setup目录,请您最好建立一个 &_&)
进入到/setup目录,对这3个文件进行解压缩,操作命令如下: #cd /setup #gunzip lnx_920_disk1.cpio.gz #gunzip lnx_920_disk1.cpio.gz #gunzip lnx_920_disk1.cpio.gz
等解压完成后便生成3个如下名字的文件: lnx_920_disk1.cpio lnx_920_disk1.cpio lnx_920_disk1.cpio
然后再解开cpio文件包,执行如下操作命令 #cpio -idmv < lnx_920_disk1.cpio #cpio -idmv < lnx_920_disk2.cpio #cpio -idmv < lnx_920_disk3.cpio
等三个文件包全部解压完毕后,生成3个安装文件夹,名称分别为Disk1、Disk2、Disk3。然后注销退出root用户,以oracle用户登录进行安装。
2.安装过程 以oracle用户登录,进行安装。进入到/setup/Disk1目录,执行如下命令: #cd /setup/Disk1 #./runInstaller
运行等一会后,就会出现Oracle Universal Installer(OUI)的图形界面,按照提示一步步点击“Next”安装即可。
可惜,安装的时候我没有把安装过程的界面截取成图片保存下来,也懒的再重新安装了,所以无法用图片做进一步的描述。下面就用文字做一些描述和说明,如有什么表达不清楚的地方,还请谅解。:(
前几步保持默认设置,当遇到输入“Unix Group Name”的时候,输入组名“dba”,点击“下一步”。
此时Oracle Universal Installer会生成一个建立Oracle Inventory所用 [1] [2] [3] 下一页 [C语言系列]C# 和 Linux 时间戳转换 [Web开发]PHP flock文件锁介绍 [Web开发]flock() Linux下的文件锁 [电脑应用]Linux下的六个免费的虚拟主机管理系统介绍 [电脑应用]Linux数据库大比拚 [操作系统]在Windows中玩转Linux操作系统 [办公软件]在RedHat Linux 9里安装gaim0.80 [办公软件]掌握 Linux 调试技术 [办公软件]理解 Linux 配置文件 [聊天工具]Real10 & Xpdf installation on Linux Box
|