共计 8291 个字符,预计需要花费 21 分钟才能阅读完成。
这篇文章将为大家详细讲解有关 Oracle RAC 如何搭建,丸趣 TV 小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
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 如何搭建”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。