ORACLE-RAC集群搭建

目录
1、RAC 概述及环境规划
centos6+11.2.0.4
7+12C
2、vmware虚拟机环境配置
workstation rac01 rac02 2g
3、系统参数配置
4、udev共享存储配置+grid软件安装
5、安装oracle-RAC软件
6、dbca安装RAC数据库

一、RAC 概述及环境规划

单点数据库 vs RAC 集群数据库
Real Application Clusters-----真正的应用集群
在这里插入图片描述
centos6.9 x64位
11.2.0.4 x64位
实例名称:fxdb
在这里插入图片描述
public ip 对外提供服务的ip
private ip 心跳ip,两个实例通讯用的ip
scan ip 负载均衡ip
oracle RAC(一两个节点为例)的本质是 :两台linux服务器各自运行一个 oracle instance ,两台服务器两个instance 共享一块磁盘(用来存储数据),共同对磁盘进行crud操作

二、安装虚拟机、配置网卡(centos6.9)

(安装1台,第2台克隆第1台,然后修改网卡配置信息)
在这里插入图片描述
1️⃣要求:①、每个虚拟机2块网卡,1块用于业务访问,1块用于心跳(2个节点之间交换数据);②、安装vmtools工具。
1、安装rac01,并设置2块主机名、网卡等相关信息;
以root用户修改主机1名为:ouzy01
#vi /etc/sysconfig/network
在这里插入图片描述
2、修改网卡名称:70-persistent-net.rules
路径:
#cd /etc/udev/rules.d/
#ls
#vi 70-persistent-net.rules
在这里插入图片描述
3、修改网卡ip地址:ifcfg-eth0、ifcfg-eth1
#cd /etc/sysconfig/network-scripts/
#ls
#vi ifcfg-eth0

DEVICE=eth0
TYPE=Ethernet
ONBOOT=yes
NM_CONTROLLED=no
BOOTPROTO=static
IPADDR=192.168.230.101
NETMASK=255.255.255.0
GATEWAY=192.168.230.254

在这里插入图片描述
#vi ifcfg-eth1

DEVICE=eth1
TYPE=Ethernet
ONBOOT=yes
NM_CONTROLLED=no
BOOTPROTO=static
IPADDR=10.10.10.11
NETMASK=255.255.255.0

在这里插入图片描述
说明:
①配置网卡1的ip:ifcfg-eth0 用于对外提供服务的IP,属称public ip;
②配置网卡2的ip:ifcfg-eth1 用于两个节点之间同步的IP,属称private ip 。

4、关闭防火墙
#vi /etc/selinux/config
在这里插入图片描述
闭防火墙和selinux
Redhat使用了SELinux来增强安全,关闭的办法为:

  1. 永久有效
    修改 /etc/selinux/config 文件中的 SELINUX="" 为 disabled ,然后重启。
  2. 即时生效
    setenforce 0
    关闭防火墙的方法为:
  3. 永久性生效
    开启:chkconfig iptables on
    关闭:chkconfig iptables off
  4. 即时生效,重启后失效
    开启:service iptables start
    关闭:service iptables stop

让rac01最后效果:
在这里插入图片描述

2️⃣使用虚拟机克隆产生另一台虚拟机。
参照1️⃣需要修改主机名、网卡名称、IP。
rac02最后效果:
在这里插入图片描述
PS:通过2节点之间相互ping另一节点IP测试是否可正常通讯。

三、添加共享存储

方式1. Openfiler是一款非常好的存储管理操作系统,开源免费,通过web界面对存储磁盘的管理(通过配置光圈)
方式2. 配置虚拟机参数
以方式2创建共享存储(需关闭虚拟机)

1、rac01创建共享存储

①添加虚拟机硬盘
在这里插入图片描述
②选择推荐的SCSI(S)磁盘类型
在这里插入图片描述
③选择创建新虚拟磁盘
在这里插入图片描述
④设置磁盘容量
ps:建议虚拟机磁盘大小10G,勾选立即分配所有磁盘空间(可以提供性能)
在这里插入图片描述
⑤设置新硬盘:高级
虚拟设备节点选择SCSI1:0,模式选择独立,永久。
在这里插入图片描述
⑥确定以后即可查看虚拟机目录下的rac01.vmx文件中,已存在SCSI1:0
在这里插入图片描述
⑦重点:

  1. 查看scsi1:0.mode = “independent-persistent”(设置为独立模式)
  2. 在rac01.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、rac02选择rac01已创建好的共享存储

①以rac01的方式,编辑rac02,添加硬盘,选择“使用现有虚拟磁盘”
在这里插入图片描述
在这里插入图片描述
②编辑新硬盘高级属性
同样选择rac01设置的虚拟设备节点SCI 1:0,模式选择独立
在这里插入图片描述
两个节点磁盘设置完成后,启动两台虚拟机验证,在rac01、rac02上查看磁盘情况
用root用户执行 fdisk -l 得到一至结果说明正确
#fdisk -l
要求rac01与rac02和磁盘路径相同
在这里插入图片描述

3、设置虚拟机支持UUID

设置虚拟机支持 UUID (关键设置,然后再重启)
在两台虚拟机的 vmx 文件最后添加
disk.EnableUUID = “TRUE”

四、配置系统参数

首先在两个节点.vmx文件中,检查UUID与scsi1:0.mode
disk.EnableUUID = “TRUE”
scsi1:0.mode = “independent-persistent”

1、配置/etc/hosts:

ora01 和 ora02 hosts内容一样,如下:
#vi /etc/hosts

# Public
192.168.230.101 ouzy01
192.168.230.102 ouzy02
# Virtual
192.168.230.103 ouzy01-vip
192.168.230.104 ouzy02-vip
# Private
10.10.10.11 ouzy01-priv
10.10.10.12 ouzy02-priv
# Scan-ip
192.168.230.100 rac-scan

在这里插入图片描述

2、创建用户和组 (在2个节点上均需要创建)

①以root用户,创建用户和组(grid、oracle)

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

②创建用户密码(grid/123456、oracle/123456)
#passwd grid
#passwd oracle
在这里插入图片描述
③使用 #id grid、#id oracle查看用户和组信息:
要求节点1和节点2的用户id和组id必须一致
#id grid
#id oracle
在这里插入图片描述
在这里插入图片描述

3、以root用户在2个节点上,创建目录

创建执行语句如下:

mkdir -p /u01/app/grid
mkdir -p /u01/app/11.2.0.4/grid
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

说明:

  • 6
    点赞
  • 42
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
RAC是一个完整的集群应用环境,它不仅实现了集群的功能,而且提供了运行在集群之上的应用程序,即Oracle数据库。无论与普通的集群相比,还是与普通的oracle数据库相比,RAC都有一些独特之处。 RAC由至少两个节点组成,节点之间通过公共网络和私有网络连接,其中私有网络的功能是实现节点之间的通信,而公共网络的功能是提供用户的访问。在每个节点上分别运行一个Oracle数据库实例和一个监听器,分别监听一个IP地址上的用户请求,这个地址称为VIP(Virtual IP)。用户可以向任何一个VIP所在的数据库服务器发出请求,通过任何一个数据库实例访问数据库。Clusterware负责监视每个节点的状态,如果发现某个节点出现故障,便把这个节点上的数据库实例和它所对应的VIP以及其他资源切换到另外一个节点上,这样可以保证用户仍然可通过这个VIP访问数据库。 在普通的Oracle数据库中,一个数据库实例只能访问一个数据库,而一个数据库只能被一个数据库实例打开。在RAC环境中,多个数据库实例同时访问同一个数据库,每个数据库实例分别在不同的节点上运行,而数据库存放在共享的存储设备上。 通过RAC,不仅可以实现数据库的并发访问,而且可以实现用户访问的负载均衡。用户可以通过任何一个数据库实例访问数据库,实例之间通过内部通信来保证事务的一致性。例如,当用户在一个实例修改数据时,需要对数据加锁。当另一个用户在其他实例中修改同样的数据时,便需要等待锁的释放。当前一个用户提交事务时,后一个用户立即可以得到修改之后的数据。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值