一、安装环境

1、实验环境

虚拟机:VMware Workstation 8.0.3_64bit

ORACLEOracle Database11g11.2.0.3.0-64bit

操作系统:Red HatEnterprise Linux  6.5


2、节点配置

描述
节点一 节点二 节点三 ISCSI存储
主机名称 note1 note2 note3 iscsi-asm
Public IP 172.16.1.7(vlan3) 172.16.1.8(vlan3) 172.16.1.9(vlan3) 172.16.1.20(vlan3)
Private IP 192.168.1.11(vlan5) 192.168.1.12(vlan5) 192.168.1.13(vlan5)
Virtual IP 172.16.1.17 172.16.1.18 172.16.1.19
Scan IP 172.16.1.10、172.16.1.11、172.16.1.12
实例名 racdb1 racdb2 racdb3
/etc/hosts

127.0.0.1  localhost.localdomain  localhost
 #Public IP
 172.16.1.7    note1
 172.16.1.8    note2
 172.16.1.9    note3
 #Virtual IP
 172.16.1.17   note1-vip
 172.16.1.18   note2-vip
 172.16.1.19   note3-vip
 #Private IP
 192.168.1.11  note1-priv
 192.168.1.12  note2-priv
 192.168.1.13  note3-priv
 #Scan IP (scan ip为奇数,推荐3个)
 172.16.1.10    cluster-scan
 172.16.1.11    cluster-scan

 172.16.1.12    cluster-scan

172.16.1.20  iscis-asm


以上环境配置过程略,可通过VM的Clone功能克隆多台机器之后变更IP和主机名即可。


二、系统基本配置

1、搭建存储服务器

A、添加磁盘创建软件RAID5

RedHat 6.5+11G+RAC+ASM安装与配置(三节点)_第1张图片

创建软件RAID5,共3块磁盘,无热备,具体请查阅相关资料

[root@iscsi-asm ~] # mdadm –Cv /dev/md0 –l5 –n3/dev/sd[bcd]1

B、配置ISCSI磁盘

安装服务器端使用的scis-target-utils包,安装前先确认以下安装包已安装:kernel-sourcekernelgccperl

[root@iscsi-asm~] # rpm –ivh scsi-target-utils*.rpm

    // RedHat 6在光盘Packages目录下

                                               // RedHat 5在光盘ClusterStorage目录下

配置服務端/etc/tgt/targets.conf文件

[root@iscsi-asm ~] # cat >> /etc/tgt/targets.conf << EOF

>

>   backing-store  /dev/md0

>

> EOF

启动ISCSI服务

[root@iscsi-asm ~] # service tgtd restart                //重启iscsi服务

[root@iscsi-asm ~] # chkconfig --level 2345 tgtd on      //设置开机自启动

[root@iscsi-asm ~] # chkconfig --list tgtd               //查看自启动项

[root@iscsi-asm ~] # tgt-admin --show target1               //查看tgtd是否配置成功

 

2、挂载ISCSI磁盘

A、节点一note1 上:

[root@note1 ~] # rpm –ivh iscsi-initiator-utils*.rpm

[root@note1 ~] # service iscsid restart                   //重启iscsi服务

[root@note1 ~] # chkconfig --level 2345 iscsid on         //设置开机自启动

[root@note1 ~] # chkconfig --list iscsid                  //查看自启动项

[root@note1 ~] # iscsiadm –m node –p 172.16.1.20 –l    //登录iscsi存储

B、节点二note2 上:

[root@note2 ~] # rpm –ivh iscsi-initiator-utils*.rpm

[root@note2 ~] # service iscsid restart                    //重启iscsi服务

[root@note2 ~] # chkconfig --level 2345 iscsid on          //设置开机自启动

[root@note2 ~] # chkconfig --list iscsid                   //查看自启动项

[root@note2 ~] # iscsiadm –m node –p 172.16.1.20 –l     //登录iscsi存储

C、节点三note3 上:

[root@note3 ~] # rpm –ivh iscsi-initiator-utils*.rpm

[root@note3 ~] # service iscsid restart                     //重启iscsi服务

[root@note3 ~] # chkconfig --level 2345 iscsid on          //设置开机自启动

[root@note3 ~] # chkconfig --list iscsid                   //查看自启动项

[root@note3 ~] # iscsiadm –m node –p 172.16.1.20 –l     //登录iscsi存储

D、划分ISCSI磁盘

[root@note1 ~] # fdisk /dev/sdb                   //挂载iscsi存储后的磁盘,请勿格式化

wKiom1cgoiyz9hdCAABu_4hpSYY951.jpg

2、UDEV配置ASM

AASM磁盘的规划

ASM磁盘组
磁盘组大小 ASM冗余 ASM磁盘 ISCSI磁盘路径 存储存放规则
+CRS 20G
EXTERN
/dev/asm-crs1
/dev/sdb1 OCR、表决磁盘
+DATA 60G EXTERN /dev/asm-db1 /dev/sdb2 数据文件
+ARCH 40G EXTERN /dev/asm-db2 /dev/sdb3 归档文件

若表决磁盘所在磁盘组属性为EXTERNAL,为一块,若为NORMAL,则需要三块,若为HIGH,则需要五块,需要为奇数,这是为了发生脑裂时,用于表决。


B、配置UDEV

[root@note1 ~] # scsi_id –g –u –d /dev/sdb       //获取磁盘UUID

1IET_00010001

[root@note1 ~] #vim /etc/udev/rules.d/99-oracle-asmdevices.rules

KERNEL==”sdb1“, BUS==”scsi”,PROGRAM==”/sbin/scsi_id -g -u -d /dev/$parent”,RESULT==” 1IET_00010001”,NAME=”asm-crs″, OWNER=”grid”, GROUP=”asmadmin”, MODE=”0660″

KERNEL==”sdb2“, BUS==”scsi”, PROGRAM==”/sbin/scsi_id-g -u -d /dev/$parent”,RESULT==” 1IET_00010001”, NAME=”asm-db1”, OWNER=”grid”,GROUP=”asmadmin”, MODE=”0660″

KERNEL==”sd?1″, BUS==”scsi”,PROGRAM==”/sbin/scsi_id -g -u -d /dev/$parent”,RESULT==” 1IET_00010001”,NAME=”asm-db2″, OWNER=”grid”, GROUP=”asmadmin”, MODE=”0660″

 

UDEV配置文件传到其他节点

[root@note1 ~] # rsync –r /etc/udev/rules.d/99-oracle-asmdevices.rules 172.16.1.8: /etc/udev/rules.d/

[root@note1 ~] # rsync –r /etc/udev/rules.d/99-oracle-asmdevices.rules 172.16.1.9: /etc/udev/rules.d/

 

C、启动UDEV

[root@note1 ~] #start_udev

[root@note2 ~] #start_udev

[root@note3 ~] #start_udev


三、配置ORACLE軟件安裝环境

1、安裝oracle RAC所需的linux軟件包

[root@note1~] # yum –y install binutils* compat-libstdc++* elfutils-libelf* elfutils-libelf-devel* compat-libcap1 *  elfutils-libelf-devel-static* gcc* gcc-c++* glibc* glibc-common* glibc-devel* glibc-headers* ksh* libaio* libaio-devel* libgcc*libgomp* libstdc++* libstdc++-devel* make* sysstat* unixODBC * unixODBC-devel*

节点二和节点三上执行相同的命令,将所需的包安装上。


 

2、配置集群时间同步服务

这里使用集群时间同步服务(CTSS),需要卸载网络时间协议(NTP

[root@note1 ~] #service ntpd stop

[root@note1 ~] #chkconfig –level 2345 ntpd off

[root@note1 ~] #rm –rf /etc/ntp.conf

节点二和节点三上执行相同的命令,卸载NTP

在集群安装完后,要确认ctssd是否处于活动状态

[grid@note1 ~] #crsctl check ctss


1、  配置内核参数

三个节点执行如下脚本:

#!/bin/bash
prepareSystem(){
# Set SElinux to disabled mode regardless of its initial value
  sed -i -e's/^SELINUX=.*/SELINUX=disabled/' /etc/selinux/config
  setenforce 0
# stop iptables
  /etc/init.d/iptables stop
  chkconfig --level 0123456 iptables off
  chkconfig --level 0123456 ip6tablesoff
}
 
Configure1(){
    cat >> /etc/sysctl.conf<>/etc/security/limits.conf <> /etc/pam.d/login< 
  

[root@note1 ~] # sh configure.sh

[root@note2 ~] # sh configure.sh

[root@note3 ~] # sh configure.sh


2、  创建RAC相关权限组,用户和目录

A、  创建相关组(三个节点上执行)

[root@note1 ~] # groupadd oinstall

[root@note1 ~] # groupadd asmadmin

[root@note1 ~] # groupadd asmdba

[root@note1 ~] # groupadd asmoper

[root@note1 ~] # groupadd dba

[root@note1 ~] # groupadd oper


B、  创建grid用户:

节点一ORACLE_SID=+ASM1

[root@note1 ~] # useradd -g oinstall -G asmadmin,asmdba,asmoper grid

[root@note1 ~] # passwd grid

节点二ORACLE_SID=+ASM2

[root@note2 ~] # useradd -g oinstall -G asmadmin,asmdba,asmoper grid

[root@note2 ~] # passwd grid

节点三ORACLE_SID=+ASM3

[root@note3 ~] # useradd -g oinstall -G asmadmin,asmdba,asmoper grid

[root@note3 ~] # passwd grid

编辑grid用户的环境配置文件(~/.bash_profile,加入如下内容

export PS1="`/bin/hostname -s`-> "

export TMP=/tmp

export TMPDIR=$TMP

export ORACLE_SID=+ASM1   #节点二为+ASM2,节点三为+ASM3

export ORACLE_BASE=/u/app/grid

export ORACLE_HOME=/u/app/11.2.0/grid

export ORACLE_TERM=xterm

export NLS_DATE_FORMAT='yyyy/mm/dd hh24:mi:ss'

export TNS_ADMIN=$ORACLE_HOME/network/admin

export PATH=/usr/sbin:$PATH

export PATH=$ORACLE_HOME/bin:$PATH

export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib

exportCLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib

umask 022


C、  创建ORACLE用户

节点一:ORACLE_SID=racdb1

[root@note1 ~] # usermodd -g oinstall -G dba,oper,asmdba oracle

[root@note1 ~] # passwd oracle

节点二:ORACLE_SID=racdb2

[root@note2 ~] # usermodd -g oinstall -G dba,oper,asmdba oracle

[root@note2 ~] # passwd oracle

节点三:ORACLE_SID=racdb3

[root@note3 ~] # usermodd –g oinstall -G dba,oper,asmdba oracle

[root@note3 ~] # passwd oracle

编辑oracle用户的环境配置文件(~/.bash_profile,加入如下内容

export TMP=/tmp

export TMPDIR=$TMP

export ORACLE_SID=racdb1  #节点二为racdb2,节点三为racdb3

export ORACLE_BASE=/u/app/oracle

export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1

export ORACLE_UNQNAME=racdb

export TNS_ADMIN=$ORACLE_HOME/network/admin

export ORACLE_TERM=xterm

export PATH=/usr/sbin:$PATH

export PATH=$ORACLE_HOME/bin:$PATH

exportLD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib:$ORACLE_HOME/jdbc/lib

exportCLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib

export NLS_DATE_FORMAT='yyyy/mm/dd hh24:mi:ss'

umask 022

 

5、创建软件安装目录

在三个节点上执行以下命令:

[root@note1 ~] # mkdir -p/u/app/grid

[root@note1 ~] # mkdir -p/u/app/11.2.0/grid

[root@note1 ~] # chown -Rgrid:oinstall /u/app

[root@note1 ~] # mkdir -p/u/app/oracle

[root@note1 ~] # chown oracle:oinstall/u/app/oracle

[root@note1 ~] # chmod -R775 /u



四、安装RAC集群软件

1、  安装cvuqdisk

Cvuqdisk rpm包在gridrpm目录中

三个节点上执行:

[root@note1 ~] # CVUQDISK_GRP=oinstall;export CVUQDISK_GRP

[root@note1 ~] # rpm -ivh cvuqdisk-1.0.9-1.rpm

[root@note2 ~] # CVUQDISK_GRP=oinstall;export CVUQDISK_GRP

[root@note2 ~] # rpm -ivh cvuqdisk-1.0.9-1.rpm

[root@note3 ~] # CVUQDISK_GRP=oinstall;export CVUQDISK_GRP

[root@note3 ~] # rpm -ivh cvuqdisk-1.0.9-1.rpm


2、  安装Grid软件

许多文档都在安装之前配置了各节点之间oraclegrid用户的SSH信任关系,这里使用软件配置选项进行配置。其实就是使用了grid软件包中sshsetup目录下的sshUserSetup.sh脚本。

[root@note1 ~]#export display=0.0

[root@note1 ~]#xhost +

[root@note1 ~]#su - grid

[grid@note1 grid]#./runInstaller

RedHat 6.5+11G+RAC+ASM安装与配置(三节点)_第2张图片

RedHat 6.5+11G+RAC+ASM安装与配置(三节点)_第3张图片



SCAN Name/etc/hosts与里面scanname一样,否则报[INS-40718]错误

RedHat 6.5+11G+RAC+ASM安装与配置(三节点)_第4张图片


添加其它两个节点,设置SSH,输入密码之后点击设置

RedHat 6.5+11G+RAC+ASM安装与配置(三节点)_第5张图片

RedHat 6.5+11G+RAC+ASM安装与配置(三节点)_第6张图片


RedHat 6.5+11G+RAC+ASM安装与配置(三节点)_第7张图片



RedHat 6.5+11G+RAC+ASM安装与配置(三节点)_第8张图片


RedHat 6.5+11G+RAC+ASM安装与配置(三节点)_第9张图片


RedHat 6.5+11G+RAC+ASM安装与配置(三节点)_第10张图片


因未配置DNS,此错误可以忽略。忽略报错会弹窗,问是否忽略错误,确认就好。

RedHat 6.5+11G+RAC+ASM安装与配置(三节点)_第11张图片


RedHat 6.5+11G+RAC+ASM安装与配置(三节点)_第12张图片


第一个脚本,在三个节点上依次执行:

[root@note1~]# sh /u/app/oraInventory/orainstRoot.sh

[root@note2~]# sh /u/app/oraInventory/orainstRoot.sh

[root@note3~]# sh /u/app/oraInventory/orainstRoot.sh

第二個腳本,在三个节点上依次執行

[root@note1~]# sh /u/app/11.2.0/grid/root.sh   //执行要一定的时间,

[root@note2~]# sh /u/app/11.2.0/grid/root.sh

[root@note3~]# sh /u/app/11.2.0/grid/root.sh

执行以上的脚本,一定要按照顺序来,先在各节点上执行第一脚本,之后再执行第二个,一个节点一个节点执行完之后,再到下个一个节点执行,这个很重要。

 

接下来还会包一个错误,如下图所示,造成原因是因为没有配置DNS,在这里可以忽略


RedHat 6.5+11G+RAC+ASM安装与配置(三节点)_第13张图片


在节点一grid用户上:执行crs_stat –t,查看集群服务的开启情况,其中以gsd结尾的为兼容9i的服务,可以不启用。

RedHat 6.5+11G+RAC+ASM安装与配置(三节点)_第14张图片


1、 安装oracle软件

为节省篇幅,我只截了部分较重要的图

RedHat 6.5+11G+RAC+ASM安装与配置(三节点)_第15张图片

配置ORACLE用户的SSH信任关系

RedHat 6.5+11G+RAC+ASM安装与配置(三节点)_第16张图片

ORACLE软件的安装目录

RedHat 6.5+11G+RAC+ASM安装与配置(三节点)_第17张图片


RedHat 6.5+11G+RAC+ASM安装与配置(三节点)_第18张图片


造成原因是因为没有配置DNS,在这里可以忽略


RedHat 6.5+11G+RAC+ASM安装与配置(三节点)_第19张图片


执行脚本:

[root@note1~]# sh/u/app/oracle/product/11.2.0/db_1/root.sh

[root@note2~]# sh /u/app/oracle/product/11.2.0/db_1/root.sh

[root@note3~]# sh /u/app/oracle/product/11.2.0/db_1/root.sh

 

五、创建ASM磁盘组

[root@note1~]#xhost +

[root@note1~]#su – grid

[grid@note1 ~]#asmca

RedHat 6.5+11G+RAC+ASM安装与配置(三节点)_第20张图片



RedHat 6.5+11G+RAC+ASM安装与配置(三节点)_第21张图片


  六、创建数据库

[root@note1~]#xhost +

[root@note1~]#su – oracle

[oracle@note1~]#dbca

RedHat 6.5+11G+RAC+ASM安装与配置(三节点)_第22张图片


RedHat 6.5+11G+RAC+ASM安装与配置(三节点)_第23张图片


RedHat 6.5+11G+RAC+ASM安装与配置(三节点)_第24张图片


RedHat 6.5+11G+RAC+ASM安装与配置(三节点)_第25张图片


RedHat 6.5+11G+RAC+ASM安装与配置(三节点)_第26张图片


至此,基本设置已经完成,接下来就是下一步,下一步的事,相关的参数自行调整。