在CentOS7.6下搭建Oracle19c RAC集群
(所有步骤,标黄并注明仅在oracle01节点执行的,oracle02不用执行,其他步骤2个节点都要执行;图形化安装仅在oracle01节点执行)
1.准备阶段
1.1 虚拟环境准备
Oracle RAC集群至少需要2台服务器,hostname设置为oracle01和oracle02。
步骤1:创建oracle01节点,本次的配置CPU(15)、内存(16GB)、硬盘(300GB)、虚拟网卡(2张)。


步骤1.1:本次安装操作系统版本选择的是:CentOS-7-x86_64-DVD-1804.iso;
时区选择上海;
软件选择:“Server with GUI”(因为后面会用到界面安装,所以直接选择了带GUI的服务器);
hostname配置为oracle01;
操作系统盘选择自己划分区(swap分区根据oracle节点数来确定,所以我直接选择了40GB作为swap分区,其他分区自定义,大于50GB肯定没问题)


步骤1.2:安装完操作系统并重启后,根据引导自行配置即可。
步骤2:创建oracle02节点(按照步骤1创建相同配置的虚拟服务器即可),为了避免虚拟机各种冲突,尽量不要克隆。
1.2 Oracle版本包准备
进入Oracle官网:https://www.oracle.com/downloads/,选择下载19C版本

在Linux x86-64,选择see all

下载LINUX.X64_193000_db_home.zip和LINUX.X64_193000_grid_home.zip即可

2.服务器配置阶段
2.1.配置IP
Oracle需要2个网段,先将每台服务器的2张虚拟网卡配置好Oracle所需的Public IP和Pirvate IP(网段自定义,确保同网段2台服务器能通信,公网我选择的192网段,私网选择的10网段)
2.2.停止不相关服务
步骤1:删除GUI Server创建的虚拟网卡
//不删除也不会影响,但也没有什么用。
ifconfig virbr0 down
brctl delbr virbr0
nmcli device delete virbr0-nic
systemctl mask libvirtd.service
systemctl disable libvirtd.service
步骤2:关闭防火墙
//防火墙会影响Oracle的通信,内网测试可以关闭
systemctl stop firewalld
systemctl disable firewalld
sed -i "s/SELINUX=enforcing/SELINUX=disabled/" /etc/selinux/config
setenforce 0
getenforce
步骤3:停止avahi-daemon服务
//我的机器没有无线设备,只作为文件服务器、下载服务器使用,所以应该关闭avahi-daemon
systemctl stop avahi-daemon.socket
systemctl stop avahi-daemon.service
systemctl disable avahi-daemon.socket
systemctl disable avahi-daemon.service
步骤4:停止时间同步服务
//停止其他时间同步,用Oracle自带的Ctss服务
rm -rf /var/run/chronyd.pid
rm -rf /etc/chrony.conf
rm -rf /etc/ntp.conf
systemctl stop ntpd.service
systemctl disable ntpd
systemctl stop chronyd.service
systemctl disable chronyd.service
2.3.配置服务器
步骤1:配置host
//将Oracle所需的2个公网ip,2个公网虚拟ip,2个私网ip,1个扫描ip和对应解析名新增到/etc/hosts文件中
cat >> /etc/hosts << EOF
#public ip
192.168.225.20 oracle01
192.168.225.21 oracle02
#vip
192.168.225.22 oracle01-vip
192.168.225.23 oracle02-vip
#private ip
10.0.100.20 oracle01-priv
10.0.100.21 oracle02-priv
#scan ip
192.168.225.24 oracle-scan
EOF
步骤2:挂载本地镜像源(如果没有则使用公网也可以,本地安装效率快)
//挂载本地iso到mnt
mount CentOS-7-x86_64-DVD-1804.iso -o loop /mnt
步骤2.1:配置yum
//修改yum配置
在/etc/yum.repos.d/CentOS-Base.repo和其他yum配置文件中,关闭所有的源,加上enabled=0
在vi /etc/yum.repos.d/CentOS-Media.repo中,改为:
[c7-media]
name=CentOS-$releasever - Media
baseurl=file:///mnt/
gpgcheck=0
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
步骤2.2:清理yum和cache文件
//清理yum和chache文件
yum clean all
rm -rf /var/cache/yum/
步骤2.3:重新生成yum cache
//生成yum的cache,成功会返回Metadata Cache Created。
yum makecache
步骤3:安装Oracle依赖包
//生成yum的cache,成功会返回Metadata Cache Created。
yum -y install bc gcc gcc-c++ binutils make gdb cmake glibc ksh elfutils-libelf elfutils-libelf-devel fontconfig-devel glibc-devel libaio libaio-devel libXrender libXrender-devel libX11 libXau sysstat libXi libXtst libgcc librdmacm-devel libstdc++ libstdc++-devel libxcb net-tools nfs-utils compat-libcap1 compat-libstdc++ smartmontools targetcli python python-configshell python-rtslib python-six unixODBC unixODBC-devel iscsi-initiator-utils device-mapper device-mapper-multipath unbound bind-utils
步骤3.1:
//步骤3中,会有1个包安装失败,No package compat-libstdc++ available,需要单独下载,并手动安装
rpm -ivh compat-libstdc++-33-3.2.3-72.el7.x86_64.rpm
步骤4:创建用户组和oracle、grid用户
//用户组和用户的编号可以自定义,确保全流程配置一致即可,用户名为Oracle默认用户,建议不要改
groupadd -g 11001 oinstall
groupadd -g 11002 dba
groupadd -g 11003 oper
groupadd -g 11004 backupdba
groupadd -g 11005 dgdba
groupadd -g 11006 kmdba
groupadd -g 11007 asmdba
groupadd -g 11008 asmoper
groupadd -g 11009 asmadmin
groupadd -g 11010 racdba
useradd -u 11011 -g oinstall -G dba,asmdba,backupdba,dgdba,kmdba,racdba,oper oracle
useradd -u 11012 -g oinstall -G asmadmin,asmdba,asmoper,dba grid
//创建完成后,修改grid和oracle用户密码,
passwd grid
passwd oracle
步骤5:创建安装目录
//安装目录可以自定义名字,确保后后面的环境变量一致即可。
mkdir -p /u01/app/19.0.0/grid
mkdir -p /u01/app/grid
mkdir -p /u01/app/oracle
mkdir -p /u01/app/oracle/product/19.0.0/db_1
mkdir -p /u01/app/oraInventory
步骤6:上传Oracel grid和db包(仅oracle01节点执行)
//上传并解压grid安装包到/u01/app/19.0.0/grid
cd /u01/app/19.0.0/grid
unzip LINUX.X64_193000_grid_home.zip
//上传并解压db安装包到/u01/app/oracle/product/19.0.0/db_1
cd /u01/app/oracle/product/19.0.0/db_1
unzip LINUX.X64_193000_db_home.zip
步骤7:修改目录所属用户和权限
chown -R grid:oinstall /u01/app/grid
chown -R grid:oinstall /u01/app/19.0.0/grid
chown -R oracle:oinstall /u01/app/oracle
chown -R grid:oinstall /u01/app/oraInventory
chmod -R 775 /u01/
步骤8:安装依赖包
//oracle01节点安装依赖包
cd /u01/app/19.0.0/grid/cv/rpm
rpm -ivh cvuqdisk-1.0.10-1.rpm
//拷贝安装包到oracle002节点,然后安装
scp cvuqdisk-1.0.10-1.rpm oracle02:~/
rpm -ivh cvuqdisk-1.0.10-1.rpm
2.4.配置系统参数
步骤1:修改系统限制
//修改系统限制
vi /etc/security/limits.d/20-nproc

本文详细介绍了在CentOS7.6环境中搭建Oracle19cRAC集群的全过程,包括虚拟环境及Oracle版本包准备、服务器配置、系统参数调整、ASM共享磁盘配置、用户互信设置、grid与database的图形界面安装,以及自定义数据库创建与集群卸载流程。
最低0.47元/天 解锁文章
2215





