Redhat RAC

一.RAC 概述及环境规划
单点数据库 vs RAC 集群数据库
Real Application Clusters-----真正的应用集群
在这里插入图片描述
环境规划:
centos6.9 + 11.2.0.4

节点  	public ip  			vip  				private ip  		scan ip
ora01 	192.168.198.138 	192.168.198.140 	192.168.98.128		
																	192.168.198.142
ora02   192.168.198.139 	192.168.198.141 	192.168.98.129

public ip 对外提供服务的ip
private ip 心跳ip,两个实例通讯用的ip
scan ip 负载均衡ip

实例名称:orcl

oracle RAC(一两个节点为例)的本质是 :两台linux服务器各自运行一个 oracle instance ,两台服务器两个instance 共享一块磁盘(用来存储数据),共同对磁盘进行crud操作

二.安装两台虚拟机(centos6.9)
vmware 虚拟机环境配置
每个虚拟机 2 块网卡,1 块用于业务访问,1 块用于心跳(两个实例直接交换数据)。

ora01 配置两块网卡 :
第一块网卡,用于提供对外服务
在这里插入图片描述
第二块网卡,private ip 用于 两个节点之间 instance通信用的
在这里插入图片描述
在这里插入图片描述
固定ip:
(1)配置网卡1的ip (对外提供服务public ip)
在这里插入图片描述
(2)配置网卡2的ip (private ip 实例间同步用的)
在这里插入图片描述

ora02 配置两块网卡 :
同上

最后效果
ora01
在这里插入图片描述
ora02
在这里插入图片描述

三.添加共享存储(这一步需要关闭虚拟机)
1.去其中一台虚拟机(如 ora01) 创建共享存储
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
选择共享盘位置
在这里插入图片描述
在这里插入图片描述
找到虚拟机 ora01的安装目录,修改vmx文件
在这里插入图片描述
在文件Red Hat Enterprise Linux 6 64-bit.vmx最后面添加如下内容

scsi1:0.deviceType = "disk"
disk.locking="false"
diskLib.dataCacheMaxSize="0"
diskLib.dataCacheMaxReadAheadSize="0"
diskLib.DataCacheMinReadAheadSize="0"
diskLib.dataCachePageSize="4096"
diskLib.maxUnsyncedWrites="0"
scsi1.sharedBus="virtual"

2.去另一台虚拟机(ora02) 使用共享存储
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
然后启动两台虚拟机验证
用root用户执行 fdisk -l 得到一直结果说明正确
在这里插入图片描述
设置虚拟机支持 UUID (关键设置,然后再重启)
在两台虚拟机的 vmx 文件最后添加

disk.EnableUUID = "TRUE"

四.系统参数配置
1.修改主机名
主机1 改成 ora01
主机2 改成 ora02
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
修改成功

2.配置/etc/hosts
ora01 和 ora02 hosts内容一样都是
在这里插入图片描述

3.添加用户和组
ora01和ora02两台机器都要执行

groupadd oinstall
groupadd dba
groupadd oper
groupadd asmadmin
groupadd asmoper
groupadd asmdba

useradd -g oinstall -G dba,asmoper,asmadmin,asmdba grid
useradd -g oinstall -G dba,oper,asmdba,asmadmin oracle

修改用户密码
passwd grid 我设置成 123456
passwd oracle 我设置成 123456

4.创建目录(每台都要创建):

mkdir -p /u01/app/grid 						#grid 的 ORACLE_BASE
mkdir -p /u01/app/11.2.0.4/grid		        #grid 的 ORACLE_HOME,不能是包含关系
mkdir -p /u01/app/oracle/product/11.2.0.4/db_1
chown -R oracle:oinstall /u01
chown -R grid:oinstall /u01/app/grid
chown -R grid:oinstall /u01/app/11.2.0.4
chown -R oracle:oinstall /u01/app/oracle
chmod -R 775 /u01

5.设置环境变量

ora01 节点:

grid 账户:
修改 .bash_profile

export ORACLE_SID=+ASM1
export ORACLE_BASE=/u01/app/grid
export ORACLE_HOME=/u01/app/11.2.0.4/grid
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib
export PATH=$ORACLE_HOME/bin:$PATH

oracle 账户:
修改 .bash_profile

export ORACLE_SID=fxdb1
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=/u01/app/oracle/product/11.2.0.4/db_1
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib
export PATH=$ORACLE_HOME/bin:$PATH

ora02 节点:

grid 账户:
修改 .bash_profile

export ORACLE_SID=+ASM2
export ORACLE_BASE=/u01/app/grid
export ORACLE_HOME=/u01/app/11.2.0.4/grid
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib
export PATH=$ORACLE_HOME/bin:$PATH

oracle 账户:
修改 .bash_profile

export ORACLE_SID=fxdb2
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=/u01/app/oracle/product/11.2.0.4/db_1
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib
export PATH=$ORACLE_HOME/bin:$PATH

编辑 /etc/fstab 文件(两个节点都要配置)
修改 tmpfs /dev/shm tmpfs defaults 0 0 为 tmpfs /dev/shm tmpfs defaults,size=2g 0 0
如下如
在这里插入图片描述

在终端执行(两个节点都要执行)

mount -o remount /dev/shm

关闭防火墙:(两个节点都要执行)

chkconfig iptables off
chkconfig ip6tables off

关闭 selinux:(两个节点都要执行)

vi /etc/selinux/config
修改  为   SELINUX=disabled

关闭其它服务:(两个节点都要执行)

chkconfig cups off

修改 limits.conf 文件:(两个节点都要执行)
vi /etc/security/limits.conf

oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
grid soft nproc 2047
grid hard nproc 16384
grid soft nofile 1024
grid hard nofile 65536

如下图
在这里插入图片描述

修改 sysctl.conf 文件:(两个节点都要执行)
vi /etc/sysctl.conf
追加如下内容

kernel.sem=250 32000 100 128
kernel.shmmni=4096
fs.file-max=6815744
net.ipv4.ip_local_port_range=9000 65000
net.core.rmem_default=262144
net.core.rmem_max=4194304
net.core.wmem_default=262144
net.core.wmem_max=1048576
fs.aio-max-nr=1048576

如下图
在这里插入图片描述
在终端 执行 sysctl -p 使配置生效

禁用 ntp:(两个节点都要执行) (两个节点都要执行)
终端执行: chkconfig ntpd off
service ntpd stop
mv /etc/ntp.conf /etc/ntp.bak

安装下面4个rpm 包 (两个节点都要执行)

compat-libcap1-1.10-1.x86_64.rpm 特别是这个 rpm 包,系统不会提示
compat-libstdc++-33-3.2.3-69.el6.x86_64.rpm
libaio-devel-0.3.107-10.el6.x86_64.rpm
pdksh-5.2.14-30.x86_64.rpm

在终端执行 rpm -ivh *.rpm

Udev 方式配置共享存储: (两个节点都要执行)
cd /etc/udev/rules.d 目录
创建文件 99-oracle-asmdevices.rules touch 99-oracle-asmdevices.rules

然后执行下面命令查询,共享盘磁盘id

/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/sdb

在这里插入图片描述
两台电脑 id一直 说明配置正确

在刚才创建的文件 (99-oracle-asmdevices.rules) 中添加如下内容:

KERNEL=="sd*", BUS=="scsi", PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace
--device=/dev/$name", RESULT=="36000c29211fe3ab94c5ef3c0ebdb3ac1", NAME="asmdisk1",
OWNER="grid", GROUP="asmadmin", MODE="0660"

把 RESULT 替换为刚才查的id

然后执行下面两条命令

/sbin/udevadm control --reload-rules
/sbin/start_udev 

在这里插入图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值