Oracle RAC如何搭建
这篇文章将为大家详细讲解有关Oracle RAC如何搭建,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
RAC搭建
一、准备工作. 1
1.规划. 1
2.网络配适器准备(rac1& rac2). 2
3.关闭防火墙和SElinux(rac1& rac2) 2
4.修改主机名(rac1& rac2). 3
5.修改host文件--网络配置(rac1& rac2). 3
6.软件包准备. 3
二、修改参数. 4
1.修改系统参数(rac1&rac2) 4
2.修改limits文件(rac1&rac2) 4
三、添加组、用户、目录. 4
1.添加组(rac1&rac2) 4
2.添加用户(rac1&rac2) 5
3.创建目录(rac1&rac2) 5
四、配置环境变量(RAC1&RAC2). 6
五、共享磁盘准备. 7
1.Openfile使用. 7
2.对磁盘进行分区(rac1). 15
3.准备裸设备规则列表(rac1& rac2). 16
六、解压grid,配置ssh互信. 17
1.解压grid(rac1) 17
2.配置互信(rac1) 17
3.检查互信(rac1&rac2) 17
4.安装grid解压后的cvuqdisk包(rac1 & rac2) 18
七、配置本地yum源,安装软件包(rac1&rac2) 18
八、关闭没有必要的服务(rac1&rac2). 18
九、安装GI软件(rac1) 19
十、创建ASM磁盘组. 30
十一、安装数据库软件. 32
十二、DBCA建库. 40
十三、安装后检查. 48
1.查看监听. 48
2.查看实例. 48
一、准备工作
1.规划
rac1 | rac2 | |
IP | 192.168.131.100/rac1 | 192.168.131.101/rac2 |
privary IP | 10.0.0.100/rac1-priv | 10.0.0.101/rac2-priv |
VIP | 192.168.131.123/rac1-vip | 192.168.131.124/rac2-vip |
scanIP | 192.168.131.125/racscan-ip | |
hostname | rac1 | rac2 |
OS版本 | RHEL 6.4 | RHEL 6.4 |
DB版本 | 11.2.0.4 | 11.2.0.4 |
Cluster software | GI 11.2.0.4 | GI 11.2.0.4 |
存储 | Openfile/192.168.131.191 |
2.网络配适器准备(rac1& rac2)
在虚拟机设置界面添加两个网络配适器,一个用于公网(选择NET模式),另一个用于节点间通信(选择host only模式)。配置网卡信息如下
IP | 192.168.131.100/rac1 | 192.168.131.101/rac2 |
privary IP | 10.0.0.100/rac1-priv | 10.0.0.101/rac2-priv |
3.关闭防火墙和SElinux(rac1& rac2)
[root@rac01 ~]#chkconfig iptables off
[root@rac01 ~]#service iptables stop
关闭selinux
[root@rac01 ~]# vi /etc/selinux/config
SELINUX=disabled
4.修改主机名(rac1& rac2)
vi /etc/sysconfig/network
HOSTNAME=rac1
GATEWAY=192.168.131.1
5.修改host文件--网络配置(rac1& rac2)
vi /etc/hosts
添加以下内容
192.168.131.100 rac1
192.168.131.101 rac2
10.0.0.102 rac1-priv
10.0.0.103 rac2-priv
192.168.131.123 rac1-vip
192.168.131.124 rac2-vip
## vip一定是不能ping通
192.168.131.125 racscan-ip
6.软件包准备
(rac1)
GI目录:/u01/setup/grid
DB目录:/u01/setup/db
OS目录:/u01/setup/os
(rac2)
OS目录:/u01/setup/os
二、修改参数
1.修改系统参数(rac1&rac2)
vi /etc/sysctl.conf
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmmax = 4294967296 ##该值为内存的75%,单位为字节
kernel.shmmni = 4096
kernel.shmall = 2097152
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
使参数立即生效:
[root@rac01 ~]# /sbin/sysctl -p
2.修改limits文件(rac1&rac2)
[root@rac01 ~]# vi /etc/security/limits.conf
grid soft nproc 2047
grid hard nproc 16384
grid soft nofile 1024
grid hard nofile 65536
oracle soft nproc 2047
oracle hard nproc 16384se
oracle soft nofile 1024
oracle hard nofile 65536
三、添加组、用户、目录
1.添加组(rac1&rac2)
groupadd -g 501 oinstall
groupadd -g 502 dba
groupadd -g 503 oper
groupadd -g 504 asmadmin
groupadd -g 505 asmoper
groupadd -g 506 asmdba
2.添加用户(rac1&rac2)
(1) 添加用户
useradd -g oinstall -G dba,asmdba,oper,oinstall oracle
useradd -g oinstall -G asmadmin,asmdba,asmoper,oper,dba,oinstall grid
(2)为grid和oracle用户设置密码
[root@rac01 ~]# passwd oracle
[root@rac01 ~]# passwd grid
(3)检查
[root@ora1 ~]# id oracle
uid=501(oracle) gid=501(oinstall)
groups=501(oinstall),502(dba),503(oper),506(asmdba)
[root@ora1 ~]# id grid
uid=502(grid) gid=501(oinstall)
groups=501(oinstall),502(dba),503(oper),504(asmadmin),505(asmoper),506(asmdba)
3.创建目录(rac1&rac2)
(root用户)
mkdir -p /u01/app/oracle
mkdir -p /u01/app/grid
mkdir -p /u01/app/11.2.0/grid
chown -R grid:oinstall /u01/app/grid
chown -R grid:oinstall /u01/app/11.2.0
chown -R oracle:oinstall /u01/app/oracle
chmod -R 775 /u01
mkdir -p /u01/app/oraInventory
chown -R grid:oinstall /u01/setup/grid
chown -R oracle:oinstall /u01/setup/db
chown -R grid:oinstall /u01/app/oraInventory
chmod -R 775 /u01/app/oraInventory
四、配置环境变量(RAC1&RAC2)
-----切换到grid用户下-----
rac1
[grid@rhel_linux_asm ~]$ vim .bash_profile
export ORACLE_SID=+ASM1
export ORACLE_BASE=/u01/app/grid
export ORACLE_HOME=/u01/app/11.2.0/grid
export LD_LIBRARY_PATH=$ORACLE_HOME/lib
export PATH=$ORACLE_HOME/bin:$PATH
rac2
[grid@rhel_linux_asm ~]$ vim .bash_profile
export ORACLE_SID=+ASM2
export ORACLE_BASE=/u01/app/grid
export ORACLE_HOME=/u01/app/11.2.0/grid
export LD_LIBRARY_PATH=$ORACLE_HOME/lib
export PATH=$ORACLE_HOME/bin:$PATH
----切换到Oracle用户下------
rac1
# su - oracle
$ vi /home/oracle/.bash_profile
export ORACLE_SID=orcl1
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
export LD_LIBRARY_PATH=$ORACLE_HOME/lib
export PATH=$PATH:$ORACLE_HOME/bin
rac2
# su - oracle
$ vi /home/oracle/.bash_profile
export ORACLE_SID=orcl2
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
export LD_LIBRARY_PATH=$ORACLE_HOME/lib
export PATH=$PATH:$ORACLE_HOME/bin
五、共享存储准备
1.Openfile使用
(1)Openfile的下载安装
Openfile iso文件下载地址
http://www.openfiler.com/community/download
(2)访问Openfile管理系统
创建一个新的虚拟机,配置如下
硬盘说明:
硬盘1是用于Openfile系统,硬盘2、3用于OCR盘,硬盘4-6用于DATA盘
a) 在浏览器中按照上面的ip地址进入openfile管理系统
b) 输入账号openfiler,密码password(界面很Q)
c) 进入管理系统主界面
(3) 使用Openfile添加磁盘
a) 进入services标签,启动iscsi服务
开启iscsi服务
b) 进入system标签页
增加一个允许访问的网段
查看访问网段
c) 进入volumes 创建物理卷
此时,物理卷已经创建好
d) 创建卷组
此时,myvg卷组已经创建好了
e) 创建逻辑卷
同理,将/dev/sdc、/dev/sdd、/dev/sde、/dev/sdf做成lv
步骤略.........
最后结果如图
f) 添加一个IQN
g) 做一个磁盘映射
此时逻辑卷添加完成,要使用的话,需要对逻辑卷进行扫描
(4) 客户机端对openfile服务器进行扫描(rac1& rac2)
命令 # iscsiadm -m discovery -t sendtargets -p 192.168.131.191 -l
如果iscsiadm命令不可用,则需要安装iscsi-initiator rpm包
# iscsiadm -m discovery -t st -p 192.168.0.10
-bash: iscsiadm: command not found
# mount /u01/setup/os /mnt --加载光盘
mount: block device /dev/cdrom is write-protected, mounting read-only
# cd /mnt/
# cd Server/
# ls -l *iscsi*
-r--r--r-- 55 root root 579386 Dec 17 2008 iscsi-initiator-utils-6.2.0.868-0.18.el5.i386.rpm
# rpm -ivh iscsi-initiator-xxxxxxxxxxx.rpm
OK,重试iscsiadm命令
2.查找设备的wwid
(执行命令)
# for i in `cat /proc/partitions | awk {'print $4'} |grep sd`; do echo "### $i: `/lib/udev/scsi_id --whitelist --replace-whitespace /dev/$i`"; done
上面红框里的内容就是我们需要的wwid
3.准备裸设备规则列表(rac1& rac2)
(通过磁盘的wwid进行绑定)
# vi /etc/udev/rules.d/99-oracle-asmdevices.rules
KERNEL=="sd*",BUS=="scsi",PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name",RESULT=="14f504e46494c455234524b33457a2d493449682d6c555746",NAME="asm_ocr1", OWNER="grid",GROUP="oinstall",MODE="0660"
KERNEL=="sd*",BUS=="scsi",PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name",RESULT=="14f504e46494c45524644775047362d445155342d33315251",NAME="asm_ocr2", OWNER="grid",GROUP="oinstall",MODE="0660"
KERNEL=="sd*",BUS=="scsi",PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name",RESULT=="14f504e46494c4552457a786c38542d656c6c412d30547753",NAME="asm_data1", OWNER="grid",GROUP="oinstall",MODE="0660"
KERNEL=="sd*",BUS=="scsi",PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name",RESULT=="14f504e46494c45526377784361742d525865332d48357a36",NAME="asm_data2", OWNER="grid",GROUP="oinstall",MODE="0660"
KERNEL=="sd*",BUS=="scsi",PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name",RESULT=="14f504e46494c455271325a4a66662d5a6959672d4a337961",NAME="asm_data3", OWNER="grid",GROUP="oinstall",MODE="0660"
启动设备
# start_udev
查看设备
[root@rac1 ~]# cd /dev
[root@rac1 ~]# ll asm*
六、解压grid,配置ssh互信
1.解压grid(rac1)
# su - grid
$ cd /u01/setup/grid
$ unzip p*.zip
2.配置互信(rac1)
(root用户执行)
# /u01/setup/grid/grid/sshsetup/sshUserSetup.sh -user oracle -hosts "rac1 rac2" -advanced -noPromptPassphrase
# /u01/setup/grid/grid/sshsetup/sshUserSetup.sh -user grid -hosts "rac1 rac2" -advanced -noPromptPassphrase
(记得每个用户要输入4次密码)
3.检查互信(rac1&rac2)
su - grid
ssh rac1 date
ssh rac2 date
ssh rac1-priv date
ssh rac2-priv date
su - oracle
ssh rac1 date
ssh rac2 date
ssh rac1-priv date
ssh rac2-priv date
(验证互相访问不需要密码)
4.安装grid解压后的cvuqdisk包(rac1 & rac2)
[root@rac1 grid]# cd rpm/
# rpm -ivh cvuqdisk-1.0.9-1.rpm
七、配置本地yum源,安装软件包(rac1&rac2)
(root用户)
# mount -o loop /u01/setup/os/* /mnt
# yum-config-manager --add-repo file:///mnt
vi /etc/yum.repos.d/mnt.repo
[mnt]
name=Yum Source
baseurl=file:///mnt
enabled=1
gpgcheck=0
# yum makecache
安装如下包:
[root@rac01 opt]#yum install -y binutils compat* elfutils-libelf elfutils-libelf-devel glibc glibc-common glibc-devel gcc gcc-c++ libaio libgcc libstdc++ libstdc++-devel make sysstat unixODBC-devel libaio-devel ksh
八、关闭没有必要的服务(rac1&rac2)
chkconfig autofs off
chkconfig acpid off
chkconfig sendmail off
chkconfig cups-config-daemon off
chkconfig cpus off
chkconfig xfs off
chkconfig lm_sensors off
chkconfig gpm off
chkconfig openibd off
chkconfig pcmcia off
chkconfig cpuspeed off
chkconfig nfslock off
chkconfig ip6tables off
chkconfig rpcidmapd off
chkconfig apmd off
chkconfig sendmail off
chkconfig arptables_jf off
chkconifg microcode_ctl off
chkconfig rpcgssd off
chkconfig ntpd off
九、安装GI软件(rac1)
1.可行性校验
(执行以下脚本)
[grid@rac1 grid]$ ./runcluvfy.sh stage -pre crsinst -n rac1,rac2 -fixup -verbose
2.安装GI
$ unzip /u01/setup/grid/p*
$ cd /u01/setup/grid/grid
运行 ./run
查看集群状态
[root@rac1 ~]# cd /u01/app/11.2.0/grid/bin/
[root@rac1 bin]# ./crs_stat -t
十、创建ASM磁盘组
[grid@rac1 ~]$ export DISPLAY=192.168.131.1:0.0
[grid@rac1 ~]$ asmca
DATA盘选择asm_data1/asm_data2/asm_data3
十一、安装数据库软件
解压 unzip /u01/setup/db/p*
cd /u01/setup/db/database
运行 ./run
十二、DBCA建库
[oracle@rac1~]dbca
十三、安装后检查
1.查看监听
集群的监听由系统自动创建,直接查看就可以了
2.查看实例
关于"Oracle RAC如何搭建"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。