服务器 频道

在RedHat9.0上安装Oracle9i数据库

  【IT168 服务器学院】最近在学习Oracle9i数据库,在RedHat9.0上安装的时候碰到了一些问题,参考了各种能够找到的资料,终于成功。现写成文章,希望给后来人以帮助。

  1安装好RedHat9.0操作系统,确保安装了以下的RPM开发包
  gcc
  cpp
  glibc-devel
  compat-libstdc++
  glibc-kernheaders
  binutils
  可以使用命令来查看是否已安装了这些包
  rpm –q gcc cpp compat-libstdc++ glibc-devel glibc-kernheaders binutils

  2从Oracle官方网站下载Oracle9i安装文件并使用如下命令解包
  zcat lnx_920_disk1.cpio.gz | cpio –idmv
  zcat lnx_920_disk2.cpio.gz | cpio –idmv
  zcat lnx_920_disk3.cpio.gz | cpio –idmv
  然后会有Disk1 Disk2 Disk3三个子目录。

  3设置内核参数
  echo 4294967295 > /proc/sys/kernel/shmmax,建议放到/etc/rc.local文件里。
  或
  编辑/etc/sysctl.conf
  kernel.shmmax=4294967295
  我有512MB内存,所以设置这个数值。可根据实际情况设置。

  4创建Oracle用户帐号和安装目录
  在shell下,作为root
  groupadd dba
  groupadd oinstall
  useradd –g oinstall –G dba oracle
  passwd oracle

  mkdir /opt/oracle
  mkdir /opt/oracle/product
  mkdir /opt/oracle/product/9.2.0
  chown –R oracle.oinstall /opt/oracle
  mkdir /var/oracle
  chown oracle.dba /var/opt/oracle
  chmod 755 /var/opt/oracle

  5设置环境变量
  编辑/home/oracle/.bash_profile文件,添加下列行

  export LD_ASSUME_KERNEL=2.4.1
  export ORACLE_BASE=/opt/oracle
  export ORACLE_HOME=/opt/oracle/product/9.2.0
  export ORACLE_SID=ora9i
  export ORACLE_TERM=xterm
  $ORACLE_HOME/network/admin
  export NLS_LANG=AMERICAN_AMERICAN.ZHS16GBK
  export ORA_NLS33=$ORACLE_HOME/ocommon/nls/asmin/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

  6安装
  进入Disk1目录
  ./runInstaller
  当link进行到61%时出现一个关于ins_oemagent错误,选择ignore,安装完后修复
  当link进行到84%时出现一个关于ins_ctx错误,编辑$ORACLE_HOME/ctx/lib/env_ctx.mk文件,把$(LDLIBFLAG)dl加到以下位置
  INSO_LINK=-L$(CTXLIB)$ (LDLIBFLAG)m $(LDLIBFLAG)dl处。
  安装完成

  修复第一个错误
  在shell下,oracle用户
  cd $ORACLE_HOME/network/lib
  make –f ins_client.mk install
  编辑$ORACLE_HOME/ctx/lib/ins_ctx文件
  13—14行处
  $(LINK) $(CTXHXOBJ) $(INSO_LINK)
  为
  $(LINK) –ldl $(CTXHXOBJ) $(INSO_LINK)

  7启动数据库、监听程序、web server。
  启动数据库
  Sqlplus “ / as sysdba”
  SQL>startup

  启动监听程序
  lsnrctl

  启动web server
  cd $ORACLE_HOME/Apache/Apache/bin
  ./startJServ.sh
  

0
相关文章