1、Oracle 10g RAC Installed in SuSE LinuxOracle 10g RAC Installed in SuSE Linux .1一、系统实施前规划 .31.1、主机操作系统及内核版本 .31.2、主机操作系统必备的 RPM 程序包 .41.3、数据库节点规划 .51.4、网络及存储配置 .6二、主机操作系统定制 .72.1、编辑“/etc/hosts ”文件 .72.2、编辑内核参数 .72.3、创建 Oracle 用户及相关目录 .82.4、编辑 Oracle 用户预定义文件 .82.5、为 Oracle 用户设置资源限制 .82.6、拷贝虚拟机 .9三、配置共
2、享存储 .93.1、创建共享磁盘 .93.2、在共享磁盘上创建分区 .113.3、配置裸设备 .12四、创建配置 SSH .134.1、创建 RAS Keys 和 DAS Keys.134.2、创建 authorized_keys 文件 .154.3、配置 authorized_keys 文件权限 .154.4、验证 SSH 用户等效性 .15五、配置 hangcheck-timer 内核模块 .15六、安装 Oracle 10.2.0.1 clusterware .166.1、安装 clusterware.166.2、编辑$ORA_CRS_HOME/bin 下的 vipca 和 srvctl
3、 文件 .266.3、执行$ORA_CRS_HOME/root.sh 脚本 .276.4、配置 VIPCA.306.5、完成 clusterware 的安装 .34七、安装 Oracle 10.2.0.1 database software.36八、安装 Oracle clusterware 10.2.0.5 升级包 .438.1、安装 clusterware 升级包 .438.2、 portaldb1 和 portaldb2 上执行相关步骤 .488.3、 portaldb 和 portaldb2 备份 OCR 和 Voting disk .50九、安装 Oracle database So
4、ftware 10.2.0.5 升级包 .519.1、安装 db software 升级包 .519.2、安装补丁 Patch 8350262 .589.3、 runInstaller 中查看已安装好的产品 .61十、配置监听程序 .6310.1、配置监听程序 .6310.2、确认监听配置成功 .67十一、配置 ASM(自动存储管理) .68十二、创建数据库及启动企业管理器 .7412.1、创建 portaldb 数据库 .7412.2、创建 wpsdb 数据库 .8812.3、启动企业管理器 .100十三、启动归档模式 .10213.1、portaldb 数据库设置归档模式 .10213.2
5、、wpsdb 数据库设置归档位置 .105十四、RAC 测试 .10614.1、Failover 测试 .10614.2、LoadBalance 测试 .111十五、后记 .113一、系统实施前规划1.1、主机操作系统及内核版本在 X86 架构上,Oracle 10g RAC 能被下列操作系统所支持:Operating system x86 ( 32 bit )Red Hat Enterprise Linux AS/ES 3 (Update 4 or later)Red Hat Enterprise Linux AS/ES 4 (Update 1 or later)Oracle Enterpr
6、ise Linux 4 ( OEL4 )Red Hat Enterprise Linux AS/ES 5Oracle Enterprise Linux 5 ( OEL5 )SUSE Linux Enterprise Server 9 ( 2.6.5-7.201 or higher)SUSE Linux Enterprise Server 10Asianux 1.0 (2.4.21-27.EL or higher)Asianux 2.0 (2.6.9-5.0.5.EL or higher)Operating systems x86 ( 64 bit )Red Hat Enterprise Lin
7、ux AS/ES 3 (Update 4 or later)Red Hat Enterprise Linux AS/ES 4 (Update 1 or later)Oracle Enterprise Linux 4 ( OEL4 2.6.9-11.EL)Red Hat Enterprise Linux AS/ES 5Oracle Enterprise Linux 5 ( OEL5 )SUSE Linux Enterprise Server 9 (Service Pack 2 or later)SUSE Linux Enterprise Server 10Asianux 2.0我们选用的是“SU
8、SE Linux Enterprise Server 10(64bit)”。目前需要在虚拟机上构建一个模拟环境,故选用“SUSE Linux Enterprise Server 10(32bit)”。系统安装好后,系统版本及内核版本如下:portaldb1: # lsb_release -aLSB Version: core-2.0-noarch:core-3.0-noarch:core-2.0-ia32:core-3.0-ia32:desktop-3.1-ia32:desktop-3.1-noarch:graphics-2.0-ia32:graphics-2.0-noarch:graphic
9、s-3.1-ia32:graphics-3.1-noarchDistributor ID: SUSE LINUXDescription: SUSE Linux Enterprise Server 10 (i586)Release: 10portaldb1: # portaldb1: # more /etc/SuSE-releaseSUSE Linux Enterprise Server 10 (i586)VERSION = 10PATCHLEVEL = 3portaldb1: # portaldb1: # more /proc/versionLinux version 2.6.16.60-0.
10、54.5-default (geekobuildhost) (gcc version 4.1.2 20070115 (SUSE Linux) #1 Fri Sep 4 01:28:03 UTC 20091.2、主机操作系统必备的 RPM 程序包SuSE SLES10( 32 bt ):glibc-devel-2.4-31.2.i586.rpmgcc-4.1.0-28.4.i586.rpmlibstdc+-devel-4.1.0-28.4.i586.rpmgcc-c+-4.1.0-28.4.i586.rpmlibaio-devel-0.3.104-14.2.i586.rpmSuSE SLES10
11、( 64 bt ):glibc-devel-2.4-31.2.x86_64.rpmgcc-4.1.0-28.4.x86_64.rpmlibstdc+-devel-4.1.0-28.4.x86_64.rpmgcc-c+-4.1.0-28.4.x86_64.rpmglibc-devel-32bit-2.4-31.2.x86_64.rpmlibaio-devel-0.3.104-14.2.x86_64.rpm1.3、数据库节点规划节点信息节点名称 实例名称 数据库名称 处理器 RAM 操作系统portaldb1 portaldb1Inter(R)1 Core2.00GHZ1.5GSuSE linux
12、 1032-bitportaldb2 portaldb2portaldb Inter(R)1 Core2.00GHZ1.5GSuSE linux 1032-bit节点信息节点名称 实例名称 数据库名称 处理器 RAM 操作系统portaldb1 wpsdb1Inter(R)1 Core2.00GHZ1.5GSuSE linux 1032-bitportaldb2 wpsdb2wpsdb Inter(R)1 Core2.00GHZ1.5GSuSE linux 1032-bit网络配置节点名称 公共 IP 地址 私有 IP 地址 虚拟 IP 地址portaldb1 192.168.79.35 19
13、2.168.172.11 192.168.79.135portaldb2 192.168.79.36 192.168.172.12 192.168.79.136Oracle 组件组件名称 系统用 户 首选组 次选组 主目录 ORACLE_BASEORACLE_HOMEORACLECLUSTEWARE oracle oinstall dba/home/oracle/u01/app/oracle/u01/app/oracle/product/10.2.0/crs_1ORACLEDATABASE oracle oinstall dba/home/oracle/u01/app/oracle/u01/a
14、pp/oracle/product/10.2.0/db_1存储规划存储组件 文件系统 卷大小 裸设备路径 ASM 磁盘组名 所属磁盘OCR RAW 1GB /dev/raw/raw1 N/A /dev/sdb1VotingDisk RAW 1GB /dev/raw/raw2 N/A /dev/sdc1数据库文件 ASM 10GB /dev/raw/raw3/dev/raw/raw4 DATAPOR /dev/sdd1/dev/sde1数据库文件 ASM 10GB /dev/raw/raw5/dev/raw/raw6 DATAWPS /dev/sdf1/dev/sdg1另外使用了一个 raw7
15、用于存放归档日志。Oracle 10G RAC 的 OCR 和 Voting Disk 是使用裸设备,数据库文件放置在 ASM上。到 Oracle 11G,OCR 和 Voting Disk 以及数据库文件均放置在 ASM 上。1.4、网络及存储配置一、网络配置注意事项每个节点最少需要两块网卡,一个用于公共网络,一个用于专用网络。在实际生产环境中专用网卡和公共网卡一样,必须上联交换机,不能直连。节点上公用网卡的名称必须相同,否则在配置 VIPCA 时会报错。节点上公用网卡必须配置默认网关,否则在配置 VIPCA 时会报错。Oracle RAC 节点 1 portaldb1设备 IP 地址 子网
16、掩码 网关 用途eth0 192.168.79.35 255.255.255.0 192.168.79.1 对外通信eht1 192.168.172.11 255.255.255.0 节点互联Oracle RAC 节点 2 portaldb2设备 IP 地址 子网掩码 网关 用途eth0 192.168.79.35 255.255.255.0 192.168.79.1 对外通信eht1 192.168.172.11 255.255.255.0 节点互联二、存储配置注意事项我们要使用裸设备建立 OCR 和 Voting Disk。需在操作系统中进行相关定义。二、主机操作系统定制我们在虚拟机上安装
17、的操作系统是 SuSE SLES10( 32 bit )。名称定为“SUSERAC01”。按照 1.2 的要求装好相应的 RPM 程序包并配好网络地址。接着进行下列操作:2.1、编辑 “/etc/hosts”文件在“/etc/hosts”文件中加入如下内容:192.168.79.35 portaldb1192.168.79.135 portaldb1-vip192.168.172.11 portaldb1-priv192.168.79.36 portaldb2192.168.79.136 portaldb2-vip192.168.172.12 portaldb2-priv2.2、编辑内核参数在
18、“/etc/sysctl.conf”文件中加入下列内容kernel.shmall = 2097152kernel.shmmax = 2147483648kernel.shmmni = 4096kernel.sem = 250 32000 100 128fs.file-max = 65536net.ipv4.ip_local_port_range = 9000 65500net.core.rmem_default = 1048576net.core.rmem_max = 2097152net.core.wmem_default = 262144net.core.wmem_max = 104857
19、6然后用“/sbin/sysctl -p”激活新加入的内核参数2.3、创建 Oracle 用户及相关目录portaldb1: # groupadd -g 700 oinstallportaldb1: # groupadd -g 701 dbaportaldb1: # useradd -m -d /home/oracle -g oinstall -G dba -u 500 oracleportaldb1: # id oracleuid=500(oracle) gid=700(oinstall) groups=701(dba),700(oinstall)portaldb1: # portaldb1
20、: # passwd oracleChanging password for oracle.New Password: Bad password: too simpleReenter New Password: Password changed.portaldb1: # mkdir p /u01/app/oracleportaldb1: # chown R oracle:oinstall /u01portaldb1: # chmod R 775 /u012.4、编辑 Oracle 用户预定义文件进入“/home/oracle”目录,Oracle 用户使用的是 bash shell,它默认的预定
21、义文件是.bash_profile。编辑该文件,加入如下信息:export ORACLE_BASE=/u01/app/oracleexport ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1export ORA_CRS_HOME=$ORACLE_BASE/product/10.2.0/crs_1export ORACLE_SID=portaldb1 节点 portadlb2 上 SID 是 portaldb2export PATH=$HOME/bin:$ORACLE_HOME/bin:$ORA_CRS_HOME/bin:/sbin:$PATH保存后,执
22、行“source .bash_profile”命令让其生效。2.5、为 Oracle 用户设置资源限制1、编辑“/etc/security/limits.conf”文件,加入如下信息:oracle soft nproc 2047oracle hard nproc 16384oracle soft nofile 1024oracle hard nofile 655362、编辑“/etc/pam.d/login”文件,加入如下信息:session required /lib/security/pam_limits.so3、编辑“/etc/profile”文件,加入如下信息:if $USER = “
23、oracle“ ; thenif $SHELL = “/bin/ksh“ ; thenulimit -p 16384ulimit -n 65536elseulimit -u 16384 -n 65536fifi4、编辑“/etc/csh.login”文件,加入如下信息:if ( $USER = “oracle“ ) thenlimit maxproc 16384limit descriptors 65536endif2.6、拷贝虚拟机上述设置在两个节点上都一样,我们先装好一台虚拟机后,直接拷贝生成第二台虚拟机。在拷贝后的目录中找到“SUSERAC01.vmx”文件,用文本编辑器打开,将“dis
24、playName”的值由“SUSERAC01”改为“SUSERAC02” 。然后用虚拟机软件打开该文件,在弹出的对话框中选择“I copied it”,直接生成第二台虚拟机。务必注意 SUSERAC01 和 SUSERAC02 的公共网卡名称必须相同,如:不能一个是 eth0,另一个是 eth1。否则在配置 vipca 时会报错。这个问题在拷贝虚拟机时,经常发生。可以采用更改设备名称的方法来解决这个问题。配好公共 IP、私有 IP 和默认网关。三、配置共享存储3.1、创建共享磁盘使用 vmware workstatison 中的“vmware-vdiskmanager”命令创建共享磁盘。注意双
25、引号和引号里面的字符之间不能有空格,否则创建磁盘会出错vmware-vdiskmanager -c -s 1000mb -a lsilogic -t 2 “J:shareddiskocr.vmdk“vmware-vdiskmanager -c -s 1000mb -a lsilogic -t 2 “J:shareddiskvotedisk.vmdk“vmware-vdiskmanager -c -s 5000mb -a lsilogic -t 2 “J:shareddiskasm1.vmdk“vmware-vdiskmanager -c -s 5000mb -a lsilogic -t 2 “
26、J:shareddiskasm2.vmdk“vmware-vdiskmanager -c -s 5000mb -a lsilogic -t 2 “J:shareddiskasm3.vmdk“vmware-vdiskmanager -c -s 5000mb -a lsilogic -t 2 “J:shareddiskasm4.vmdk“vmware-vdiskmanager -c -s 5000mb -a lsilogic -t 2 “J:shareddiskasm5.vmdk“接着在 SUSERAC01 和 SUSERAC02 的“SUSERAC01.vmx”文件中加入下列内容disk.loc
27、king = “false“diskLib.dataCacheMaxSize = “0“diskLib.dataCacheMaxReadAheadSize = “0“diskLib.DataCacheMinReadAheadSize = “0“diskLib.dataCachePageSize = “4096“diskLib.maxUnsyncedWrites = “0“scsi1.present = “TRUE“scsi1.virtualDev = “lsilogic“scsi1.sharedBus = “virtual“scsi1:0.present = “TRUE“scsi1:0.mod
28、e = “persistent“scsi1:0.filename = “D:shareddiskocr.vmdk“scsi1:0.deviceType = “disk“scsi1:1.present = “TRUE“scsi1:1.mode = “persistent“scsi1:1.filename = “ D:shareddiskvotedisk.vmdk“scsi1:1.deviceType = “disk“scsi1:2.present = “TRUE“scsi1:2.mode = “persistent“scsi1:2.filename = “ D:shareddiskasm1.vm
29、dk“scsi1:2.deviceType = “disk“scsi1:3.present = “TRUE“scsi1:3.mode = “persistent“scsi1:3.filename = “ D:shareddiskasm2.vmdk“scsi1:3.deviceType = “disk“scsi1:4.present = “TRUE“scsi1:4.mode = “persistent“scsi1:4.filename = “ D:shareddiskasm3.vmdk“scsi1:4.deviceType = “disk“scsi1:5.present = “TRUE“scsi1:5.mode = “persistent“scsi1:5.filename = “ D:shareddiskasm4.vmdk“scsi1:5.deviceType = “disk“scsi1:6.present = “TRUE“scsi1:6.mode = “persistent“scsi1:6.filename = “ D:shareddiskasm5.vmdk“