Oracle9i在RHEL5上的安装

来源:互联网 发布:支付宝端口号 编辑:程序博客网 时间:2024/04/30 07:26

 

  参考资料:http://immss.blog.51cto.com/510017/118715

 

  这篇文章内容详细,思路清晰,本想联系作者后直接转载,但在按照其中内容进行安装时还是遇到了一些资料中没有涉及到的问题,故以其内容为蓝本重新进行整理,以方便自己及他人日后再次安装,同时也向原作者致敬。

 

 


 

 

一、软件准备

 

  ● Red Hat Enterprise Linux 5 安装包(5CD)

 

  ● Oracle9i 安装包

 

    ship_9204_linux_disk1.cpio(.gz)

    ship_9204_linux_disk2.cpio(.gz)

    ship_9204_linux_disk3.cpio(.gz)

 

  ● 操作系统补丁包

 

    rhel3_pre_install.sh

 

  ● RPM 软件包

 

    libXpm-3.5.5-3.i386.rpm来自RHEL5-DISK1    libXpm-devel-3.5.5-3.i386.rpm来自RHEL5-DISK2    libXp-1.0.0-8.i386.rpm来自RHEL5-DISK2    libXp-devel-1.0.0-8.i386.rpm来自RHEL5-DISK2

 

  安装rhel5时建议在选择安装软件包时将所有包都选上安装

 

 

二、系统配置

 

  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) 打补丁

 

  #sh rhe13_pre_install.sh

 

  如果补丁安装正常,则会出现如下提示:
  Applying patch...
  Ensuring permissions are correctly set...
  Done.
  Patch successfully applied

 

  到此,操作系统的配置工作已经完成。也就是说我们做好了环境平台的搭建,下面就可以正式地进行Oracle9i的安装了。

 

 

三、Oracle9i 的安装

 

  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

 

  这里如果上传的安装包格式为.gz格式,可以用如下命令解压:

 

  $ zcat ship_9204_linux_disk1.cpio.gz | cpio –idmv
  $ zcat ship_9204_linux_disk2.cpio.gz | cpio –idmv
  $ zcat ship_9204_linux_disk3.cpio.gz | cpio –idmv

 

  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=oradb
  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

  其中,ORACLE_SID 后面的内容是所要建立数据库的 SID,后面要用到 SID 的地方需要与这里输入的内容保持一致。

 

  修改完执行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用户登录,运行如下命令,打开安装程序的欢迎界面。

 

  $ export LANG=en_US
  $ /home/oracle/Disk1/runInstaller

 

  要求选择基准目录时,默认即可。

 

  安装过程中要求输入【UNIX Group Name】,这里要输入oinstall。

 

  到了这一步(如图1)要重新打开一个终端窗口,执行如下命令:


  $ su - root
  # /tmp/orainstRoot.sh


  执行完毕后,再回到安装界面点击【Continue】按钮。

  

图1

图1

 

  选择安装目录时默认即可。

 

  安装项目为:Oracle9i DataBase 9.2.0.4.0。

 

  安装类型为:Enterprice Edition。

 

  软件包选择:Software Only。

 

  也可根据实际需求进行选择。

 

  到了这一步(如图2)要重新打开一个终端窗口,执行如下命令:


  $ su - root
  # /home/oracle/product/9.2.0/root.sh


  这里会提示一句:


  Enter the full pathname of the local bin directory:[/usr/local/bin]

  直接敲回车即可,再回到安装界面点击【OK】按钮

  

图2

图2

  安装完毕后,点击【Exit】按钮退出。

 

  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起名的时候要注意保持一致。(还要与前面提到的.bash_profile文件中的SID一致)

 

  Database Character Sets中要将字符集设置成ZHS16GBK

 

  数据库创建完成后还有三项工作:

 

  第一步,修改文件/etc/oratab,把最后一行的N改成Y。

 

  第二步,将初始化文件/home/oracle/admin/你创建的那个数据库/pfile/init*.ora.* 复制到/home/oracle/product/9.2.0/dbs/initoradb.ora。(文件名中的oradb为之前设置的SID)

 

  最后启动数据库。

 

  $ dbstart

 

  9) 创建监听器

 

  $ netca

 

  首先进入配置界面,选择【Listener configuration】项,一路【Next】下去直到返回配置界面

 

  然后再选择【Local Net Service Name configuration】项继续,但是这里有几个地方需要注意一下:

 

  Service Name 为全局数据库名称,即你创建的那个数据库名称。(SID)
  Host name 为本机的主机名或者IP地址。
  Net Service Name 为默认和Service Name同名,你也可以改为其他的名字

 

  创建完成后会在 /home/oracle/product/9.2.0/network/admin 目录下生成 listener.ora 和 tnsnames.ora 这两个文件,前者是【Listener configuration】项配置完成后生成的,后者是【Local Net Service Name configuration】项配置完成后生成的。这两个文件的生成说明监听器创建成功,但配置不一定正确。

 

  所以需要修改文件 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) 启动数据库管理工具

 

  修改文件/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参数去掉。

 

  启动数据库管理工具

 

  $ oemapp dbastudio

 

  由于Oracle9i的监听器会经常读写日志文件 listener.log,该日志一旦膨胀过大(2G),就会造成监听器启动失败。因此需要关闭掉日志写入功能。

 

  解决方案如下:

 

  在/home/oracle/product/9.2.0/network/admin/listener.ora 中的最后加上一句:
 
  LOGGING_LISTENER=OFF

 
  但是要注意的是:这一句必须在数据库或监听器重启过以后再进行修改。不要在刚开始修改 listener.ora 时就加上这一句,否则会引起监听器启动失败。

 

  至此,Oracle9i 的安装及配置工作基本完成,可以使用客户端连接一下看看是否能够连接上。

 

  如果从服务器oem上可以连接到数据库,但从客户端连接时报 ORA-12560 错误,可能是操作系统的防火墙拦截了1521端口,在 rhel5 的防火墙设置中添加tcp端口1521即可。

原创粉丝点击