当前位置导航:炫浪网>>网络学院>>编程开发>>Oracle教程

RED HAT 7.2H 上安装ORACLE 8i


  1) 安装glibc 2.1包
  glibc2.1版本(GNU C Library,18M)下载地址:
  ftp://ftp.kernel.org/pub/software/l....1-linux.tar.gz
  下载后都放到了/backup目录
  从RedHat7.0以后的版本,安装的是glibc2.2。Oracle 8I不能使用glibc 2.2进行编译,而需要glibc2.1的SDK。
  #su - root
  #cd /
  #tar zxvf /backup/i386-glibc-2.1-linux.tar.gz
  隐藏/usr/bin 目录下的gcc,cc,ld,避免被Oracle installer使用
  #cd /usr/bin
  #mkdir saved
  #mv gcc cc ld saved
  #n -s /usr/i386-glibc-2.1-linux/bin/i386-glibc21-linux-gcc gcc
  #ln -s gcc cc
  #ln -s /usr/i386-glibc-2.1-linux/bin/i386-glibc21-linux-ld ld
  隐藏/usr/lib目录下的libc.so,libdl.so,libm.so和libpthread.so文件,避免被Oracle installer使用
  #cd ../lib
  #mkdir saved
  #mv libdl.so libm.so libpthread.so saved
  #mv libc.a libdl.a libm.a libpthread.a saved
  不要忘了安装完成后把文件恢复回来。
  
  2)创建user/group
  #su - root
  #groupadd dba
  #useradd oracle -g dba
  
  3) 配置环境变量
  #su - oracle
  # vi .bash_profile
  ORACLE_BASE=/u01/oracle
  ORACLE_HOME=$ORACLE_BASE/product/8.1.7
  ORACLE_SID=proc
  NLS_LANG=AMERICAN_AMERICA.zhs16cgb122380
  LANG=en_US #oracle安装中文界面无法安装(界面字体很小),所以改成english.安装后可去掉。
  LD_LIBRARY_PATH=$ORACLE_HOME/lib
  PATH=$PATH:$ORACLE_HOME/bin:.
  exoprt LANG ORACLE_BASE ORACLE_HOME ORACLE_SID NLS_LANG LD_LIBRARY_PATH PATH
  umask 022
  . /usr/i386-glibc21-linux/bin/i386-glibc21-linux-env.sh #阅读此文件可得到说明
  export LD_ASSUME_KERNEL=2.2.5 #只要小于2.4即可
  export DISPLAY=192.168.0.1:0.0 #(假设IP是192.168.0.1)可以保证在终端能够运行。
  
  
  4)设置系统参数
  Linux Environment Summary
  Shared Memory(共享内存参数)
  SHMMAX 0.5*物理内存 到 1GB
  SHMMIN 1
  SHMMNI 100
  SHMSEG 10
  Semaphore(信号)
  SEMMNI 100
  SEMMSL 10 + initSID.ora PROCESSES 参数 [initSID.ora -> ORACLE
  SEMMNS 2* the largest PROCESSES + 10* Oracle database数目
  SEMOPM 100
  SEMVMX 32767
  
  编辑 /etc/services
  set shmsys:shminfo_shmmax=4294967295
  set shmsys:shminfo_shmmin=1
  set shmsys:shminfo_shmmni=100
  set shmsys:shminfo_shmseg=10
  set semsys:seminfo_semmni=100
  set semsys:seminfo_semmsl=100
  # 每个数据库进程的总和+最大进程数量两倍+ 10*数据库数量
  #例如 ORACLE_SID=A, PROCESSES=100
  ORACLE_SID=B, PROCESSES=200
  ORACLE_SID=C, PROCESSES=300
  SEMMNS=[(A=100)+(B=200)]+[(C=300)]*2+[#of instance=3]*10]=930
  set semsys:seminfo_semmns=200
  set semsys:seminfo_semopm=100
  set semsys:seminfo_semvmx=32767
  编辑好后存盘重新启动系统
  
  5) 安装数据库
  # ./runInstaller
  如果你能正确的安装通过,恭喜你,你太幸运了.
  
  6)安装中可能出现的问题.
  ----------------------------------------------------------------------------------
  问题 (1)
  我在red hat 7.2上安装oracle8.1.7,在做完准备工作之后,(我安装的是:j2sdk-1_3_0_02-linux.rpm.bin) ,
  设置好用户环境之后,运行:./runInstaller,出现下面信息:
  Initializing Java Virtual Machine from ../stage/Components/oracle.swd.jre/1.1.8/1/DataFiles/Expanded/linux/bin/jre. Please wait...
  
  答案:
  从7.1以后kernel的版本对于java过高,必须降止<2.4
  export LD_ASSUME_KERNEL=2.2.5 #只要小于2.4即可
  ----------------------------------------------------------------------------------
  问题 (2)
  我安装的redhat7.2 smaple chinese ,当运行oracle安装程序时,显示的界面中汉字全部挤在一起,使我无法安装.
  
  答案:
  我也遇到了此情况,我开始以为是分辨率的原因(dafalut 1024*768),后来我调整为800*600还是不行.于是我只能以english
  环境安装了,反正不影响.
  export LANG=en_US
  安装后可去掉此环境变量 .
  ----------------------------------------------------------------------------------
  问题 (3)
  在安装过程中遇到下面的问题:
  进行到"summy"一步,点"install",进度标志到"60%"时,不断弹出错误提示:
  Error in invoking target install of makefile
  /home/oracle/sqlplus/lib/ins-sqlplus.mk;
  (/home/oracle/network/lib/ins-net-client.mk;
  /home/oracle/network/lib/ins-cman.mk;
  /home/oracle/precomp/lib/ins-precomp.mk;
  /home/oracle/precomp/lib/ins-names.mk;
  /home/oracle/ladp/lib/ins-ldap.mk;
  /home/oracle/network/lib/ins-net-server.mk;
  /home/oracle/network/lib/ins-oemagent.mk;
  /home/oracle/odg/lib/ins-odg.mk;
  /home/oracle/otrace/lib/ins-otrace.mk;
  /home/oracle/plsql/lib/ins-plsql.mk;
  /home/oracle/rdbms/lib/ins-rdbms.mk;
  /home/oracle/ctx/lib/ins-ctx.mk;
  安装时只能不断ignore;
  接下来到"configuration tools"一步,进程挂起,安装界面的各按钮都
  为灰,有如下的错误信息:
  libcinsth.so.80: can not load shared object file:no such file or
  directory libnjni8.so.
  Error load native library: libnjni8.so.
  java.lang.unsatisfieldlinkError:
  
  答案:
  这个问题是最要我头痛的事情,足足憋了我3天,从网上查到了几个解决法案都不成功,最后我想出了一个不是办法的
  办法,如果你们真正有实际的解决方法请高知.
  闲话少说,先介绍几个网上的方法,可能对你的机器就好使,这就是计算机.
  
  1) 如果这样做了,联接系统库的时候还报make错误的话(我是从来没有遇到这样的make error问题,所以没有办法测试),
  可能就不是glibc的问题,而是ld这些命令的版本问题了。我建议如果出现这种错误的话,试试这个方法,就是再降级binutil。
  先下载binutils-2.10.0.18-1.i386.rpm
  (下载网址:http://rpmfind.net/linux/RPM/redhat...com上搜索一下)
  rpm -Uvh binutils-2.10.0.18-1.i386.rpm --force --nodeps
  然后再runInstaller。
  又或者虽然出现make error,但是毕竟可以拷贝文件安装过去的话,也可以试试这个方法:
  在安装文件完成以后,会先后出现配置Net8和出现数据库助手创建数据库的过程。
  (如果配置Net8出错的话,可以就这样退出,自己手工修改$ORACLE_HOME/network/admin下的listener.ora和tnsnames.ora.)
  在出现数据库助手创建数据库的时候,不要创建数据库,退出。因为此时联接的可执行程序有问题,不能正确创建数据库。
  到Oracle网站,在下载Oracle8.1.7的地方,可以找到一个glibc的patch:
  http://download.oracle.com/otn/linu....3-stubs.tar.gz
  把它下载,放到$ORACLE_HOME下,解压缩,
  cd $ORACLE_HOME
  tar xvfz glibc-2.1.3-stubs.tar.gz
  ./setup_stubs.sh
  然后在
  dbassist
  启动数据库创建助手,创建数据库。
  
  2) 这是发生在link安装时,忽略错误安装完成.
  # sqlplus
  libcinsth.so.80: can not load shared object file:
  其实这些文件在开始安装时已经拷贝到$ORACLE_HOME/lib目录下,但在发生错误的时候被删除了,(我说不清为什么.)
  方法: 在出现出错框的时候,查看以下$ORACLE_HOME/lib下文件libcinsth.so.80是否存在,把此文件靠出来,安装完成后再拷贝回
  %ORACLE_HOME/lib目录下即可.如果你在以后的运行程序中发生其它库连接not found 的话,你干脆在出错前把此目录
  $ORACLE_HOME/lib下的所有库文件全部备出,安装后在拷贝回去.(偏方治大病).
  
  -------------------------------------------------------------------------------------------
  问题 4
  用dbassist创建数据库的时候,安装到80%就死机.
  
  答案:
  (我使没有遇到这种问题.)
  在出现数据库助手创建数据库的时候,不要创建数据库,退出。因为此时联接的可执行程序有问题,不能正确创建数据库。
  到Oracle网站,在下载Oracle8.1.7的地方,可以找到一个glibc的patch:
  http://download.oracle.com/otn/linu....3-stubs.tar.gz
  把它下载,放到$ORACLE_HOME下,解压缩,
  cd $ORACLE_HOME
  tar xvfz glibc-2.1.3-stubs.tar.gz
  ./setup_stubs.sh
  然后在
  dbassist
  启动数据库创建助手,创建数据库。
相关内容
赞助商链接