redhat9磁盘阵列上安装oracle8i手记

发表于:2007-07-04来源:作者:点击数: 标签:
文中将oracle安装在磁盘阵列上,对与无磁盘阵列本文一样适用 以下是我的机器上做的,由于各自环境不同,有些地方按照自己实际情况来 使用说明 本文介绍了在DFT5200上安装Oracle8i,操作系统为Redhat linux 9。Oracle8i 的版本号为8.1.7.0.1。 安装环境 机型

  文中将oracle安装在磁盘阵列上,对与无磁盘阵列本文一样适用
  以下是我的机器上做的,由于各自环境不同,有些地方按照自己实际情况来
  
  使用说明
  本文介绍了在DFT5200上安装Oracle8i,操作系统为Redhat linux 9。Oracle8i 的版本号为8.1.7.0.1。
  安装环境
  机型:PC机 512M内存
  操作系统:Redhat 9(内核为 2.4.20)
  软件:Oracle8i (版本号:8.1.7.0.1)
  
  1) 安装glibc 2.1包
  glibc2.1版本(GNU C Library,18M)下载地址:
  ftp://ftp.kernel.org/pub/software/libs/glibc/hjl/sdk/2.1/i386-glibc-2.1-linux.tar.gz
  或者直接搜索i386-glibc-2.1-linux.tar.gz
  下载后保存到 /backup目录
  从RedHat7.0以后的版本,安装的是glibc2.2以上。Oracle 8I不能使用这些glibc进行编译,而需要glibc2.1的SDK。
  直接安装glibc -1.2就省去了其它安装手册里说的要下载安装的一大堆降级软件包。
  在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
  #ln -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 /usr/lib
  #mkdir saved
  #mv libc.so libdl.so libm.so libpthread.so saved
  #mv libc.a libdl.a libm.a libpthread.a saved
  不要忘了安装完成后把文件恢复回来。
  
  2) 安装 jdk 1.18
  IBMJava118-SDK-1.1.8-5.0.i386.rpm 下载地址:
  http://www-106.ibm.com/developerworks/java/jdk/118/linux/?dwzone=java
  下载后保存到 /backup目录
  #cd /backup
  #rpm –ivh IBMJava118-SDK-1.1.8-5.0.i386.rpm
  
  3) 配置磁盘阵列(没用磁盘阵列直接跳到第四步)
  
  操作步骤:
  建立逻辑驱动器--> 将逻辑驱动器映射(map)至主机通道--> 建立挂载点--> mount磁盘驱动器使用
  
  准备工作:
  DFTraid-5208U3
  Ready/No host lun
  
  按ent/sel两秒出现
  Quik Logical
  Drive Install
  
  按向下键,选择
  View and edit
  SCSI channels
  
  按ent/sel进去,记下每一个通道的模式(host或driver)
  如本例中 channel0=dirver pid=7
  sid=na sxf=40Mb
  按向下键 channel1=dirver pid=7
  sid=na sxf=40Mb
  向下 channel2=host pid=0
  sid=na sxf=40Mb
  向下 channel3=host pid=0
  sid=na sxf=40Mb
  通道0,1为磁盘通道,2,3为主机通道
  
  重复按esc/exit退到最外层菜单
  
  1、建立逻辑驱动器(logic driver)
  
  DFTraid-5208U3
  Ready/No host lun
  
  按ent/sel两秒出现
  Quik Logical
  Drive Install
  
  按向下键,选择
  View and Edit
  Logical Drives
  
  按ent/sel键看logical driver状态,如下:
  LG0 RAID0 DRV=*
  ***MB GD SB=*
  已经有逻辑驱动器lg0,状态GD,直接跳至第二步
  
  如果未创建逻辑驱动器,应为
  LG=0
  NOT DEFINED
  
  按esc/exit一次到
  View and Edit
  Logical Drives
  按向上键,到
  Quik Logical
  Drive Install
  
  按ent/sel进入
  SET TDRV=4 WITH
  RAID5+SPARE ?//====是否用四块盘创建RAID5+热备
  按向上键选中您要创建的RAID级别,按ent/sel两秒确定
  开始初始化,从LCD上可看到初始化进度,等初始化完成
  
  
  2、映射主机通道步骤:
  DFTraid-5208U3
  Ready
  
  按ent两秒出现
  view and EDit
  Host LUNS
  
  按ENT出现
  Map Pri. Ctlr
  CH=2 ID=0 ?
  
  按ENT出现
  Map to
  Logical Drive ?
  
  按ENT出现
  CH2 ID0 LUN0
  NO Mapped //====表示没有映射====//如果已映射的话会出现:
  CH2 ID0 LUN0
  Mapto LG0 PRT0
  再按一下ENT键会出现:
  Delete CH2 ID0
  LUN=0 Mapping ?
  此时就表明此通道0已经映射了
  按esc/exit,退到
  CH0 ID6 LUN0
  Mapto LG0 PRT0
  再按向下键看通道3的状态,如
  CH3 ID0 LUN0
  NO Mapped
  继续
  
  按ENT出现
  Map Host LUN ?
  
  按ENT出现
  LG0 RAID5 DRV=3
  ***MB GD SB=1
  
  按ENT出现
  LG=0 PART=0
  ****MB
  
  按ENT出现
  Map Host LUN
  ..
  
  按ENT出现
  CH3 ID0 LUN0
  Mapto LG0 PRT0 ?
  
  按ENT出现
  Map Pri. Ctlr
  CH=3 ID=0 ? /*到此就已映射了一个主机通道了*/
  
  此时已全部完成。
  磁盘需要签名才能使用,可以到windows2000下磁盘管理里给磁盘签名(初始化),我不知道linux下怎么做。
  
  4) 创建user/group
  root用户下
  #groupadd dba
  #groupadd oinstall
  #useradd oracle -g oinstall –G dba
  
   建立oracle安装文件夹
  #cd /
  #mkdir oracle
  #chown oracle.dab /oracle
  #chmod 775 /oracle
  
  使用磁盘阵列还要在这里mount上来(没用磁盘阵列跳到第5步):
  用硬件配置查看器看看磁盘阵列的设备名,我的是 /dev/sda
  然后用fdisk建立磁盘/dev/sda的分区(这里省略),分好后就有了 /dev/sda1
  #mount /dev/sda1 /oracle
  
  5) 配置环境变量
   #su - oracle
   # vi .bash_profile
  export ORACLE_BASE= /oracle/app/oracle
  export ORACLE_HOME=$ORACLE_BASE/product/8.1.7
  export ORACLE_SID=oral
  export NLS_LANG=AMERICAN_AMERICA.zhs16cgb122380
  export LANG=en_US #oracle安装中文界面无法安装(界面字体很小),所以改成english.安装后可去掉。
  export LD_LIBRARY_PATH=$ORACLE_HOME/lib
  export PATH=$PATH:$ORACLE_HOME/bin:. umask 022
  export JAVA_HOME=/usr/jdk118
  export JAVA_HOMECLASSPATH=/usr/jdk118/lib
  export LD_ASSUME_KERNEL=2.2.5 #只要小于2.4即可
  export DISPLAY=192.168.0.1:0.0 #(假设IP是192.168.0.1)可以保证在终端能够运行
  
  6)设置系统参数
   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 文件,redhat9 不行,至少我的机器不行。
  我的电脑具有512M内存。在 /etc/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
  修改后运行sysctl -p 命令使得内核改变立即生效。
  
  还需要在/etc/security/limits.conf文件增加如下内容:
  oracle soft nofile 65536
  oracle hard nofile 65536
  oracle soft nproc 16384
  oracle hard nproc 16384
  
  7) 安装oracle
  oracle817101.tar 下载地址:
  tdocs/linuxsoft.html>http://otn.oracle.com/software/products/oracle8i/htdocs/linuxsoft.html
  也可以直接搜索:oracle81701.tar
  保存到 /backup
  #cd /backup
  #tar xvf oracle817101.tar
  会生成一个Disk1的目录
  注销,用oracle用户登录xwindow
  #cd /backup/Disk1
  #./runInstaller
  到此oracle进入安装阶段,(安装过程图解参看地址http://www.chinaitlab.com/www/news/ article_show.asp?id=1269)建议先不要参看这些安装手册,认真阅读安装向导,自己先安装一遍,我就是被这些安装手册给误导了,折腾了好几天,如果中途出现什么错误,再找资料,卸载了重安,也要节省时间一些。
  
  安装过程当中可能出现的问题:
  1.到提示填写 UNIX group name field时, 请写入“oinstall” 作为组名。
  2。过后会弹出一窗口,要求以”root”身份运行 “orainstRoot.sh” 。
   另以”root”身份打开一个终端窗口
   #cd /u01/app/oracle/product/8.1.7/
   #./orainstRoot.sh
  会出现以下提示:
  This script will do following:
  Creating Oracle Inventory pointer file (/etc/oraInst.loc)
  Changing groupname of /u01/app/oracle/oraInventory to oinstall.
  返回安装界面,点击 retry 继续安装。
  3。
   选择” Oracle Enterprise Edtion”选项
   选择” Typical”安装
   使用 /usr/jdk118 作为 JDK HOME
   单击<Install> 开始安装
  4. 当安装完成后,要求以”root”身份运行”root.sh”。:
   这里要先修改 /u01/app/oracle/product/8.1.7/root.sh :
   #cd /u01/app/oracle/product/8.1.7
   #vi root.sh
   a.修改第102行
   把
   RMF=/bin/rm –f
   改为
     RMF="/bin/rm -f"
   b. ########修改第156行
   把
   RUID=`/usr/bin/id|$AWK -F\( '{print $2}'|$AWK -F\) '{print $1}`
   改为
   RUID=`/usr/bin/id|$AWK -F\( '{print $2}'|$AWK -F\) '{print $1}'`
   运行 “root.sh” 脚本:
   #./root.sh”
   你将会看到以下提示 :
  IMPORTANT NOTE: Please delete any log and trace files previously
  created by the Oracle Enterprise Manager Intelligent
  Agent. These files may be found in the directories
  you use for storing other Net8 log and trace files.
  If such files exist, the OEM IA may not restart.
  Running Oracle8 root.sh script...
  \nThe following environment variables are set as:
  ORACLE_OWNER= oracle
  ORACLE_HOME= /u01/app/oracle/product/8.1.7
  ORACLE_SID= ora1
  
  Enter the full pathname of the local bin directory: [/usr/local/bin]: (默认回车)
   \nCreating /etc/oratab file...
  Entry will be added to the /etc/oratab file by
  Database Configuration Assistant when a database is created
  Finished running generic part of root.sh script.
  Now product-specific root actions will be performed.
  
   返回 GUI window 界面点击 “OK” 。
  5.如果在创建数据库时出现错误,就重新安装,在运行完root.sh后打上补丁glibc-2.1.3-stubs.tar.gz
   下载地址:http://otn.oracle.com
   或者直接搜索glibc-2.1.3-stubs.tar.gz
   保存到 /backup
   #cd /backup
   #cd /oracle/app/oracle/product/8.1.7 (你的oracle安装目录)
   #tar zxvf /backup/glibc-2.1.3-stubs.tar.gz
   ./setup_stubs.sh
   大约要等几分钟
  6。配置Net8、Database assistant 和 SSL related modules.
  当进行Net8的配置时,会弹出一个窗口 ,请选中 “Perform typical configuration “ 按钮。 之后,系统会自动进行 database的配置。
  在配置完database assistant 与SSL related module后,系统会给出用户名/密码 :
  “SYS/change_on_install” and “SYSTEM/manager”
  到此,Oracle8i 完成全部安装。
  
  8) 启动oracle
   手动启动Oracle8i
  1. 以“oracle” 用户登录
  2. $svrmgrl
  3. $connect internal
  4. $startup (使用 “shutdown” 命令关闭oracle8i)
  5. $quit
  
   配置Oracle8i启动
  
  1.以 “root”用户登录
  2. 修改 /etc/oratab
  ora1:/u01/app/oracle/product/8.1.7:Y ( 默认为 ‘N’)
  重启机器以后就可以用dbstart,dbshut来启动和关闭数据库了。
  
  9) 卸载 Oracle8i
  1. 以 “Oracle” 用户登录并打开一终端窗口
  2. $ cd /tmp
  3. $ LD_ASSUME_KERNEL=2.2.5; export LD_ASSUME_KERNEL
  4. $. /usr/i386-glibc21-linux/bin/i386-glibc21-linux-env.sh
  5. $ cd Disk1
  6. ./runInstaller
  7. 选择” Deinstall Product”
  8. 选择目录树并选好你所要卸载的Oracle版本号(例:Oracle8i Enterprise Edition 8.1.7.0.1)
  9. 单击 Remove,开始卸载。
  10. 打开一终端窗口,切换到”root”用户
  11. # rm –rf /u01/app
  12. # rm –f /etc/oratab /etc/oraInst.log

原文转自:http://www.ltesting.net