技术分享
Redhat7.6 Oracle 19C RAC部署手册
2022-03-29
目 录
1 环境介绍
1.1 网络环境介绍
1.2 系统环境介绍
1.3 安装包
2 基础环境配置
2.1 网络配置
2.2 主机名配置
2.3 域名解析配置
2.4 安装数据库依赖包
2.5 内核参数调整
2.6 关闭selinux、防火墙服务、NUMA
2.7创建用户组
2.8 创建安装目录
2.9 软件资源限制
2.10 修改profile
2.11 修改csh.login
2.12 配置oracle、grid用户环境变量
2.13 配置ASM共享磁盘
2.14 配置swap分区
3 数据库软件安装
3.1 grid安装
3.2 DB软件安装
3.3 创建ASM磁盘
3.4 建库
4 备份前配置
4.1 开启共享归档
4.2 静态监听配置
5 附件
1 环境介绍
数据库主机系统、图形化工具安装参考《oracle RAC部署环境准备手册-1系统与工具安装》
1.1 网络环境介绍
Oracle RAC每个节点需要占用四个IP
PUBLIC IP:主机对外的通信IP
PRIVATE IP:RAC节点之间的通信IP
VIP:节点的虚拟IP,可以飘移
SCAN IP:RAC的集群服务IP,调节集群服务的IP
PUBLIC IP | PRIVATE IP | VIP | SCAN IP | |
rac1 | 192.168.98.12 | 10.10.98.12 | 192.168.98.139 | 192.168.98.141 |
rac2 | 192.168.98.13 | 10.10.98.13 | 192.168.98.140 |
PUBLIC IP、VIP、SCAN IP同段,PRICATE IP与其他三个IP不同段
节点共用SCAN IP
1.2 系统环境介绍
Oracle 19C操作系统兼容性如图:
本次采用Redhat7.6示环境
1.3 安装包
在ftp相应路径获取,db_home是数据库软件包、grid_home是集群管理软件包
2 基础环境配置
RAC基础环境配置需要在两个节点配置,此处以RAC1示例
2.1 网络配置
两个节点均需按预配置的IP设置PUBLIC IP和PRIVATE IP
vi /etc/sysconfig/network-script/ifcfg-ens224
IPADDR=192.168.98.12
GATEWAY=192.168.64.1
NETMASK=255.255.192.0
DNS1=61.139.2.69 #(可不配置)
vi /etc/sysconfig/network-script/ifcfg-ens256
IPADDR=10.10.98.12
NETMASK=255.255.255.0
2.2 主机名配置
vi ./etc/hostname
输入主机名,节点一为,rac1,节点二为,rac2
2.3 域名解析配置
vi /etc/hosts
192.168.98.12 rac1
192.168.98.13 rac2
#PRIVATE
10.10.10.12 rac1-priv
10.10.10.13 rac2-priv
#VIP
192.168.98.139 rac1-vip
192.168.98.140 rac2-vip
192.168.98.141 rac-scan
配置完成后,可以检查一下两个节点hosts文件是否一致,可能会有隐藏符号
cat /etc/hosts 可以看到隐藏符号
注意:一定保证两个节点的hosts文件一致,不然后续grid安装会报错
2.4 安装数据库依赖包
参考《 oracle RAC部署环境准备手册-2 yum源配置》文档配置
配置本地源:
vi /etc/yum.repos.d/rhel-source.repo
[rhel-yum]
name=xxx
baseurl=file:///mnt
enable=1
gpgcheck=0
yum install -y bc binutils compat-libcap1 compat-libstdc++33 elfutils-libelf elfutils-libelf-devel fontconfig-devel glibc glibc-devel ksh libaio libaio-devel libX11 libXau libXi libXtst libXrender libXrender-devel libgcc libstdc++ libstdc++-devel libxcb make smartmontools sysstat kmod*
若使用本地镜像作为yum源,需单独安装compat-libstdc++-33安装包。安装包在附件中。
2.5 内核参数调整
vi /etc/sysctl.conf
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.file-max = 6815744
fs.aio-max-nr = 1048576
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 = 104857
vm.swappiness = 0
sysctl –p 使参数生效
2.6 关闭selinux、防火墙服务、NUMA
systemctl stop firewalld #关闭防火墙
systemctl disable firewalld.service #禁止防火墙自启
setenforce 0 #临时关闭selinux
sed -i 's/enforcing/disabled/g' /etc/selinux/config #关闭selinux
判断系统是否开启了numa 功能
grep -i numa /var/log/dmesg
如果出现了: "No NUMA configuration found" ,则证明是关闭了numa 功能,如果是其他内容,则为开启了numa
vi /etc/default/grub
在 GRUB_CMDLINE_LINUX 参数的末尾增加 : numa=off
GRUB_CMDLINE_LINUX="crashkernel=auto rd.lvm.lv=vg_root/root rd.lvm.lv=vg_root/swap rhgb quiet numa=off"
重建grub 配置文件
MBR 分区表
grub2-mkconfig -o /etc/grub2.cfg
efi 引导模式, efi + GPT分区表
grub2-mkconfig -o /etc/grub2-efi.cfg
重启机器,再来检查numa 是否被关闭即可
NUMA
2.7 创建用户组
groupadd -g 1006 oinstall
groupadd -g 1001 dba
groupadd -g 1002 oper
groupadd -g 1004 asmdba
groupadd -g 1005 asmoper
groupadd -g 1003 asmadmin
useradd -u 1002 -g oinstall -G dba,asmdba,asmadmin,oper oracle
useradd -u 1001 -g oinstall -G asmadmin,asmdba,asmoper,dba grid
echo yunqi123456 | passwd --stdin oracle
echo yunqi123456 | passwd --stdin grid
2.8 创建安装目录
mkdir -p /oracle/app/grid
chown -R grid:oinstall /oracle/app/grid
chmod -R 775 /oracle/app/grid
mkdir -p /oracle/app/19/grid
chown -R grid:oinstall /oracle/app/19/grid
chmod -R 775 /oracle/app/19/grid
mkdir -p /oracle/app/oracle
chown -R oracle:oinstall /oracle/app/oracle
chmod -R 775 /oracle/app/oracle
mkdir -p /oracle/app/oracle/product/19/db_1
chown -R oracle:oinstall /oracle/app/oracle/product/19/db_1
chmod -R 775 /oracle/app/oracle/product/19/db_1
mkdir -p /oracle/app/oraInventory
chown -R grid:oinstall /oracle/app/oraInventory
chmod -R 775 /oracle/app/oraInventory
2.9 软件资源限制
vi /etc/security/limits.conf
oracle soft nproc 16384
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft stack 10240
oracle hard stack 32768
grid soft nproc 16384
grid hard nproc 16384
grid soft nofile 1024
grid hard nofile 65536
grid soft stack 10240
grid hard stack 32768
2.10 修改profile
vi /etc/profile
if [ \$USER = "oracle" ] || [ \$USER = "grid" ]; then
if [ \$SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
umask 022
fi
2.11 修改csh.login
vi /etc/csh.login
if ( \$USER = "oracle" || \$USER = "grid" ) then
limit maxproc 16384
limit descriptors 65536
endif
2.12 配置oracle、grid用户环境变量
修改grid用户环境变量
su - grid
vi .bash_profile
export ORACLE_BASE=/oracle/app/grid
export ORACLE_SID=+ASM1 ---节点2 为+ASM2
export ORACLE_HOME=/oracle/app/19/grid
export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/OPatch:$PATH
NAME=`hostname`
PS1="[$NAME:$LOGNAME]:\${PWD}>"
umask 022
红框的需要注释掉
source ~/.bash_profile
env |grep ORACLE
修改oracle环境变量
su - oracle
vi .bash_profile
export ORACLE_BASE=/oracle/app/oracle
export ORACLE_SID=orcl1 ---节点2 为orcl2
export ORACLE_HOME=$ORACLE_BASE/product/19.3.0.0/db_1
export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/OPatch:$PATH
NAME=`hostname`
PS1="[$NAME:$LOGNAME]:\${PWD}>"
umask 022
红框的需要注释掉
source ~/.bash_profile
env |grep ORACLE
2.13 配置ASM共享磁盘
参考《 oracle RAC部署环境准备手册-2 ASM磁盘组建》文档
2.14 配置swap分区
注:安装软件如果预检查报错swap分区过小,可以用此种方法增加swap分区,安装前先配置增加一倍swap分区
创建swap分区
dd if=/dev/zero of=/oracle/swap1 bs=1M count=2048
创建一个swap类型文件,
mkswap /oracle/swap1
将swpf1生成swap文件
swapon /oracle/swap1
查看一下,swap1起作用了
free -m
实现开机后自动使用新添的swap1分区
vi /etc/fstab
添加swap行
/oracle/swap1 swap swap defaults 0 0
修改tmpfs行
tmpfs /dev/shm tmpfs defaults,size=2G 0 0
tmpfs重置一下,使其当下有效
mount -o remount /dev/shm
3 数据库软件安装
3.1 grid安装
运行Xmanager中的Broadcast
记下图形化工具的窗口号
su - grid 进入grid用户下安装
cd /oracle/app/19.3.0.0/grid
export DISPLAY=192.168.128.43:0.0 (图形化工具安装主机IP)
./gridSetup.sh
此处需要说明的是:
1)elfutils-libelf-devel-0.97和pdksh在RedHat 6里无需安装,可忽略;
2)resolv.conf为DNS解析的配置,可忽略;
3)Network Time Protocol(NTP)这一项,我们使用CTSSD,不配置NTP,可忽略;
4) ASM检查失败也可忽略。
除上述可忽略的几项外,如果还有其他的未满足项,则需要具体问题具体分析,待解决后再安装GRID。
因此可以选择“Ignore All”,然后单击“Next”按钮执行下一步:
开始安装
使用root用户依次执行列出的脚本,rac1执行1脚本,rac2执行1脚本,rac1执行2脚本….,不能rac1未执行完全,rac2开始执行。
3.2 DB软件安装
在oracle用户下安装DB软件
cd $ORACLE_HOME
export DISPLAY=192.168.93.51:1.0
./runInstaller
选择set up software only
选择oracle real application cluster database installation
选择select all 并测试ssh是否连接成功
选择“Enterprise Edition(4.7GB)”
确认无误后下一步
默认
默认不自动运行安装脚本
安装验证
出现一下界面
此处需要说明的是:
1)net-tools可以不安装,可忽略,也可以执行安装依赖包命令安装后,再检查一次;
2)resolv.conf为DNS解析的配置,可忽略;
3)Single Client Access Name(SCAN)这一项,为没有配置DNS所致,可忽略;
除上述可忽略的几项外,如果还有其他的未满足项,则需要具体问题具体分析,待解决后再安装数据库软件。
因此可以选择“Ignore All”,然后单击“Next”按钮执行下一步:
点install进入安装界面
接着出现一下界面
以root用户登陆系统,执行上面的脚本,顺序如下
3.3 创建ASM磁盘
以grid用户登录节点1执行ASMCA创建DATADG和ARCHDG
使用xmanager-passive
export DISPLAY=192.168.93.51:00
进入界面后点creat
创建DATADG
创建ARCHDG
可以看到已经全部挂载,如果没有的话选择mount all
3.4 建库
以oracle用户登录节点1执行DBCA建库
注意要修改相关设置,如字符集、归档模式、redo log大小、multiplex redo log设置等
执行dbca后出现如下安装界面:
选择创建一个数据库
勾上enable archiving,安装好数据库以后就已经是开启归档的状态,不用再去开归档模式
4 备份前配置
4.1 开启共享归档
①查询是否开启归档
SQL> archive log list;
②创建共享目录
[grid@rac1 ~]$ export ORACLE_SID=+ASM1
[grid@rac1 ~]$ asmcmd
ASMCMD > ls
DATADG/
ARCHDG/
SYSDG/
ASMCMD > cd DATADG/
ASMCMD > ls
Orcl/
ASMCMD > mkdir arch
ASMCMD > cd arch
ASMCMD > pwd
+DATADG/arch
ASMCMD > exit
③将rac设置成单实例模式
SQL > show parameter cluster_database
SQL > alter system set cluster_database=false scope=spfile sid='*'; (两个节点都要执行命令)
④开启归档
分别关闭两个节点实例
shutdown immediate
将节点1启动至mount状态,开启归档,设置归档路径,格式,并打开数据库还原rac模式
SQL> startup mount
SQL> show parameter cluster_database 查看之前设置是否生效
SQL> alter database archivelog; 开启归档
SQL> alter system set log_archive_format='test_%t_%s_%r.log' scope=spfile; 设置归档格式
SQL> alter system set log_archive_start=true scope=spfile;
SQL> alter system set log_archive_dest_1='location=+DATADG/arch' scope=spfile;
SQL> alter database open;
SQL> alter system set cluster_database=true scope=spfile sid='*';
SQL> shutdown immediate;
归档格式说明:
%t 重做线程号
%s 日志序列号
%r resetlogs的id号
⑤打开所有节点数据库
[oracle@rac1 ~]$ srvctl start database -d orcl
使用集群服务打开所有节点数据库
查看是否生效
SQL> archive log list;
切换归档,查看归档是否正常工作
alter system switch logfile; 或者alter system archive log current;
4.2 静态监听配置
参考11g静态监听配置方式
vi /oracle/app/11.2.0.4/grid/network/admin/listener.ora
5 附件
关注云祺,获取更多精彩信息。
- 标签:
-
技术分享