使用 VMware 16 RHEL7.7 虚拟机静默安装 Oracle 19c RAC

作者 | JiekeXu

来源 | JiekeXu DBA之路(ID: JiekeXu_IT)

大家好,我是 JiekeXu,很高兴又和大家见面了,今天和大家一起来看看 使用 VMware 16  RHEL7.7 虚拟机静默安装 Oracle 19c RAC ,欢迎点击上方蓝字关注我,标星或置顶,更多干货第一时间到达!


虚拟机安装以及一些基础配置,前面一篇文章已经写过了,这里不在重复,但有些关键步骤这里再次提一下即可。不管安装 11g、12c、19c、21c RAC,只要仔细认真对待,便可以安装成功。推荐先看前段时间的这篇《一步步安装 Oracle 19c RAC 》。



Linux 64 位 19.12 RU :https://www.modb.pro/download/137693Linux 64 位 RAC 安装包:https://www.modb.pro/download/5713

1.新建用户,组,目录 并修改 sshd_config  快速登录

1.1 新建用户和组















groupadd -g 54321 oinstallgroupadd -g 54322 dbagroupadd -g 54323 opergroupadd -g 54324 backupdbagroupadd -g 54325 dgdbagroupadd -g 54326 kmdbagroupadd -g 54327 asmdbagroupadd -g 54328 asmopergroupadd -g 54329 asmadmingroupadd -g 54330 racdbauseradd -g oinstall -G dba,oper,backupdba,dgdba,kmdba,asmdba,racdba -u 10000 oracleuseradd -g oinstall -G dba,asmdba,asmoper,asmadmin,racdba -u 10001 gridecho "Oracle_19C" | passwd --stdin oracleecho "Oracle_19C" | passwd --stdin grid

1.2 创建目录










mkdir -p /u01/app/19.0.0/gridmkdir -p /u01/app/gridmkdir -p /u01/app/oracle/product/19.0.0/dbhome_1mkdir -p /home/softchown -R grid:oinstall /u01chown -R oracle:oinstall /u01/app/oraclechmod -R 775 /u01chmod -R 775 /home/softchown -R oracle:oinstall /home/soft

1.3 环境变量























cat >> /home/oracle/.bash_profile << "EOF"################ add ORACLE_PATH #########################export PS1="`whoami`@`hostname`:"'[$PWD]$'export HOST=`hostname | cut -f1 -d"."`export PS1='${HOST}:$PWD(${ORACLE_SID})$ 'export LANG=en_USumask 022export TMP=/tmpexport TMPDIR=$TMPexport ORACLE_BASE=/u01/app/oracleexport ORACLE_HOME=$ORACLE_BASE/product/19.0.0/dbhome_1export ORACLE_HOSTNAME=jiekexu-r1export TNS_ADMIN=$ORACLE_HOME/network/adminexport LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/libexport ORACLE_SID=JiekeXu1export PATH=/usr/sbin:$PATHexport PATH=$ORACLE_HOME/bin:$ORACLE_HOME/OPatch:$PATHexport NLS_DATE_FORMAT="yyyy-mm-dd HH24:MI:SS"export NLS_LANG=AMERICAN_AMERICA.AL32UTF8export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/libalias sas='sqlplus / as sysdba'EOF




--配置LoginGraceTime参数为0, 将timeout wait设置为无限制cp /etc/ssh/sshd_config /etc/ssh/sshd_config_`date +"%Y%m%d_%H%M%S"` && sed -i '/#LoginGraceTime 2m/ s/#LoginGraceTime 2m/LoginGraceTime 0/' /etc/ssh/sshd_config && grep LoginGraceTime /etc/ssh/sshd_config--加快SSH登陆速度,禁用DNScp /etc/ssh/sshd_config /etc/ssh/sshd_config_`date +"%Y%m%d_%H%M%S"` && sed -i '/#UseDNS yes/ s/#UseDNS yes/UseDNS no/' /etc/ssh/sshd_config && grep UseDNS /etc/ssh/sshd_config

2.修改 hosts 文件并配置网卡

2.1 hosts 配置













cp /etc/hosts /etc/hosts_`date +"%Y%m%d_%H%M%S"`echo '#public ip192.168.75.128 jiekexu-r1192.168.75.129 jiekexu-r2#private ip10.10.10.128 jiekexu-r1-priv10.10.10.129 jiekexu-r2-priv#vip192.168.75.130 jiekexu-r1-vip192.168.75.131 jiekexu-r2-vip#scanip192.168.75.132 jiekexu-racscan'>> /etc/hosts

2.2 public IP 和 private 私网配置









































[root@jiekexu-r1 network-scripts]# more ifcfg-ens32TYPE="Ethernet"PROXY_METHOD="none"BROWSER_ONLY="no"BOOTPROTO="dhcp"DEFROUTE="yes"IPV4_FAILURE_FATAL="yes"IPV6INIT="yes"IPV6_AUTOCONF="yes"IPV6_DEFROUTE="yes"IPV6_FAILURE_FATAL="no"IPV6_ADDR_GEN_MODE="stable-privacy"NAME="ens32"UUID="e8332396-7724-410f-9887-1fc0e27fc818"DEVICE="ens32"ONBOOT="yes"GATEWAY="192.168.75.2"IPADDR="192.168.75.128"PREFIX="24"IPV6_PRIVACY="no"[root@jiekexu-r1 network-scripts]# more ifcfg-ens33TYPE=EthernetPROXY_METHOD=noneBROWSER_ONLY=noBOOTPROTO=staticDEFROUTE=yesIPV4_FAILURE_FATAL=noIPV6INIT=yesIPV6_AUTOCONF=yesIPV6_DEFROUTE=yesIPV6_FAILURE_FATAL=noIPV6_ADDR_GEN_MODE=stable-privacyNAME=ens33DEVICE=ens33HWADDR="00:0C:29:2C:79:D8"uuid="c96bc909-188e-ec64-3a96-6a90982b08ad"ONBOOT=yesGATEWAY="10.10.10.1"IPADDR="10.10.10.128"PREFIX="24"

3.共享存储配置

3.1 命令行新建存储文件

这里暂且规划 3 块 3G OCR 盘,两块 10G DATA 数据盘,一块 10G  ARCH 归档盘。







vmware-vdiskmanager.exe -c -s 3GB -a lsilogic -t 2 "D:\VMware_File\Sharedisk19C\share-ocr01.vmdk" vmware-vdiskmanager.exe -c -s 3GB -a lsilogic -t 2 "D:\VMware_File\Sharedisk19C\share-ocr02.vmdk" vmware-vdiskmanager.exe -c -s 3GB -a lsilogic -t 2 "D:\VMware_File\Sharedisk19C\share-ocr03.vmdk" vmware-vdiskmanager.exe -c -s 10GB -a lsilogic -t 2 "D:\VMware_File\Sharedisk19C\share-data01.vmdk"vmware-vdiskmanager.exe -c -s 10GB -a lsilogic -t 2 "D:\VMware_File\Sharedisk19C\share-data02.vmdk"vmware-vdiskmanager.exe -c -s 10GB -a lsilogic -t 2 "D:\VMware_File\Sharedisk19C\share-arch01.vmdk"

以管理员运行 cmd 命令行进入到 VM ware 安装目录下执行以上命令


C:\WINDOWS\system32>cd C:\Program Files (x86)\VMware\VMware Workstation

3.2关闭两台虚拟机,编辑两台主机的相关 vmx 配置文件

分别将以下配置添加至两台主机的 vmx 配置文件

#shared disks configure
diskLib.dataCacheMaxSize=0        
diskLib.dataCacheMaxReadAheadSize=0
diskLib.dataCacheMinReadAheadSize=0
diskLib.dataCachePageSize=4096    
diskLib.maxUnsyncedWrites = "0"

disk.locking = "FALSE"
scsi1.sharedBus = "virtual"
scsi1.present = "TRUE"
scsi1.virtualDev = "lsilogic"

scsi1:0.mode = "independent-persistent"
scsi1:0.deviceType = "disk"
scsi1:0.present = "TRUE"
scsi1:0.fileName = "D:\VMware_File\Sharedisk19C\share-ocr01.vmdk"  
scsi1:0.redo = ""

scsi1:1.mode = "independent-persistent"
scsi1:1.deviceType = "disk"
scsi1:1.present = "TRUE"
scsi1:1.fileName = "D:\VMware_File\Sharedisk19C\share-ocr02.vmdk"
scsi1:1.redo = ""

scsi1:2.mode = "independent-persistent"
scsi1:2.deviceType = "disk"
scsi1:2.present = "TRUE"
scsi1:2.fileName = "D:\VMware_File\Sharedisk19C\share-ocr03.vmdk"
scsi1:2.redo = ""

scsi1:3.mode = "independent-persistent"
scsi1:3.deviceType = "disk"
scsi1:3.present = "TRUE"
scsi1:3.fileName = "D:\VMware_File\Sharedisk19C\share-data01.vmdk"
scsi1:3.redo = ""

scsi1:4.mode = "independent-persistent"
scsi1:4.deviceType = "disk"
scsi1:4.present = "TRUE"
scsi1:4.fileName = "D:\VMware_File\Sharedisk19C\share-data02.vmdk"
scsi1:4.redo = ""

scsi1:5.mode = "independent-persistent"
scsi1:5.deviceType = "disk"
scsi1:5.present = "TRUE"
scsi1:5.fileName = "D:\VMware_File\Sharedisk19C\share-arch01.vmdk"
scsi1:5.redo =file ""

fileName 指定虚拟机共享存储的位置及文件名。"D:\VMware_File\Sharedisk19C\share-arch01.vmdk"

3.3开启虚拟机

3.4 使用 multipath+udev 配置存储

参考前面的文章配置即可。

[root@jiekexu-r1 network-scripts]# lsblk
NAME                        MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda                           8:0    0   60G  0 disk
+-sda1                        8:1    0    1G  0 part /boot
+-sda2                        8:2    0   59G  0 part
 +-rhel_jiekexu--test-root 253:0    0 35.6G  0 lvm  /
 +-rhel_jiekexu--test-swap 253:1    0    6G  0 lvm  [SWAP]
 +-rhel_jiekexu--test-home 253:2    0 17.4G  0 lvm  /home
sdb                           8:16   0    3G  0 disk
sdc                           8:32   0    3G  0 disk
sdd                           8:48   0    3G  0 disk
sde                           8:64   0   10G  0 disk
sdf                           8:80   0   10G  0 disk
sdg                           8:96   0   10G  0 disk
sr0                          11:0    1  4.2G  0 rom

4.操作系统配置

4.1挂载光盘镜像配置 yum 源

mkdir /mnt/dvd

mount /dev/sr0 /mnt/dvd

[root@jiekexu-r1 network-scripts]# ls -lh /mnt/dvd
total 974K
dr-xr-xr-x 4 root root 2.0K Jul 23  2019 addons
dr-xr-xr-x 3 root root 2.0K Jul 23  2019 EFI
-r--r--r-- 1 root root 8.1K Jul 23  2019 EULA
-r--r--r-- 1 root root 1.5K Jul 23  2019 extra_files.json
-r--r--r-- 1 root root  18K Jul 23  2019 GPL
dr-xr-xr-x 3 root root 2.0K Jul 23  2019 images
dr-xr-xr-x 2 root root 2.0K Jul 23  2019 isolinux
dr-xr-xr-x 2 root root 2.0K Jul 23  2019 LiveOS
-r--r--r-- 1 root root  114 Jul 23  2019 media.repo
dr-xr-xr-x 2 root root 924K Jul 23  2019 Packages
dr-xr-xr-x 2 root root 2.0K Jul 23  2019 repodata
-r--r--r-- 1 root root 3.3K Jul  3  2019 RPM-GPG-KEY-redhat-beta
-r--r--r-- 1 root root 3.2K Jul  3  2019 RPM-GPG-KEY-redhat-release
-r--r--r-- 1 root root 1.8K Jul 23  2019 TRANS.TBL

/mnt/dvd/  则是配置 yum 仓库要用到的路径








cd /etc/yum.repos.d/cat  << EOF >> /etc/yum.repos.d/redhat.repo[rhel7]name=jiekexu repobaseurl=file:///mnt/dvd/gpgcheck=0EOFyum clean allyum list | grep zsh

4.2 配置多路径

##安装multipath

yum install -y device-mapper*

#生成配置文件

mpathconf --enable --with_multipathd y
















































































[root@jiekexu-r1 ~]# lsblkNAME                        MAJ:MIN RM  SIZE RO TYPE MOUNTPOINTsda                           8:0    0   60G  0 disk +-sda1                        8:1    0    1G  0 part /boot+-sda2                        8:2    0   59G  0 part   +-rhel_jiekexu--test-root 253:0    0 35.6G  0 lvm  /  +-rhel_jiekexu--test-swap 253:1    0    6G  0 lvm  [SWAP]  +-rhel_jiekexu--test-home 253:2    0 17.4G  0 lvm  /homesdb                           8:16   0    3G  0 disk sdc                           8:32   0    3G  0 disk sdd                           8:48   0    3G  0 disk sde                           8:64   0   10G  0 disk sdf                           8:80   0   10G  0 disk sdg                           8:96   0   10G  0 disk sr0                          11:0    1  4.2G  0 rom  /mnt/dvd
[root@jiekexu-r1 repodata]# /usr/lib/udev/scsi_id -g -u /dev/sdb36000c29714156f014c53bf30fbcc4162[root@jiekexu-r1 repodata]# /usr/lib/udev/scsi_id -g -u /dev/sdc36000c296835807593a81c0c4597f64d6[root@jiekexu-r1 repodata]# /usr/lib/udev/scsi_id -g -u /dev/sdd36000c29760b3f5110218e88d0fe6710c[root@jiekexu-r1 repodata]# /usr/lib/udev/scsi_id -g -u /dev/sde36000c29c671fc199d01bebc6e05e3270[root@jiekexu-r1 repodata]# /usr/lib/udev/scsi_id -g -u /dev/sdf36000c291ffdcc7e2ea852fe4a4e29fcc[root@jiekexu-r1 repodata]# /usr/lib/udev/scsi_id -g -u /dev/sdg36000c29ddf7a88a288da95203aa0a929
##配置multipath,wwid 的值为上面获取的 scsi_id(multipath -v3 也可以查看到),alias 可自定义,这里配置 3 块 OCR 盘,2块DATA盘,一块 ARCH 盘。cp /etc/multipath.conf /etc/multipath.conf.bak配置文件中有以下内容:defaults {        user_friendly_names yes        find_multipaths yes}
blacklist {}
如下需要在 blacklist 添加一行 devnode 信息,删除原有的 blacklistcat <> /etc/multipath.conf
blacklist {  devnode "^sda"}
multipaths {  multipath {  wwid "36000c29714156f014c53bf30fbcc4162"  alias asm_ocr01  }  multipath {  wwid "36000c296835807593a81c0c4597f64d6"  alias asm_ocr02  }  multipath {  wwid "36000c29760b3f5110218e88d0fe6710c"  alias asm_ocr03  }  multipath {  wwid "36000c29c671fc199d01bebc6e05e3270"  alias asm_data01  }    multipath {  wwid "36000c291ffdcc7e2ea852fe4a4e29fcc"  alias asm_data02  }  multipath {  wwid "36000c29ddf7a88a288da95203aa0a929"  alias asm_arch01  }}EOF
##激活multipath多路径:multipath -Fmultipath -v2multipath -ll

#查看状态

systemctl status multipathd.service

#创建多路径开机自启动服务

systemctl enable multipathd.service





















[root@jiekexu-r1 mapper]# multipath -v3 | grep 3600Aug 22 21:16:59 | sdb: uid = 36000c29714156f014c53bf30fbcc4162 (udev)Aug 22 21:16:59 | sdc: uid = 36000c296835807593a81c0c4597f64d6 (udev)Aug 22 21:16:59 | sdd: uid = 36000c29760b3f5110218e88d0fe6710c (udev)Aug 22 21:16:59 | sde: uid = 36000c29c671fc199d01bebc6e05e3270 (udev)Aug 22 21:16:59 | sdf: uid = 36000c291ffdcc7e2ea852fe4a4e29fcc (udev)Aug 22 21:16:59 | sdg: uid = 36000c29ddf7a88a288da95203aa0a929 (udev)36000c29714156f014c53bf30fbcc4162 33:0:0:0 sdb 8:16  1   undef undef  VMware, 36000c296835807593a81c0c4597f64d6 33:0:1:0 sdc 8:32  1   undef undef  VMware, 36000c29760b3f5110218e88d0fe6710c 33:0:2:0 sdd 8:48  1   undef undef  VMware, 36000c29c671fc199d01bebc6e05e3270 33:0:3:0 sde 8:64  1   undef undef  VMware, 36000c291ffdcc7e2ea852fe4a4e29fcc 33:0:4:0 sdf 8:80  1   undef undef  VMware, 36000c29ddf7a88a288da95203aa0a929 33:0:5:0 sdg 8:96  1   undef undef  VMware, [root@jiekexu-r1 repodata]# [root@jiekexu-r1 repodata]# mpathconfmultipath is enabledfind_multipaths is enableduser_friendly_names is enableddm_multipath module is loadedmultipathd is running



4.3 配置 UDEV






































































cd /dev/mapper
[root@jiekexu-r1 mapper]# lltotal 0lrwxrwxrwx 1 root root       7 Aug 22 21:15 asm_arch01 -> ../dm-8lrwxrwxrwx 1 root root       7 Aug 22 21:15 asm_data01 -> ../dm-6lrwxrwxrwx 1 root root       7 Aug 22 21:15 asm_data02 -> ../dm-7lrwxrwxrwx 1 root root       7 Aug 22 21:15 asm_ocr01 -> ../dm-3lrwxrwxrwx 1 root root       7 Aug 22 21:15 asm_ocr02 -> ../dm-4lrwxrwxrwx 1 root root       7 Aug 22 21:15 asm_ocr03 -> ../dm-5crw------- 1 root root 10, 236 Aug 22 19:44 controllrwxrwxrwx 1 root root       7 Aug 22 19:44 rhel_jiekexu--test-home -> ../dm-2lrwxrwxrwx 1 root root       7 Aug 22 19:44 rhel_jiekexu--test-root -> ../dm-0lrwxrwxrwx 1 root root       7 Aug 22 19:44 rhel_jiekexu--test-swap -> ../dm-1
for i in asm_*; do  printf "%s %s\n" "$i" "$(udevadm info --query=all --name=/dev/mapper/"$i" | grep -i dm_uuid)" >>/dev/mapper/udev_infodonewhile read -r line; do  dm_uuid=$(echo "$line" | awk -F'=' '{print $2}')  disk_name=$(echo "$line" | awk '{print $1}')  echo "KERNEL==\"dm-*\",ENV{DM_UUID}==\"${dm_uuid}\",SYMLINK+=\"${disk_name}\",OWNER=\"grid\",GROUP=\"asmadmin\",MODE=\"0660\"" >>/etc/udev/rules.d/99-oracle-asmdevices.rulesdone < /dev/mapper/udev_info##重载udevudevadm control --reload-rulesudevadm trigger --type=devicesll /dev/asm*
lrwxrwxrwx 1 root root 4 Aug 22 21:26 /dev/asm_arch01 -> dm-8lrwxrwxrwx 1 root root 4 Aug 22 21:26 /dev/asm_data01 -> dm-6lrwxrwxrwx 1 root root 4 Aug 22 21:26 /dev/asm_data02 -> dm-7lrwxrwxrwx 1 root root 4 Aug 22 21:26 /dev/asm_ocr01 -> dm-3lrwxrwxrwx 1 root root 4 Aug 22 21:26 /dev/asm_ocr02 -> dm-4lrwxrwxrwx 1 root root 4 Aug 22 21:26 /dev/asm_ocr03 -> dm-5
[root@jiekexu-r1 mapper]# more /etc/udev/rules.d/99-oracle-asmdevices.rulesKERNEL=="dm-*",ENV{DM_UUID}=="mpath-36000c29ddf7a88a288da95203aa0a929",SYMLINK+="asm_arch01",OWNER="grid",GROUP="asmadmin",MODE="0660"KERNEL=="dm-*",ENV{DM_UUID}=="mpath-36000c29c671fc199d01bebc6e05e3270",SYMLINK+="asm_data01",OWNER="grid",GROUP="asmadmin",MODE="0660"KERNEL=="dm-*",ENV{DM_UUID}=="mpath-36000c291ffdcc7e2ea852fe4a4e29fcc",SYMLINK+="asm_data02",OWNER="grid",GROUP="asmadmin",MODE="0660"KERNEL=="dm-*",ENV{DM_UUID}=="mpath-36000c29714156f014c53bf30fbcc4162",SYMLINK+="asm_ocr01",OWNER="grid",GROUP="asmadmin",MODE="0660"KERNEL=="dm-*",ENV{DM_UUID}=="mpath-36000c296835807593a81c0c4597f64d6",SYMLINK+="asm_ocr02",OWNER="grid",GROUP="asmadmin",MODE="0660"KERNEL=="dm-*",ENV{DM_UUID}=="mpath-36000c29760b3f5110218e88d0fe6710c",SYMLINK+="asm_ocr03",OWNER="grid",GROUP="asmadmin",MODE="0660"[root@jiekexu-r1 mapper]# 节点2
[root@jiekexu-r2 dev]# ll /dev/dm*brw-rw----. 1 root disk     253, 0 Aug 22 21:32 /dev/dm-0brw-rw----. 1 root disk     253, 1 Aug 22 21:32 /dev/dm-1brw-rw----. 1 root disk     253, 2 Aug 22 21:32 /dev/dm-2brw-rw----. 1 grid asmadmin 253, 3 Aug 22 21:32 /dev/dm-3brw-rw----. 1 grid asmadmin 253, 4 Aug 22 21:32 /dev/dm-4brw-rw----. 1 grid asmadmin 253, 5 Aug 22 21:32 /dev/dm-5brw-rw----. 1 grid asmadmin 253, 6 Aug 22 21:32 /dev/dm-6brw-rw----. 1 grid asmadmin 253, 7 Aug 22 21:32 /dev/dm-7brw-rw----. 1 grid asmadmin 253, 8 Aug 22 21:32 /dev/dm-8
[root@jiekexu-r2 mapper]# lltotal 4lrwxrwxrwx. 1 root root       7 Aug 22 21:32 asm_arch01 -> ../dm-8lrwxrwxrwx. 1 root root       7 Aug 22 21:32 asm_data01 -> ../dm-6lrwxrwxrwx. 1 root root       7 Aug 22 21:32 asm_data02 -> ../dm-7lrwxrwxrwx. 1 root root       7 Aug 22 21:32 asm_ocr01 -> ../dm-3lrwxrwxrwx. 1 root root       7 Aug 22 21:32 asm_ocr02 -> ../dm-4lrwxrwxrwx. 1 root root       7 Aug 22 21:32 asm_ocr03 -> ../dm-5crw-------. 1 root root 10, 236 Aug 22 21:32 controllrwxrwxrwx. 1 root root       7 Aug 22 21:32 rhel_jiekexu--r2-home -> ../dm-2lrwxrwxrwx. 1 root root       7 Aug 22 21:32 rhel_jiekexu--r2-root -> ../dm-0lrwxrwxrwx. 1 root root       7 Aug 22 21:32 rhel_jiekexu--r2-swap -> ../dm-1-rw-r--r--. 1 root root     369 Aug 22 21:28 udev_info

5、操作系统检查

操作系统检查,可参考之前的文章第四章 19cRAC安装准备工作





















































`[root@jiekexu-r1 ~]# cat /etc/redhat-release Red Hat Enterprise Linux Server release 7.7 (Maipo)`
[root@jiekexu-r2 ~]# cat /etc/redhat-releaseRed Hat Enterprise Linux Server release 7.7 (Maipo)
##内存
[root@jiekexu-r2 ~]# grep MemTotal /proc/meminfo | awk '{print $2}'8154996[root@jiekexu-r2 ~]# [root@jiekexu-r2 ~]# dmidecode|grep -A5 "Memory Device"|grep Size|grep -v No |grep -v Range        Size: 8192 MB
##swap
[root@jiekexu-r1 ~]# free -h              total        used        free      shared  buff/cache   availableMem:           7.6G        550M        6.6G         12M        519M        7.0GSwap:          6.0G          0B        6.0G[root@jiekexu-r1 ~]# grep SwapTotal /proc/meminfo | awk '{print $2}'6291452
[root@jiekexu-r2 ~]# free -h              total        used        free      shared  buff/cache   availableMem:           7.8G        627M        6.7G         12M        497M        6.9GSwap:          7.9G          0B        7.9G[root@jiekexu-r2 ~]# grep SwapTotal /proc/meminfo | awk '{print $2}'8257532
##时区 主机名
[root@jiekexu-r2 ~]# timedatectl status      Local time: Tue 2021-08-24 09:42:32 CST  Universal time: Tue 2021-08-24 01:42:32 UTC        RTC time: Tue 2021-08-24 01:42:32       Time zone: Asia/Shanghai (CST, +0800)     NTP enabled: noNTP synchronized: no RTC in local TZ: no      DST active: n/a[root@jiekexu-r2 ~]# hostnamectl status   Static hostname: jiekexu-r2         Icon name: computer-vm           Chassis: vm        Machine ID: 445856a0ecb7468cacc9e44b6c0b0130           Boot ID: a6fb4d7304c34687bdb8ab1986fc992d    Virtualization: vmware  Operating System: Red Hat Enterprise Linux Server 7.7 (Maipo)       CPE OS Name: cpe:/o:redhat:enterprise_linux:7.7:GA:server            Kernel: Linux 3.10.0-1062.el7.x86_64      Architecture: x86-64






































--安装所需的 rmp 包yum install -y bc*  ntp* binutils*  compat-libcap1*  compat-libstdc++*  dtrace-modules*  dtrace-modules-headers*  dtrace-modules-provider-headers*  dtrace-utils*  elfutils-libelf*  elfutils-libelf-devel* fontconfig-devel*  glibc*  glibc-devel*  ksh*  libaio*  libaio-devel*  libdtrace-ctf-devel*  libXrender*  libXrender-devel*  libX11*  libXau*  libXi*  libXtst*  libgcc*  librdmacm-devel*  libstdc++*  libstdc++-devel*  libxcb*  make*  net-tools*  nfs-utils*  python*  python-configshell*  python-rtslib*  python-six*  targetcli*  smartmontools*  sysstat* gcc* nscd* unixODBC* unzip readline tigervnc*---检查rpm -q --qf '%{NAME}-%{VERSION}-%{RELEASE} (%{ARCH})\n' \bc \binutils \compat-libcap1 \compat-libstdc++-33 \elfutils-libelf \elfutils-libelf-devel \fontconfig-devel \glibc \gcc \gcc-c++  \glibc \glibc-devel \ksh \libstdc++ \libstdc++-devel \libaio \libaio-devel \libXrender \libXrender-devel \libxcb \libX11 \libXau \libXi \libXtst \libgcc \libstdc++-devel \make \sysstat \unzip \readline \smartmontools | grep 'not installed' |column -t
--需单独安装此包rpm -ivh compat-libstdc++-33-3.2.3-72.el7.x86_64.rpm

核心参数设置

/etc/sysctl.d/97-oracle-database-sysctl.conf






















































































































--在 Linux 7之前,内核参数文件是修改 /etc/sysctl.conf 文件,--但在 Linux 7.x 之后发生了变化(/etc/sysctl.d/97-oracle-database-sysctl.conf):--但仍然可以修改这个文件,没有什么不一样,官方文档中 19c 使用 97-oracle-database-sysctl.conf。--生效方式:/sbin/sysctl --system
SHMMAX:单个共享内存段最大值(字节)SHMMIN:单个共享内存段最小值(字节)SHMMNI:系统共享内存段数量SHMALL:可用共享内存的总数量(字节或者页面),以字节为单位,与 SHMMAX 一样,以页为单位,大小为 seil(SHMMAX/PAGE_SIZE)。一般 Linux 的 page 页为 4096.SHMSEQ:每进程最大共享内存段数量
主要核心参数手工计算如下:
MEM=$(expr $(grep MemTotal /proc/meminfo|awk '{print $2}') \* 1024)SHMALL=$(expr $MEM / $(getconf PAGE_SIZE))SHMMAX=$(expr $MEM \* 3 / 5) # 这里配置为3/5 RAM大小echo $MEMecho $SHMALLecho $SHMMAX
--min_free_kbytes=$(expr sqrt($MEM \* 16))
min_free_kbytes = sqrt(lowmem_kbytes * 16) = 4 * sqrt(lowmem_kbytes)(注:lowmem_kbytes即可认为是系统内存大小)
vm.nr_hugepages =(内存M/3+ASM内存大小4096M)/Hugepagesize M#操作系统内存的1/3加上ASM实例内存4G。#x86平台 Hugepagesize =2048即2M,linuxone平台Hugepagesize=1024 即1M# 例x86平台64G内存 (64G*1024/3+4096M)/2M=12971例x86平台32G内存 (32G*1024/3+4096M)/2M=7509例x86平台16G内存 (16G*1024/3+4096M)/2M=4778#linuxone平台 64G内存 (64G*1024/3+4096M)/1M=25942
memTotal=$(grep MemTotal /proc/meminfo | awk '{print $2}')totalMemory=$((memTotal / 2048))shmall=$((memTotal / 4))if [ $shmall -lt 2097152 ]; thenshmall=2097152fishmmax=$((memTotal * 1024 - 1))if [ "$shmmax" -lt 4294967295 ]; thenshmmax=4294967295ficat <> /etc/sysctl.d/97-oracle-database-sysctl.conffs.aio-max-nr = 1048576fs.file-max = 6815744kernel.shmall = $shmallkernel.shmmax = $shmmaxkernel.shmmni = 4096kernel.sem = 250 32000 100 128net.ipv4.ip_local_port_range = 9000 65500net.core.rmem_default = 16777216net.core.rmem_max = 16777216net.core.wmem_max = 16777216net.core.wmem_default = 16777216fs.aio-max-nr = 6194304vm.min_free_kbytes=524288vm.dirty_ratio=20vm.dirty_background_ratio=3vm.dirty_writeback_centisecs=100vm.dirty_expire_centisecs=500vm.swappiness=10net.core.netdev_max_backlog = 30000net.core.netdev_budget = 600#vm.nr_hugepages =net.ipv4.conf.all.rp_filter = 2net.ipv4.conf.default.rp_filter = 2net.ipv4.ipfrag_time = 60net.ipv4.ipfrag_low_thresh=6291456net.ipv4.ipfrag_high_thresh = 8388608EOF

[root@jiekexu-r1 ~]# /sbin/sysctl --system* Applying /usr/lib/sysctl.d/00-system.conf ...* Applying /usr/lib/sysctl.d/10-default-yama-scope.conf ...kernel.yama.ptrace_scope = 0* Applying /usr/lib/sysctl.d/50-default.conf ...kernel.sysrq = 16kernel.core_uses_pid = 1net.ipv4.conf.default.rp_filter = 1net.ipv4.conf.all.rp_filter = 1net.ipv4.conf.default.accept_source_route = 0net.ipv4.conf.all.accept_source_route = 0net.ipv4.conf.default.promote_secondaries = 1net.ipv4.conf.all.promote_secondaries = 1fs.protected_hardlinks = 1fs.protected_symlinks = 1* Applying /usr/lib/sysctl.d/60-libvirtd.conf ...fs.aio-max-nr = 1048576* Applying /etc/sysctl.d/97-oracle-database-sysctl.conf ...fs.aio-max-nr = 1048576fs.file-max = 6815744kernel.shmall = 2097152kernel.shmmax = 8181903359kernel.shmmni = 4096kernel.sem = 250 32000 100 128net.ipv4.ip_local_port_range = 9000 65500net.core.rmem_default = 16777216net.core.rmem_max = 16777216net.core.wmem_max = 16777216net.core.wmem_default = 16777216fs.aio-max-nr = 6194304vm.min_free_kbytes = 524288vm.dirty_ratio = 20vm.dirty_background_ratio = 3vm.dirty_writeback_centisecs = 100vm.dirty_expire_centisecs = 500vm.swappiness = 10net.core.netdev_max_backlog = 30000net.core.netdev_budget = 600net.ipv4.conf.all.rp_filter = 2net.ipv4.conf.default.rp_filter = 2net.ipv4.ipfrag_time = 60net.ipv4.ipfrag_low_thresh = 6291456net.ipv4.ipfrag_high_thresh = 8388608* Applying /etc/sysctl.d/99-sysctl.conf ...* Applying /etc/sysctl.conf ...

6、静默安装 GI

6.1 安装操作系统包 cvuqdisk

如果没有 cvuqdisk,群集验证实用程序(CVU)将无法找到共享磁盘,并且在运行群集验证实用程序时将收到 “Package cvuqdisk not installed” 错误。对于您的硬件(例如,x86_64或i386),请使用 cvuqdisk RPM。





















[root@jiekexu-r1 ~]# cd /u01/app/19.0.0/grid/cv/rpm[root@jiekexu-r1 rpm]# lltotal 12-rw-r--r-- 1 grid oinstall 11412 Mar 13  2019 cvuqdisk-1.0.10-1.rpm[root@jiekexu-r1 rpm]# export CVUQDISK_GRP=oinstall[root@jiekexu-r1 rpm]# rpm -ivh cvuqdisk-1.0.10-1.rpm Preparing...                          ################################# [100%]Updating / installing...   1:cvuqdisk-1.0.10-1                ################################# [100%][root@jiekexu-r1 rpm]# scp /u01/app/19.0.0/grid/cv/rpm/cvuqdisk-1.0.10-1.rpm jiekexu-r2:/home/soft/The authenticity of host 'jiekexu-r2 (192.168.75.129)' can't be established.ECDSA key fingerprint is SHA256:FQQR4hFlkEWUNpTyB7nYfdCMPGN2PulHJW/P/I4n4f0.ECDSA key fingerprint is MD5:30:c3:28:3a:44:f2:5b:cf:cf:72:79:33:2e:cf:ee:81.Are you sure you want to continue connecting (yes/no)? yesWarning: Permanently added 'jiekexu-r2,192.168.75.129' (ECDSA) to the list of known hosts.root@jiekexu-r2's password: cvuqdisk-1.0.10-1.rpm                                                                                                                     100%   11KB   3.3MB/s   00:00    [root@jiekexu-r1 rpm]# systemctl stop avahi-daemon.socket
[root@jiekexu-r2 rpm]# systemctl stop avahi-daemon.socket

6.2 互信

分别使用grid和oracle用户调用sshUserSetup.sh脚本配置SSH connectivity,根据提示输入密码 Oracle_19C。
















$ cd $ORACLE_HOME/oui/prov/resources/scripts
$ ./sshUserSetup.sh -user grid -hosts "jiekexu-r1 jiekexu-r2" -advanced -confirm -noPromptPassphrase
cd /u01/app/19.0.0/grid/oui/prov/resources/scripts$ ./sshUserSetup.sh -user oracle -hosts "jiekexu-r1 jiekexu-r2" -advanced -confirm -noPromptPassphrase
分别使用grid和oracle用户验证SSH connectivity:$ for h in jiekexu-r1 jiekexu-r1-priv jiekexu-r2 jiekexu-r2-priv;dossh -l grid -o StrictHostKeyChecking=no $h date;done
$ for h in jiekexu-r1 jiekexu-r1-priv jiekexu-r2 jiekexu-r2-priv;dossh -l oracle -o StrictHostKeyChecking=no $h date;done

6.3 GI配置预检查

在配置GRID前,使用grid用户执行runcluvf.sh脚本检查环境,修复不满足安装需求的项。







su - grid/u01/app/19.0.0/grid/runcluvfy.sh stage -pre crsinst -n jiekexu-r1,jiekexu-r2 -fixup -verbose
$/u01/app/19.0.0/grid/runcluvfy.sh stage -pre crsinst -n jiekexu-r1,jiekexu-r2 -method rootEnter "ROOT" password:

6.3.1 增加Swap分区

1.创建交换分区的文件:增加2G大小的交换分区,则命令写法如下,其中的 count 等于想要的块大小。

#dd if=/dev/zero of=/home/swapfile bs=1M count=2048

2.设置交换分区文件:

# mkswap /home/swapfile #建立swap的文件系统

3.立即启用交换分区文件:

# swapon /home/swapfile  #启用swap文件

4.使系统开机时自启用,在文件/etc/fstab中添加一行:

echo  '/home/swapfile swap swap defaults 0 0'  >> /etc/fstab

5.完成












































































































































































































































































































































































































































































































































































































































































































































































































































[grid@jiekexu-r1:/u01/app/19.0.0/grid]$ /u01/app/19.0.0/grid/runcluvfy.sh stage -pre crsinst -n jiekexu-r1,jiekexu-r2 -fixup -verbose
Verifying Physical Memory ...  Node Name     Available                 Required                  Status    
------------  ------------------------  ------------------------  ----------
 jiekexu-r2    7.7772GB (8155004.0KB)    8GB (8388608.0KB)         passed      jiekexu-r1    7.62GB (7990132.0KB)      8GB (8388608.0KB)         passed    Verifying Physical Memory ...PASSEDVerifying Available Physical Memory ...  Node Name     Available                 Required                  Status    
------------  ------------------------  ------------------------  ----------
 jiekexu-r2    6.953GB (7290788.0KB)     50MB (51200.0KB)          passed      jiekexu-r1    6.5808GB (6900520.0KB)    50MB (51200.0KB)          passed    Verifying Available Physical Memory ...PASSEDVerifying Swap Size ...  Node Name     Available                 Required                  Status    
------------  ------------------------  ------------------------  ----------
 jiekexu-r2    7.875GB (8257532.0KB)     7.7772GB (8155004.0KB)    passed      jiekexu-r1    8GB (8388600.0KB)         7.62GB (7990132.0KB)      passed    Verifying Swap Size ...PASSEDVerifying Free Space: jiekexu-r2:/usr,jiekexu-r2:/var,jiekexu-r2:/etc,jiekexu-r2:/sbin,jiekexu-r2:/tmp ...  Path              Node Name     Mount point   Available     Required      Status      
----------------  ------------  ------------  ------------  ------------  ------------
 /usr              jiekexu-r2    /             47.5273GB     25MB          passed        /var              jiekexu-r2    /             47.5273GB     5MB           passed        /etc              jiekexu-r2    /             47.5273GB     25MB          passed        /sbin             jiekexu-r2    /             47.5273GB     10MB          passed        /tmp              jiekexu-r2    /             47.5273GB     1GB           passed      Verifying Free Space: jiekexu-r2:/usr,jiekexu-r2:/var,jiekexu-r2:/etc,jiekexu-r2:/sbin,jiekexu-r2:/tmp ...PASSEDVerifying Free Space: jiekexu-r1:/usr,jiekexu-r1:/var,jiekexu-r1:/etc,jiekexu-r1:/sbin,jiekexu-r1:/tmp ...  Path              Node Name     Mount point   Available     Required      Status      
----------------  ------------  ------------  ------------  ------------  ------------
 /usr              jiekexu-r1    /             8.8099GB      25MB          passed        /var              jiekexu-r1    /             8.8099GB      5MB           passed        /etc              jiekexu-r1    /             8.8099GB      25MB          passed        /sbin             jiekexu-r1    /             8.8099GB      10MB          passed        /tmp              jiekexu-r1    /             8.8099GB      1GB           passed      Verifying Free Space: jiekexu-r1:/usr,jiekexu-r1:/var,jiekexu-r1:/etc,jiekexu-r1:/sbin,jiekexu-r1:/tmp ...PASSEDVerifying User Existence: grid ...  Node Name     Status                    Comment                
------------  ------------------------  ------------------------
 jiekexu-r2    passed                    exists(10001)            jiekexu-r1    passed                    exists(10001)          
 Verifying Users With Same UID: 10001 ...PASSEDVerifying User Existence: grid ...PASSEDVerifying Group Existence: asmadmin ...  Node Name     Status                    Comment                
------------  ------------------------  ------------------------
 jiekexu-r2    passed                    exists                    jiekexu-r1    passed                    exists                  Verifying Group Existence: asmadmin ...PASSEDVerifying Group Existence: asmdba ...  Node Name     Status                    Comment                
------------  ------------------------  ------------------------
 jiekexu-r2    passed                    exists                    jiekexu-r1    passed                    exists                  Verifying Group Existence: asmdba ...PASSEDVerifying Group Existence: oinstall ...  Node Name     Status                    Comment                
------------  ------------------------  ------------------------
 jiekexu-r2    passed                    exists                    jiekexu-r1    passed                    exists                  Verifying Group Existence: oinstall ...PASSEDVerifying Group Membership: asmdba ...  Node Name         User Exists   Group Exists  User in Group  Status          
----------------  ------------  ------------  ------------  ----------------
 jiekexu-r2        yes           yes           yes           passed            jiekexu-r1        yes           yes           yes           passed          Verifying Group Membership: asmdba ...PASSEDVerifying Group Membership: asmadmin ...  Node Name         User Exists   Group Exists  User in Group  Status          
----------------  ------------  ------------  ------------  ----------------
 jiekexu-r2        yes           yes           yes           passed            jiekexu-r1        yes           yes           yes           passed          Verifying Group Membership: asmadmin ...PASSEDVerifying Group Membership: oinstall(Primary) ...  Node Name         User Exists   Group Exists  User in Group  Primary       Status      
----------------  ------------  ------------  ------------  ------------  ------------
 jiekexu-r2        yes           yes           yes           yes           passed        jiekexu-r1        yes           yes           yes           yes           passed      Verifying Group Membership: oinstall(Primary) ...PASSEDVerifying Run Level ...  Node Name     run level                 Required                  Status    
------------  ------------------------  ------------------------  ----------
 jiekexu-r2    5                         3,5                       passed      jiekexu-r1    5                         3,5                       passed    Verifying Run Level ...PASSEDVerifying Hard Limit: maximum open file descriptors ...  Node Name         Type          Available     Required      Status          
----------------  ------------  ------------  ------------  ----------------
 jiekexu-r2        hard          65536         65536         passed            jiekexu-r1        hard          65536         65536         passed          Verifying Hard Limit: maximum open file descriptors ...PASSEDVerifying Soft Limit: maximum open file descriptors ...  Node Name         Type          Available     Required      Status          
----------------  ------------  ------------  ------------  ----------------
 jiekexu-r2        soft          1024          1024          passed            jiekexu-r1        soft          1024          1024          passed          Verifying Soft Limit: maximum open file descriptors ...PASSEDVerifying Hard Limit: maximum user processes ...  Node Name         Type          Available     Required      Status          
----------------  ------------  ------------  ------------  ----------------
 jiekexu-r2        hard          16384         16384         passed            jiekexu-r1        hard          16384         16384         passed          Verifying Hard Limit: maximum user processes ...PASSEDVerifying Soft Limit: maximum user processes ...  Node Name         Type          Available     Required      Status          
----------------  ------------  ------------  ------------  ----------------
 jiekexu-r2        soft          2047          2047          passed            jiekexu-r1        soft          2047          2047          passed          Verifying Soft Limit: maximum user processes ...PASSEDVerifying Soft Limit: maximum stack size ...  Node Name         Type          Available     Required      Status          
----------------  ------------  ------------  ------------  ----------------
 jiekexu-r2        soft          10240         10240         passed            jiekexu-r1        soft          10240         10240         passed          Verifying Soft Limit: maximum stack size ...PASSEDVerifying Architecture ...  Node Name     Available                 Required                  Status    
------------  ------------------------  ------------------------  ----------
 jiekexu-r2    x86_64                    x86_64                    passed      jiekexu-r1    x86_64                    x86_64                    passed    Verifying Architecture ...PASSEDVerifying OS Kernel Version ...  Node Name     Available                 Required                  Status    
------------  ------------------------  ------------------------  ----------
 jiekexu-r2    3.10.0-1062.el7.x86_64    3.10.0                    passed      jiekexu-r1    3.10.0-1062.el7.x86_64    3.10.0                    passed    Verifying OS Kernel Version ...PASSEDVerifying OS Kernel Parameter: semmsl ...  Node Name         Current       Configured    Required      Status        Comment    
----------------  ------------  ------------  ------------  ------------  ------------
 jiekexu-r1        250           250           250           passed            jiekexu-r2        250           250           250           passed          Verifying OS Kernel Parameter: semmsl ...PASSEDVerifying OS Kernel Parameter: semmns ...  Node Name         Current       Configured    Required      Status        Comment    
----------------  ------------  ------------  ------------  ------------  ------------
 jiekexu-r1        32000         32000         32000         passed            jiekexu-r2        32000         32000         32000         passed          Verifying OS Kernel Parameter: semmns ...PASSEDVerifying OS Kernel Parameter: semopm ...  Node Name         Current       Configured    Required      Status        Comment    
----------------  ------------  ------------  ------------  ------------  ------------
 jiekexu-r1        100           100           100           passed            jiekexu-r2        100           100           100           passed          Verifying OS Kernel Parameter: semopm ...PASSEDVerifying OS Kernel Parameter: semmni ...  Node Name         Current       Configured    Required      Status        Comment    
----------------  ------------  ------------  ------------  ------------  ------------
 jiekexu-r1        128           128           128           passed            jiekexu-r2        128           128           128           passed          Verifying OS Kernel Parameter: semmni ...PASSEDVerifying OS Kernel Parameter: shmmax ...  Node Name         Current       Configured    Required      Status        Comment    
----------------  ------------  ------------  ------------  ------------  ------------
 jiekexu-r1        8181903359    8181903359    4090947584    passed            jiekexu-r2        8350715903    8350715903    4175362048    passed          Verifying OS Kernel Parameter: shmmax ...PASSEDVerifying OS Kernel Parameter: shmmni ...  Node Name         Current       Configured    Required      Status        Comment    
----------------  ------------  ------------  ------------  ------------  ------------
 jiekexu-r1        4096          4096          4096          passed            jiekexu-r2        4096          4096          4096          passed          Verifying OS Kernel Parameter: shmmni ...PASSEDVerifying OS Kernel Parameter: shmall ...  Node Name         Current       Configured    Required      Status        Comment    
----------------  ------------  ------------  ------------  ------------  ------------
 jiekexu-r1        2097152       2097152       1997534       passed            jiekexu-r2        2097152       2097152       2038748       passed          Verifying OS Kernel Parameter: shmall ...PASSEDVerifying OS Kernel Parameter: file-max ...  Node Name         Current       Configured    Required      Status        Comment    
----------------  ------------  ------------  ------------  ------------  ------------
 jiekexu-r1        6815744       6815744       6815744       passed            jiekexu-r2        6815744       6815744       6815744       passed          Verifying OS Kernel Parameter: file-max ...PASSEDVerifying OS Kernel Parameter: ip_local_port_range ...  Node Name         Current       Configured    Required      Status        Comment    
----------------  ------------  ------------  ------------  ------------  ------------
 jiekexu-r1        between 9000 & 65500  between 9000 & 65500  between 9000 & 65535  passed            jiekexu-r2        between 9000 & 65500  between 9000 & 65500  between 9000 & 65535  passed          Verifying OS Kernel Parameter: ip_local_port_range ...PASSEDVerifying OS Kernel Parameter: rmem_default ...  Node Name         Current       Configured    Required      Status        Comment    
----------------  ------------  ------------  ------------  ------------  ------------
 jiekexu-r1        16777216      16777216      262144        passed            jiekexu-r2        16777216      16777216      262144        passed          Verifying OS Kernel Parameter: rmem_default ...PASSEDVerifying OS Kernel Parameter: rmem_max ...  Node Name         Current       Configured    Required      Status        Comment    
----------------  ------------  ------------  ------------  ------------  ------------
 jiekexu-r1        16777216      16777216      4194304       passed            jiekexu-r2        16777216      16777216      4194304       passed          Verifying OS Kernel Parameter: rmem_max ...PASSEDVerifying OS Kernel Parameter: wmem_default ...  Node Name         Current       Configured    Required      Status        Comment    
----------------  ------------  ------------  ------------  ------------  ------------
 jiekexu-r1        16777216      16777216      262144        passed            jiekexu-r2        16777216      16777216      262144        passed          Verifying OS Kernel Parameter: wmem_default ...PASSEDVerifying OS Kernel Parameter: wmem_max ...  Node Name         Current       Configured    Required      Status        Comment    
----------------  ------------  ------------  ------------  ------------  ------------
 jiekexu-r1        16777216      16777216      1048576       passed            jiekexu-r2        16777216      16777216      1048576       passed          Verifying OS Kernel Parameter: wmem_max ...PASSEDVerifying OS Kernel Parameter: aio-max-nr ...  Node Name         Current       Configured    Required      Status        Comment    
----------------  ------------  ------------  ------------  ------------  ------------
 jiekexu-r1        6194304       6194304       1048576       passed            jiekexu-r2        6194304       6194304       1048576       passed          Verifying OS Kernel Parameter: aio-max-nr ...PASSEDVerifying Package: kmod-20-21 (x86_64) ...  Node Name     Available                 Required                  Status    
------------  ------------------------  ------------------------  ----------
 jiekexu-r2    kmod(x86_64)-20-25.el7    kmod(x86_64)-20-21        passed      jiekexu-r1    kmod(x86_64)-20-25.el7    kmod(x86_64)-20-21        passed    Verifying Package: kmod-20-21 (x86_64) ...PASSEDVerifying Package: kmod-libs-20-21 (x86_64) ...  Node Name     Available                 Required                  Status    
------------  ------------------------  ------------------------  ----------
 jiekexu-r2    kmod-libs(x86_64)-20-25.el7  kmod-libs(x86_64)-20-21   passed      jiekexu-r1    kmod-libs(x86_64)-20-25.el7  kmod-libs(x86_64)-20-21   passed    Verifying Package: kmod-libs-20-21 (x86_64) ...PASSEDVerifying Package: binutils-2.23.52.0.1 ...  Node Name     Available                 Required                  Status    
------------  ------------------------  ------------------------  ----------
 jiekexu-r2    binutils-2.27-41.base.el7  binutils-2.23.52.0.1      passed      jiekexu-r1    binutils-2.27-41.base.el7  binutils-2.23.52.0.1      passed    Verifying Package: binutils-2.23.52.0.1 ...PASSEDVerifying Package: compat-libcap1-1.10 ...  Node Name     Available                 Required                  Status    
------------  ------------------------  ------------------------  ----------
 jiekexu-r2    compat-libcap1-1.10-7.el7  compat-libcap1-1.10       passed      jiekexu-r1    compat-libcap1-1.10-7.el7  compat-libcap1-1.10       passed    Verifying Package: compat-libcap1-1.10 ...PASSEDVerifying Package: libgcc-4.8.2 (x86_64) ...  Node Name     Available                 Required                  Status    
------------  ------------------------  ------------------------  ----------
 jiekexu-r2    libgcc(x86_64)-4.8.5-39.el7  libgcc(x86_64)-4.8.2      passed      jiekexu-r1    libgcc(x86_64)-4.8.5-39.el7  libgcc(x86_64)-4.8.2      passed    Verifying Package: libgcc-4.8.2 (x86_64) ...PASSEDVerifying Package: libstdc++-4.8.2 (x86_64) ...  Node Name     Available                 Required                  Status    
------------  ------------------------  ------------------------  ----------
 jiekexu-r2    libstdc++(x86_64)-4.8.5-39.el7  libstdc++(x86_64)-4.8.2   passed      jiekexu-r1    libstdc++(x86_64)-4.8.5-39.el7  libstdc++(x86_64)-4.8.2   passed    Verifying Package: libstdc++-4.8.2 (x86_64) ...PASSEDVerifying Package: libstdc++-devel-4.8.2 (x86_64) ...  Node Name     Available                 Required                  Status    
------------  ------------------------  ------------------------  ----------
 jiekexu-r2    libstdc++-devel(x86_64)-4.8.5-39.el7  libstdc++-devel(x86_64)-4.8.2  passed      jiekexu-r1    libstdc++-devel(x86_64)-4.8.5-39.el7  libstdc++-devel(x86_64)-4.8.2  passed    Verifying Package: libstdc++-devel-4.8.2 (x86_64) ...PASSEDVerifying Package: sysstat-10.1.5 ...  Node Name     Available                 Required                  Status    
------------  ------------------------  ------------------------  ----------
 jiekexu-r2    sysstat-10.1.5-18.el7     sysstat-10.1.5            passed      jiekexu-r1    sysstat-10.1.5-18.el7     sysstat-10.1.5            passed    Verifying Package: sysstat-10.1.5 ...PASSEDVerifying Package: gcc-c++-4.8.2 ...  Node Name     Available                 Required                  Status    
------------  ------------------------  ------------------------  ----------
 jiekexu-r2    gcc-c++-4.8.5-39.el7      gcc-c++-4.8.2             passed      jiekexu-r1    gcc-c++-4.8.5-39.el7      gcc-c++-4.8.2             passed    Verifying Package: gcc-c++-4.8.2 ...PASSEDVerifying Package: ksh ...  Node Name     Available                 Required                  Status    
------------  ------------------------  ------------------------  ----------
 jiekexu-r2    ksh                       ksh                       passed      jiekexu-r1    ksh                       ksh                       passed    Verifying Package: ksh ...PASSEDVerifying Package: make-3.82 ...  Node Name     Available                 Required                  Status    
------------  ------------------------  ------------------------  ----------
 jiekexu-r2    make-3.82-24.el7          make-3.82                 passed      jiekexu-r1    make-3.82-24.el7          make-3.82                 passed    Verifying Package: make-3.82 ...PASSEDVerifying Package: glibc-2.17 (x86_64) ...  Node Name     Available                 Required                  Status    
------------  ------------------------  ------------------------  ----------
 jiekexu-r2    glibc(x86_64)-2.17-292.el7  glibc(x86_64)-2.17        passed      jiekexu-r1    glibc(x86_64)-2.17-292.el7  glibc(x86_64)-2.17        passed    Verifying Package: glibc-2.17 (x86_64) ...PASSEDVerifying Package: glibc-devel-2.17 (x86_64) ...  Node Name     Available                 Required                  Status    
------------  ------------------------  ------------------------  ----------
 jiekexu-r2    glibc-devel(x86_64)-2.17-292.el7  glibc-devel(x86_64)-2.17  passed      jiekexu-r1    glibc-devel(x86_64)-2.17-292.el7  glibc-devel(x86_64)-2.17  passed    Verifying Package: glibc-devel-2.17 (x86_64) ...PASSEDVerifying Package: libaio-0.3.109 (x86_64) ...  Node Name     Available                 Required                  Status    
------------  ------------------------  ------------------------  ----------
 jiekexu-r2    libaio(x86_64)-0.3.109-13.el7  libaio(x86_64)-0.3.109    passed      jiekexu-r1    libaio(x86_64)-0.3.109-13.el7  libaio(x86_64)-0.3.109    passed    Verifying Package: libaio-0.3.109 (x86_64) ...PASSEDVerifying Package: libaio-devel-0.3.109 (x86_64) ...  Node Name     Available                 Required                  Status    
------------  ------------------------  ------------------------  ----------
 jiekexu-r2    libaio-devel(x86_64)-0.3.109-13.el7  libaio-devel(x86_64)-0.3.109  passed      jiekexu-r1    libaio-devel(x86_64)-0.3.109-13.el7  libaio-devel(x86_64)-0.3.109  passed    Verifying Package: libaio-devel-0.3.109 (x86_64) ...PASSEDVerifying Package: nfs-utils-1.2.3-15 ...  Node Name     Available                 Required                  Status    
------------  ------------------------  ------------------------  ----------
 jiekexu-r2    nfs-utils-1.3.0-0.65.el7  nfs-utils-1.2.3-15        passed      jiekexu-r1    nfs-utils-1.3.0-0.65.el7  nfs-utils-1.2.3-15        passed    Verifying Package: nfs-utils-1.2.3-15 ...PASSEDVerifying Package: smartmontools-6.2-4 ...  Node Name     Available                 Required                  Status    
------------  ------------------------  ------------------------  ----------
 jiekexu-r2    smartmontools-7.0-1.el7   smartmontools-6.2-4       passed      jiekexu-r1    smartmontools-7.0-1.el7   smartmontools-6.2-4       passed    Verifying Package: smartmontools-6.2-4 ...PASSEDVerifying Package: net-tools-2.0-0.17 ...  Node Name     Available                 Required                  Status    
------------  ------------------------  ------------------------  ----------
 jiekexu-r2    net-tools-2.0-0.25.20131004git.el7  net-tools-2.0-0.17        passed      jiekexu-r1    net-tools-2.0-0.25.20131004git.el7  net-tools-2.0-0.17        passed    Verifying Package: net-tools-2.0-0.17 ...PASSEDVerifying Package: compat-libstdc++-33-3.2.3 (x86_64) ...  Node Name     Available                 Required                  Status    
------------  ------------------------  ------------------------  ----------
 jiekexu-r2    compat-libstdc++-33(x86_64)-3.2.3-72.el7  compat-libstdc++-33(x86_64)-3.2.3  passed      jiekexu-r1    compat-libstdc++-33(x86_64)-3.2.3-72.el7  compat-libstdc++-33(x86_64)-3.2.3  passed    Verifying Package: compat-libstdc++-33-3.2.3 (x86_64) ...PASSEDVerifying Package: libxcb-1.11 (x86_64) ...  Node Name     Available                 Required                  Status    
------------  ------------------------  ------------------------  ----------
 jiekexu-r2    libxcb(x86_64)-1.13-1.el7  libxcb(x86_64)-1.11       passed      jiekexu-r1    libxcb(x86_64)-1.13-1.el7  libxcb(x86_64)-1.11       passed    Verifying Package: libxcb-1.11 (x86_64) ...PASSEDVerifying Package: libX11-1.6.3 (x86_64) ...  Node Name     Available                 Required                  Status    
------------  ------------------------  ------------------------  ----------
 jiekexu-r2    libX11(x86_64)-1.6.7-2.el7  libX11(x86_64)-1.6.3      passed      jiekexu-r1    libX11(x86_64)-1.6.7-2.el7  libX11(x86_64)-1.6.3      passed    Verifying Package: libX11-1.6.3 (x86_64) ...PASSEDVerifying Package: libXau-1.0.8 (x86_64) ...  Node Name     Available                 Required                  Status    
------------  ------------------------  ------------------------  ----------
 jiekexu-r2    libXau(x86_64)-1.0.8-2.1.el7  libXau(x86_64)-1.0.8      passed      jiekexu-r1    libXau(x86_64)-1.0.8-2.1.el7  libXau(x86_64)-1.0.8      passed    Verifying Package: libXau-1.0.8 (x86_64) ...PASSEDVerifying Package: libXi-1.7.4 (x86_64) ...  Node Name     Available                 Required                  Status    
------------  ------------------------  ------------------------  ----------
 jiekexu-r2    libXi(x86_64)-1.7.9-1.el7  libXi(x86_64)-1.7.4       passed      jiekexu-r1    libXi(x86_64)-1.7.9-1.el7  libXi(x86_64)-1.7.4       passed    Verifying Package: libXi-1.7.4 (x86_64) ...PASSEDVerifying Package: libXtst-1.2.2 (x86_64) ...  Node Name     Available                 Required                  Status    
------------  ------------------------  ------------------------  ----------
 jiekexu-r2    libXtst(x86_64)-1.2.3-1.el7  libXtst(x86_64)-1.2.2     passed      jiekexu-r1    libXtst(x86_64)-1.2.3-1.el7  libXtst(x86_64)-1.2.2     passed    Verifying Package: libXtst-1.2.2 (x86_64) ...PASSEDVerifying Port Availability for component "Oracle Notification Service (ONS)" ...  Node Name         Port Number   Protocol      Available     Status          
----------------  ------------  ------------  ------------  ----------------
 jiekexu-r2        6200          TCP           yes           successful        jiekexu-r1        6200          TCP           yes           successful        jiekexu-r2        6100          TCP           yes           successful        jiekexu-r1        6100          TCP           yes           successful      Verifying Port Availability for component "Oracle Notification Service (ONS)" ...PASSEDVerifying Port Availability for component "Oracle Cluster Synchronization Services (CSSD)" ...  Node Name         Port Number   Protocol      Available     Status          
----------------  ------------  ------------  ------------  ----------------
 jiekexu-r2        42424         TCP           yes           successful        jiekexu-r1        42424         TCP           yes           successful      Verifying Port Availability for component "Oracle Cluster Synchronization Services (CSSD)" ...PASSEDVerifying Users With Same UID: 0 ...PASSEDVerifying Current Group ID ...PASSEDVerifying Root user consistency ...  Node Name                             Status                  
------------------------------------  ------------------------
 jiekexu-r2                            passed                    jiekexu-r1                            passed                  Verifying Root user consistency ...PASSEDVerifying Package: cvuqdisk-1.0.10-1 ...  Node Name     Available                 Required                  Status    
------------  ------------------------  ------------------------  ----------
 jiekexu-r2    cvuqdisk-1.0.10-1         cvuqdisk-1.0.10-1         passed      jiekexu-r1    cvuqdisk-1.0.10-1         cvuqdisk-1.0.10-1         passed    Verifying Package: cvuqdisk-1.0.10-1 ...PASSEDVerifying Host name ...PASSEDVerifying Node Connectivity ...  Verifying Hosts File ...  Node Name                             Status                  
------------------------------------  ------------------------
 jiekexu-r1                            passed                    jiekexu-r2                            passed                    Verifying Hosts File ...PASSED
Interface information for node "jiekexu-r2"
Name   IP Address      Subnet          Gateway         Def. Gateway    HW Address        MTU  
------ --------------- --------------- --------------- --------------- ----------------- ------
ens32  192.168.75.30   192.168.75.0    0.0.0.0         10.10.10.1      00:0C:29:E4:CE:69 1500   ens32  192.168.75.129  192.168.75.0    0.0.0.0         10.10.10.1      00:0C:29:E4:CE:69 1500   ens33  10.10.10.129    10.0.0.0        0.0.0.0         10.10.10.1      00:0C:29:E4:CE:73 1500  
Interface information for node "jiekexu-r1"
Name   IP Address      Subnet          Gateway         Def. Gateway    HW Address        MTU  
------ --------------- --------------- --------------- --------------- ----------------- ------
ens32  192.168.75.28   192.168.75.0    0.0.0.0         10.10.10.1      00:0C:29:2C:79:CE 1500   ens32  192.168.75.128  192.168.75.0    0.0.0.0         10.10.10.1      00:0C:29:2C:79:CE 1500   ens33  10.10.10.128    10.0.0.0        0.0.0.0         10.10.10.1      00:0C:29:2C:79:D8 1500  
Check: MTU consistency of the subnet "192.168.75.0".
 Node              Name          IP Address    Subnet        MTU            
----------------  ------------  ------------  ------------  ----------------
 jiekexu-r2        ens32         192.168.75.30  192.168.75.0  1500              jiekexu-r2        ens32         192.168.75.129  192.168.75.0  1500              jiekexu-r1        ens32         192.168.75.28  192.168.75.0  1500              jiekexu-r1        ens32         192.168.75.128  192.168.75.0  1500            
Check: MTU consistency of the subnet "10.0.0.0".
 Node              Name          IP Address    Subnet        MTU            
----------------  ------------  ------------  ------------  ----------------
 jiekexu-r2        ens33         10.10.10.129  10.0.0.0      1500              jiekexu-r1        ens33         10.10.10.128  10.0.0.0      1500              Verifying Check that maximum (MTU) size packet goes through subnet ...PASSED
 Source                          Destination                     Connected?      
------------------------------  ------------------------------  ----------------
 jiekexu-r1[ens32:192.168.75.28]  jiekexu-r2[ens32:192.168.75.129]  yes              jiekexu-r1[ens32:192.168.75.28]  jiekexu-r2[ens32:192.168.75.30]  yes              jiekexu-r1[ens32:192.168.75.28]  jiekexu-r1[ens32:192.168.75.128]  yes              jiekexu-r2[ens32:192.168.75.129]  jiekexu-r2[ens32:192.168.75.30]  yes              jiekexu-r2[ens32:192.168.75.129]  jiekexu-r1[ens32:192.168.75.128]  yes              jiekexu-r2[ens32:192.168.75.30]  jiekexu-r1[ens32:192.168.75.128]  yes            
 Source                          Destination                     Connected?      
------------------------------  ------------------------------  ----------------
 jiekexu-r1[ens33:10.10.10.128]  jiekexu-r2[ens33:10.10.10.129]  yes              Verifying subnet mask consistency for subnet "192.168.75.0" ...PASSED  Verifying subnet mask consistency for subnet "10.0.0.0" ...PASSEDVerifying Node Connectivity ...PASSEDVerifying Multicast or broadcast check ...Checking subnet "192.168.75.0" for multicast communication with multicast group "224.0.0.251"Verifying Multicast or broadcast check ...PASSEDVerifying Network Time Protocol (NTP) ...PASSEDVerifying Same core file name pattern ...PASSEDVerifying User Mask ...  Node Name     Available                 Required                  Comment  
------------  ------------------------  ------------------------  ----------
 jiekexu-r2    0022                      0022                      passed      jiekexu-r1    0022                      0022                      passed    Verifying User Mask ...PASSEDVerifying User Not In Group "root": grid ...  Node Name     Status                    Comment                
------------  ------------------------  ------------------------
 jiekexu-r2    passed                    does not exist            jiekexu-r1    passed                    does not exist          Verifying User Not In Group "root": grid ...PASSEDVerifying Time zone consistency ...PASSEDVerifying Time offset between nodes ...PASSEDVerifying resolv.conf Integrity ...  Node Name                             Status                  
------------------------------------  ------------------------
 jiekexu-r1                            failed                    jiekexu-r2                            failed                  
checking response for name "jiekexu-r2" from each of the name servers specifiedin "/etc/resolv.conf"
 Node Name     Source                    Comment                   Status    
------------  ------------------------  ------------------------  ----------
 jiekexu-r2    192.168.75.2              IPv4                      failed    
checking response for name "jiekexu-r1" from each of the name servers specifiedin "/etc/resolv.conf"
 Node Name     Source                    Comment                   Status    
------------  ------------------------  ------------------------  ----------
 jiekexu-r1    192.168.75.2              IPv4                      failed    Verifying resolv.conf Integrity ...FAILED (PRVF-5636, PRVG-10048)Verifying DNS/NIS name service ...PASSEDVerifying Domain Sockets ...PASSEDVerifying /boot mount ...PASSEDVerifying Daemon "avahi-daemon" not configured and running ...  Node Name     Configured                Status                  
------------  ------------------------  ------------------------
 jiekexu-r2    no                        passed                    jiekexu-r1    no                        passed                  
 Node Name     Running?                  Status                  
------------  ------------------------  ------------------------
 jiekexu-r2    no                        passed                    jiekexu-r1    no                        passed                  Verifying Daemon "avahi-daemon" not configured and running ...PASSEDVerifying Daemon "proxyt" not configured and running ...  Node Name     Configured                Status                  
------------  ------------------------  ------------------------
 jiekexu-r2    no                        passed                    jiekexu-r1    no                        passed                  
 Node Name     Running?                  Status                  
------------  ------------------------  ------------------------
 jiekexu-r2    no                        passed                    jiekexu-r1    no                        passed                  Verifying Daemon "proxyt" not configured and running ...PASSEDVerifying User Equivalence ...PASSEDVerifying RPM Package Manager database ...INFORMATION (PRVG-11250)Verifying /dev/shm mounted as temporary file system ...PASSEDVerifying File system mount options for path /var ...PASSEDVerifying DefaultTasksMax parameter ...PASSEDVerifying zeroconf check ...PASSEDVerifying ASM Filter Driver configuration ...PASSED
Pre-check for cluster services setup was unsuccessful on all the nodes.

Failures were encountered during execution of CVU verification request "stage -pre crsinst".
Verifying resolv.conf Integrity ...FAILEDjiekexu-r2: PRVF-5636 : The DNS response time for an unreachable node exceeded            "15000" ms on following nodes: jiekexu-r1,jiekexu-r2jiekexu-r2: PRVG-10048 : Name "jiekexu-r2" was not resolved to an address of            the specified type by name servers "192.168.75.2".
jiekexu-r1: PRVF-5636 : The DNS response time for an unreachable node exceeded            "15000" ms on following nodes: jiekexu-r1,jiekexu-r2jiekexu-r1: PRVG-10048 : Name "jiekexu-r1" was not resolved to an address of            the specified type by name servers "192.168.75.2".
Verifying RPM Package Manager database ...INFORMATIONPRVG-11250 : The check "RPM Package Manager database" was not performed becauseit needs 'root' user privileges.
CVU operation performed:      stage -pre crsinstDate:                         Aug 25, 2021 8:41:59 PMCVU home:                     /u01/app/19.0.0/grid/User:                         grid


[grid@jiekexu-r1:/home/grid]$ /u01/app/19.0.0/grid/runcluvfy.sh stage -pre crsinst -n jiekexu-r1,jiekexu-r2 -method rootEnter "ROOT" password:
Verifying Physical Memory ...PASSEDVerifying Available Physical Memory ...PASSEDVerifying Swap Size ...PASSEDVerifying Free Space: jiekexu-r2:/usr,jiekexu-r2:/var,jiekexu-r2:/etc,jiekexu-r2:/sbin,jiekexu-r2:/tmp ...PASSEDVerifying Free Space: jiekexu-r1:/usr,jiekexu-r1:/var,jiekexu-r1:/etc,jiekexu-r1:/sbin,jiekexu-r1:/tmp ...PASSEDVerifying User Existence: grid ...  Verifying Users With Same UID: 10001 ...PASSEDVerifying User Existence: grid ...PASSEDVerifying Group Existence: asmadmin ...PASSEDVerifying Group Existence: asmdba ...PASSEDVerifying Group Existence: oinstall ...PASSEDVerifying Group Membership: asmdba ...PASSEDVerifying Group Membership: asmadmin ...PASSEDVerifying Group Membership: oinstall(Primary) ...PASSEDVerifying Run Level ...PASSEDVerifying Hard Limit: maximum open file descriptors ...PASSEDVerifying Soft Limit: maximum open file descriptors ...PASSEDVerifying Hard Limit: maximum user processes ...PASSEDVerifying Soft Limit: maximum user processes ...PASSEDVerifying Soft Limit: maximum stack size ...PASSEDVerifying Architecture ...PASSEDVerifying OS Kernel Version ...PASSEDVerifying OS Kernel Parameter: semmsl ...PASSEDVerifying OS Kernel Parameter: semmns ...PASSEDVerifying OS Kernel Parameter: semopm ...PASSEDVerifying OS Kernel Parameter: semmni ...PASSEDVerifying OS Kernel Parameter: shmmax ...PASSEDVerifying OS Kernel Parameter: shmmni ...PASSEDVerifying OS Kernel Parameter: shmall ...PASSEDVerifying OS Kernel Parameter: file-max ...PASSEDVerifying OS Kernel Parameter: ip_local_port_range ...PASSEDVerifying OS Kernel Parameter: rmem_default ...PASSEDVerifying OS Kernel Parameter: rmem_max ...PASSEDVerifying OS Kernel Parameter: wmem_default ...PASSEDVerifying OS Kernel Parameter: wmem_max ...PASSEDVerifying OS Kernel Parameter: aio-max-nr ...PASSEDVerifying Package: kmod-20-21 (x86_64) ...PASSEDVerifying Package: kmod-libs-20-21 (x86_64) ...PASSEDVerifying Package: binutils-2.23.52.0.1 ...PASSEDVerifying Package: compat-libcap1-1.10 ...PASSEDVerifying Package: libgcc-4.8.2 (x86_64) ...PASSEDVerifying Package: libstdc++-4.8.2 (x86_64) ...PASSEDVerifying Package: libstdc++-devel-4.8.2 (x86_64) ...PASSEDVerifying Package: sysstat-10.1.5 ...PASSEDVerifying Package: gcc-c++-4.8.2 ...PASSEDVerifying Package: ksh ...PASSEDVerifying Package: make-3.82 ...PASSEDVerifying Package: glibc-2.17 (x86_64) ...PASSEDVerifying Package: glibc-devel-2.17 (x86_64) ...PASSEDVerifying Package: libaio-0.3.109 (x86_64) ...PASSEDVerifying Package: libaio-devel-0.3.109 (x86_64) ...PASSEDVerifying Package: nfs-utils-1.2.3-15 ...PASSEDVerifying Package: smartmontools-6.2-4 ...PASSEDVerifying Package: net-tools-2.0-0.17 ...PASSEDVerifying Package: compat-libstdc++-33-3.2.3 (x86_64) ...PASSEDVerifying Package: libxcb-1.11 (x86_64) ...PASSEDVerifying Package: libX11-1.6.3 (x86_64) ...PASSEDVerifying Package: libXau-1.0.8 (x86_64) ...PASSEDVerifying Package: libXi-1.7.4 (x86_64) ...PASSEDVerifying Package: libXtst-1.2.2 (x86_64) ...PASSEDVerifying Port Availability for component "Oracle Notification Service (ONS)" ...PASSEDVerifying Port Availability for component "Oracle Cluster Synchronization Services (CSSD)" ...PASSEDVerifying Users With Same UID: 0 ...PASSEDVerifying Current Group ID ...PASSEDVerifying Root user consistency ...PASSEDVerifying Package: cvuqdisk-1.0.10-1 ...PASSEDVerifying Host name ...PASSEDVerifying Node Connectivity ...  Verifying Hosts File ...PASSED  Verifying Check that maximum (MTU) size packet goes through subnet ...PASSED  Verifying subnet mask consistency for subnet "192.168.75.0" ...PASSED  Verifying subnet mask consistency for subnet "10.0.0.0" ...PASSEDVerifying Node Connectivity ...PASSEDVerifying Multicast or broadcast check ...PASSEDVerifying Network Time Protocol (NTP) ...PASSEDVerifying Same core file name pattern ...PASSEDVerifying User Mask ...PASSEDVerifying User Not In Group "root": grid ...PASSEDVerifying Time zone consistency ...PASSEDVerifying Time offset between nodes ...PASSEDVerifying resolv.conf Integrity ...FAILED (PRVG-13159)Verifying DNS/NIS name service ...PASSEDVerifying Domain Sockets ...PASSEDVerifying /boot mount ...PASSEDVerifying Daemon "avahi-daemon" not configured and running ...PASSEDVerifying Daemon "proxyt" not configured and running ...PASSEDVerifying User Equivalence ...PASSEDVerifying RPM Package Manager database ...PASSEDVerifying /dev/shm mounted as temporary file system ...PASSEDVerifying File system mount options for path /var ...PASSEDVerifying DefaultTasksMax parameter ...PASSEDVerifying zeroconf check ...PASSEDVerifying ASM Filter Driver configuration ...PASSED
Pre-check for cluster services setup was unsuccessful on all the nodes.

Failures were encountered during execution of CVU verification request "stage -pre crsinst".
Verifying resolv.conf Integrity ...FAILEDjiekexu-r2: PRVG-13159 : On node "jiekexu-r2" the file "/etc/resolv.conf" could            not be parsed because the file is empty.
jiekexu-r1: PRVG-13159 : On node "jiekexu-r1" the file "/etc/resolv.conf" could            not be parsed because the file is empty.
CVU operation performed:      stage -pre crsinstDate:                         Aug 30, 2021 7:49:20 PMCVU home:                     /u01/app/19.0.0/grid/User:                         grid

6.4 查看静默安装文件














[root@jiekexu-r2 soft]# lvmdiskscan   /dev/sda1       [       1.00 GiB]   /dev/sda2       [     <99.00 GiB] LVM physical volume  /dev/asm_data01 [      10.00 GiB]   /dev/asm_ocr02  [       3.00 GiB]   /dev/asm_ocr01  [       3.00 GiB]   /dev/asm_data02 [      10.00 GiB]   /dev/asm_arch01 [      10.00 GiB]   /dev/asm_ocr03  [       3.00 GiB]   0 disks  7 partitions  0 LVM physical volume whole disks  1 LVM physical volume

响应文件位置

/u01/app/19.0.0/grid/install/response

${ORACLE_HOME}/install/response/gridsetup.rsp

参数说明:

oracle.install.crs.config.clusterNodes=网卡名:公网IP地址段:1,私网网卡名:私网IP地址段:5

这里的 1 代表 PUBLIC,5 代表 ASM & PRIVATE

















#############################################################################oracle.install.crs.config.clusterNodes=#############################################################################The value should be a comma separated strings where each string is as shown belowInterfaceName:SubnetAddress:InterfaceTypewhere InterfaceType can be either "1", "2", "3", "4", or "5"InterfaceType stand for the following values1 : PUBLIC2 : PRIVATE3 : DO NOT USE4 : ASM5 : ASM & PRIVATE#For example: eth0:140.87.24.0:1,eth1:10.2.1.0:2,eth2:140.87.52.0:3#############################################################################12.2:Post upgrade steps for Grid infrastructure reports INS-32601 error (Doc ID 2380863.1)

6.5 执行补丁和 GI 安装

jiekexu-r1:/home/grid(+ASM1)$ $ORACLE_HOME/gridSetup.sh --helpUsage:  gridSetup.sh [] [Following are the possible flags:        -help - 显示帮助。        -silent - 在无提示模式下运行。输入内容可以是一个响应文件, 也可以是命令行变量值对的列表。                [-ignorePrereqFailure - 忽略所有先决条件检查失败。]                [-lenientInstallMode - 通过自动忽略输入参数中的无效数据, 执行“最佳效果”安装。]        -responseFile - 指定要使用的响应文件的完整路径。        -logLevel - 根据此参数所提供的优先级启用消息日志。有效选项包括: 严重, 警告, 信息, 配置, 详细, 较为详细, 非常详细。        -executePrereqs | -executeConfigTools | -createGoldImage | -switchGridHome | -downgrade | -dryRunForUpgrade        -executePrereqs - 仅执行先决条件检查。        -executeConfigTools - 对安装的主目录执行配置工具。                [-skipStackCheck - 跳过堆栈状态检查。]        -createGoldImage - 从当前 Oracle 主目录创建 Gold Image。                -destinationLocation - 指定将存放所创建 Gold Image 的位置的完整路径。                [-exclFiles - 指定要从新 Gold Image 中排除的文件的完整路径。]        -switchGridHome - 更改 Oracle Grid Infrastructure 主目录路径。        -downgrade - 将网格基础结构降级回旧主目录 (仅在升级不完整的情况下使用)。                -silent - 在无提示模式下运行。输入内容可以是一个响应文件, 也可以是命令行变量值对的列表。                        [-ignorePrereqFailure - 忽略所有先决条件检查失败。]                        [-lenientInstallMode - 通过自动忽略输入参数中的无效数据, 执行“最佳效果”安装。]                [-configmethod - 指定以授权用户身份执行脚本的方法。如果未指定, 则系统将指示用户以授权用户身份登录来运行脚本。有效选项为: root,sudo。]                        [-sudopath - 指定 sudo 程序的完整路径。这是可选参数。在为 configmethod 指定了 'sudo' 并且默认路径中没有 'sudo' 程序时, 需要此项。]                        [-sudousername - 指定 sudoer 的名称。]        -dryRunForUpgrade  - 执行网格基础结构升级过程的预演。        -debug - 在调试模式下运行。        -printdiskusage - 记录有关磁盘使用情况的调试信息。        -printmemory - 记录有关内存使用情况的调试信息。        -printtime - 记录有关时间使用情况的调试信息。        -waitForCompletion - 等待安装完成, 而不是衍生安装程序并返回控制台提示符。        -noconfig - 不执行配置工具。        -noconsole - 禁止在控制台中显示消息。不分配控制台。        -ignoreInternalDriverError - 忽略任何内部驱动程序错误。        -noCopy - 执行配置, 但不将软件复制到远程节点。        -applyRU - 将发行版更新应用于 Oracle 主目录。        -applyOneOffs - 将一次性补丁程序应用于 Oracle 主目录。多个一次性补丁程序可以采用逗号分隔的位置列表格式传递。


































$ORACLE_HOME/gridSetup.sh -silent -applyRU /home/soft/32900083/32895426  -force -noconfig  -ignorePrereq  -waitforcompletion \-responseFile ${ORACLE_HOME}/install/response/gridsetup.rsp \INVENTORY_LOCATION=/u01/app/oraInventory \ORACLE_BASE=/u01/app/grid \ORACLE_HOME=/u01/app/19.0.0/grid \oracle.install.asm.OSDBA=asmdba \oracle.install.asm.OSOPER=asmoper \oracle.install.asm.OSASM=asmadmin \oracle.install.crs.config.storageOption=ASM \oracle.install.crs.config.useIPMI=false \oracle.install.asm.diskGroup.name=OCR \oracle.install.asm.diskGroup.AUSize=4 \oracle.install.asm.diskGroup.redundancy=NORMAL \oracle.install.crs.config.ClusterConfiguration=STANDALONE \oracle.install.crs.config.configureAsExtendedCluster=false \oracle.install.crs.config.gpnp.scanPort=1521 \oracle.install.crs.config.gpnp.configureGNS=false \oracle.install.option=CRS_CONFIG \oracle.install.asm.SYSASMPassword=Oracle19C \oracle.install.asm.monitorPassword=Oracle19C \oracle.install.asm.diskGroup.diskDiscoveryString=/dev/asm_* \oracle.install.asm.diskGroup.disks=/dev/asm_ocr01,/dev/asm_ocr02,/dev/asm_ocr03 \oracle.install.crs.config.gpnp.scanName=jiekexu-racscan \oracle.install.crs.config.clusterName=jiekexu-racscan \oracle.install.crs.config.autoConfigureClusterNodeVIP=false \oracle.install.crs.config.clusterNodes=jiekexu-r1:jiekexu-r1-vip,jiekexu-r2:jiekexu-r2-vip \oracle.install.crs.config.networkInterfaceList=ens32:192.168.75.0:1,ens33:10.10.10.0:5 \oracle.install.asm.configureGIMRDataDG=false \oracle.install.crs.configureRHPS=false \oracle.install.crs.config.ignoreDownNodes=false \oracle.install.config.managementOption=NONE \oracle.install.config.omsPort=0 \oracle.install.crs.rootconfig.executeRootScript=false

--注:这里尝试配置 root 自动执行 root.sh 脚本时,需要输入密码,但很快就过去了,根本来不及输入密码。无奈则取消掉 oracle.install.crs.rootconfig.configMethod=ROOT 这行,将 oracle.install.crs.rootconfig.executeRootScript=true  改为 oracle.install.crs.rootconfig.executeRootScript=false





















[grid@jiekexu-r2:/home/grid]$ cd /u01/app/19.0.0/grid[grid@jiekexu-r2:/u01/app/19.0.0/grid]$ ls addnode      clone   dbs          gpnp           inventory  lib      opatchautocfg   ord   plsql    rdbms          root.sh.old.2   sqlpatch  usm           xdkassistants   crs     deinstall    gridSetup.sh   javavm     md       OPatch.bak0826  ords  precomp  relnotes       root.sh.old.3   sqlplus   utlbin          css     demo         has            jdbc       network  opmn            oss   pylib    rhp            rootupgrade.sh  srvm      welcome.htmlcfgtoollogs  ctx     diagnostics  hs             jdk        nls      oracore         oui   QOpatch  root.sh        runcluvfy.sh    suptools  wlmcha          cv      env.ora      install        jlib       olap     oradiag_grid    owm   qos      root.sh.old    sdk             tomcat    wwgclient       dbjava  evm          instantclient  ldap       OPatch   oraInst.loc     perl  racg     root.sh.old.1  slax            ucp       xag[grid@jiekexu-r2:/u01/app/19.0.0/grid]$ opatch version OPatch Version: 12.2.0.1.25
OPatch succeeded.[grid@jiekexu-r2:/u01/app/19.0.0/grid]$ opatch lspatches32918050;TOMCAT RELEASE UPDATE 19.0.0.0.0 (32918050)32916816;OCW RELEASE UPDATE 19.12.0.0.0 (32916816)32915586;ACFS RELEASE UPDATE 19.12.0.0.0 (32915586)32904851;Database Release Update : 19.12.0.0.210720 (32904851)32585572;DBWLM RELEASE UPDATE 19.0.0.0.0 (32585572)
OPatch succeeded.















You can find the log of this install session at: /u01/app/oraInventory/logs/GridSetupActions2021-08-30_08-16-41PM/gridSetupActions2021-08-30_08-16-41PM.log
As a root user, execute the following script(s):        1. /u01/app/19.0.0/grid/root.sh
Execute /u01/app/19.0.0/grid/root.sh on the following nodes: [jiekexu-r1, jiekexu-r2]
Run the script on the local node first. After successful completion, you can start the script in parallel on all other nodes.
Successfully Setup Software with warning(s).As install user, execute the following command to complete the configuration.        /u01/app/19.0.0/grid/gridSetup.sh -executeConfigTools -responseFile /u01/app/19.0.0/grid/install/response/gridsetup.rsp [-silent]


6.5.1 root 脚本执行

/u01/app/oraInventory/orainstRoot.sh

/u01/app/19.0.0/grid/root.sh




[root@jiekexu-r1 ~]# /u01/app/19.0.0/grid/root.shCheck /u01/app/19.0.0/grid/install/root_jiekexu-r1_2021-08-28_19-52-00-806173517.log for the output of root script[root@jiekexu-r1 ~]#

执行脚本遇到如下错误ORA-39511,这个问题前面一篇文章已经说了,可点此查看。



ORA-39511: Start of CRS resource for instance '215' failed with error:[CRS-2672: Attempting to start 'ora.cluster_interconnect.haip' on 'jiekexu-r1'oracle.sysman.assistants.util.sqlEngine.SQLFatalErrorException: ORA-39511: Start of CRS resource for instance '215' failed with error:[CRS-2672: Attempting to start 'ora.cluster_interconnect.haip' on 'jiekexu-r1'

6.5.2 卸载 GI

如果脚本执行错误,重复执行也无法修复时,则需要使用 deinstall 卸载重新安装。




















cd $ORACLE_HOME/deinstall./deinstall根据提示输入和执行脚本  n   n   y  另开会话执行脚本 ./rootcrs.sh -force  -deconfig -paramfile ……,等待十几分钟rm -rf /opt/ORCLfmaprm -rf /etc/oraInst.loc检查所有节点的配置文件/etc/oraInst.loc、/etc/oratab是否存在相关配置,若有,则删除之。使用 root 用户登录所有节点,执行:# rm -rf /etc/oracle /tmp/.oracle /var/tmp/.oracle /u01/app/oraInventory /u01/app/grid/* /tmp/GridSetupActions*卸载后新建 mkdir -p  /u01/app/19.0.0/gridchown -R grid:oinstall /u01chmod -R 775 /u01chown -R oracle:oinstall /u01/app/oracle另一节点如果还没执行 root.sh 则直接  /u01/app/19.0.0/grid :cd $ORACLE_HOMErm -rf *   rm -rf .opatchauto_storage  rm -rf .patch_storagecd /u01/app/gridrm -rf *rm -rf /u01/app/oraInventory

6.6 重新解压 GI 安装包继续安装






unzip LINUX.X64_193000_grid_home.zip -d $ORACLE_HOMEcd $ORACLE_HOME/OPatchmv OPatch/ OPatch.bakcp -r /home/soft/OPatch/ ./

两节点均需配置,使用ifconfigip link show查看mac地址。修改文件/etc/udev/rules.d/70-persistent-ipoib.rules





cat > /etc/udev/rules.d/70-persistent-ipoib.rules <<"EOF"SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:e4:ce:69", ATTR{type}=="1", KERNEL=="eth*", NAME="ens32"SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:e4:ce:73", ATTR{type}=="1", KERNEL=="eth*", NAME="ens33"EOF

























[root@jiekexu-r1 ~]# ip link show1: lo:  mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:002: ens32:  mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000    link/ether 00:0c:29:e4:ce:69 brd ff:ff:ff:ff:ff:ff3: ens33:  mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000    link/ether 00:0c:29:e4:ce:73 brd ff:ff:ff:ff:ff:ff
cat > /etc/sysconfig/network-scripts/ifcfg-ens32 <<"EOF"DEVICE=ens32NAME=ens32IPADDR=192.168.75.128NETMASK=255.255.255.0GATEWAY=192.168.75.2ONBOOT=yesUSERCTL=noBOOTPROTO=staticHWADDR=00:0c:29:e4:ce:69TYPE=EthernetIPV6INIT=noDNS1=114.114.114.114DNS2=8.8.8.8NM_CONTROLLED=noEOF

注意第二块网卡不配置网关,否则系统默认网关就变成了第二块网卡的网关,从而导致系统不能上外网。
















cat > /etc/sysconfig/network-scripts/ifcfg-ens33 <<"EOF"DEVICE=ens33NAME=ens33IPADDR=10.10.10.128NETMASK=255.255.255.0ONBOOT=yesUSERCTL=noBOOTPROTO=staticHWADDR=00:0c:29:e4:ce:73TYPE=EthernetIPV6INIT=noDNS1=114.114.114.114DNS2=8.8.8.8NM_CONTROLLED=noEOF

重跑 root.sh
































































[root@jiekexu-r1 network-scripts]# cat /u01/app/19.0.0/grid/install/root_jiekexu-r1_2021-08-31_18-14-46-714402688.logPerforming root user operation.
The following environment variables are set as:    ORACLE_OWNER= grid    ORACLE_HOME=  /u01/app/19.0.0/grid   Copying dbhome to /usr/local/bin ...   Copying oraenv to /usr/local/bin ...   Copying coraenv to /usr/local/bin ...
Entries will be added to the /etc/oratab file as needed byDatabase Configuration Assistant when a database is createdFinished running generic part of root script.Now product-specific root actions will be performed.Relinking oracle with rac_on optionUsing configuration parameter file: /u01/app/19.0.0/grid/crs/install/crsconfig_paramsThe log of current session can be found at:  /u01/app/grid/crsdata/jiekexu-r1/crsconfig/rootcrs_jiekexu-r1_2021-08-31_06-14-47PM.log2021/08/31 18:14:50 CLSRSC-594: Executing installation step 1 of 19: 'SetupTFA'.2021/08/31 18:14:50 CLSRSC-594: Executing installation step 2 of 19: 'ValidateEnv'.2021/08/31 18:14:50 CLSRSC-363: User ignored prerequisites during installation2021/08/31 18:14:50 CLSRSC-594: Executing installation step 3 of 19: 'CheckFirstNode'.2021/08/31 18:14:52 CLSRSC-594: Executing installation step 4 of 19: 'GenSiteGUIDs'.2021/08/31 18:14:53 CLSRSC-594: Executing installation step 5 of 19: 'SetupOSD'.2021/08/31 18:14:53 CLSRSC-594: Executing installation step 6 of 19: 'CheckCRSConfig'.2021/08/31 18:14:53 CLSRSC-594: Executing installation step 7 of 19: 'SetupLocalGPNP'.2021/08/31 18:14:54 CLSRSC-594: Executing installation step 8 of 19: 'CreateRootCert'.2021/08/31 18:14:57 CLSRSC-594: Executing installation step 9 of 19: 'ConfigOLR'.2021/08/31 18:14:57 CLSRSC-594: Executing installation step 10 of 19: 'ConfigCHMOS'.2021/08/31 18:14:57 CLSRSC-594: Executing installation step 11 of 19: 'CreateOHASD'.2021/08/31 18:14:58 CLSRSC-594: Executing installation step 12 of 19: 'ConfigOHASD'.2021/08/31 18:15:00 CLSRSC-594: Executing installation step 13 of 19: 'InstallAFD'.2021/08/31 18:15:00 CLSRSC-594: Executing installation step 14 of 19: 'InstallACFS'.2021/08/31 18:15:01 CLSRSC-594: Executing installation step 15 of 19: 'InstallKA'.2021/08/31 18:15:04 CLSRSC-594: Executing installation step 16 of 19: 'InitConfig'.2021/08/31 18:15:22 CLSRSC-4002: Successfully installed Oracle Trace File Analyzer (TFA) Collector.
ASM has been created and started successfully.
[DBT-30001] Disk groups created successfully. Check /u01/app/grid/cfgtoollogs/asmca/asmca-210831PM061542.log for details.
2021/08/31 18:16:34 CLSRSC-482: Running command: '/u01/app/19.0.0/grid/bin/ocrconfig -upgrade grid oinstall'CRS-4256: Updating the profileSuccessful addition of voting disk 14ed0aa13ffd4f89bfe2d79061f96fbc.Successful addition of voting disk 27cc8fbc135f4fd3bf574b4d2e62531e.Successful addition of voting disk c5c806e3a2414f74bf1c70f2add4a821.Successfully replaced voting disk group with +OCR.CRS-4256: Updating the profileCRS-4266: Voting file(s) successfully replaced
STATE    File Universal Id                File Name Disk group
--  -----    -----------------                --------- ---------
 1. ONLINE   14ed0aa13ffd4f89bfe2d79061f96fbc (/dev/asm_ocr03) [OCR]  2. ONLINE   27cc8fbc135f4fd3bf574b4d2e62531e (/dev/asm_ocr01) [OCR]  3. ONLINE   c5c806e3a2414f74bf1c70f2add4a821 (/dev/asm_ocr02) [OCR]     Located 3 voting disk(s).     2021/08/31 18:17:29 CLSRSC-594: Executing installation step 17 of 19: 'StartCluster'.     2021/08/31 18:18:28 CLSRSC-343: Successfully started Oracle Clusterware stack     2021/08/31 18:18:28 CLSRSC-594: Executing installation step 18 of 19: 'ConfigNode'.     2021/08/31 18:20:11 CLSRSC-594: Executing installation step 19 of 19: 'PostConfig'.     2021/08/31 18:20:38 CLSRSC-325: Configure Oracle Grid Infrastructure for a Cluster ... succeeded


节点 2 执行 root.sh 也成功了,兴奋中……












































[grid@jiekexu-r2:/home/grid]$ tail -30f /u01/app/19.0.0/grid/install/root_jiekexu-r2_2021-08-31_18-25-18-796337893.logPerforming root user operation.
The following environment variables are set as:    ORACLE_OWNER= grid    ORACLE_HOME=  /u01/app/19.0.0/grid   Copying dbhome to /usr/local/bin ...   Copying oraenv to /usr/local/bin ...   Copying coraenv to /usr/local/bin ...
Entries will be added to the /etc/oratab file as needed byDatabase Configuration Assistant when a database is createdFinished running generic part of root script.Now product-specific root actions will be performed.Relinking oracle with rac_on optionUsing configuration parameter file: /u01/app/19.0.0/grid/crs/install/crsconfig_paramsThe log of current session can be found at:  /u01/app/grid/crsdata/jiekexu-r2/crsconfig/rootcrs_jiekexu-r2_2021-08-31_06-25-49PM.log2021/08/31 18:25:53 CLSRSC-594: Executing installation step 1 of 19: 'SetupTFA'.2021/08/31 18:25:53 CLSRSC-594: Executing installation step 2 of 19: 'ValidateEnv'.2021/08/31 18:25:53 CLSRSC-363: User ignored prerequisites during installation2021/08/31 18:25:53 CLSRSC-594: Executing installation step 3 of 19: 'CheckFirstNode'.2021/08/31 18:25:55 CLSRSC-594: Executing installation step 4 of 19: 'GenSiteGUIDs'.2021/08/31 18:25:55 CLSRSC-594: Executing installation step 5 of 19: 'SetupOSD'.Redirecting to /bin/systemctl restart rsyslog.service2021/08/31 18:25:56 CLSRSC-594: Executing installation step 6 of 19: 'CheckCRSConfig'.2021/08/31 18:25:58 CLSRSC-594: Executing installation step 7 of 19: 'SetupLocalGPNP'.2021/08/31 18:26:02 CLSRSC-594: Executing installation step 8 of 19: 'CreateRootCert'.2021/08/31 18:26:02 CLSRSC-594: Executing installation step 9 of 19: 'ConfigOLR'.2021/08/31 18:26:16 CLSRSC-594: Executing installation step 10 of 19: 'ConfigCHMOS'.2021/08/31 18:26:16 CLSRSC-594: Executing installation step 11 of 19: 'CreateOHASD'.2021/08/31 18:26:20 CLSRSC-594: Executing installation step 12 of 19: 'ConfigOHASD'.2021/08/31 18:26:20 CLSRSC-330: Adding Clusterware entries to file 'oracle-ohasd.service'2021/08/31 18:26:43 CLSRSC-594: Executing installation step 13 of 19: 'InstallAFD'.2021/08/31 18:26:43 CLSRSC-594: Executing installation step 14 of 19: 'InstallACFS'.2021/08/31 18:27:30 CLSRSC-594: Executing installation step 15 of 19: 'InstallKA'.2021/08/31 18:27:33 CLSRSC-594: Executing installation step 16 of 19: 'InitConfig'.2021/08/31 18:27:42 CLSRSC-594: Executing installation step 17 of 19: 'StartCluster'.2021/08/31 18:27:56 CLSRSC-4002: Successfully installed Oracle Trace File Analyzer (TFA) Collector.2021/08/31 18:28:28 CLSRSC-343: Successfully started Oracle Clusterware stack2021/08/31 18:28:29 CLSRSC-594: Executing installation step 18 of 19: 'ConfigNode'.2021/08/31 18:29:13 CLSRSC-594: Executing installation step 19 of 19: 'PostConfig'.2021/08/31 18:29:19 CLSRSC-325: Configure Oracle Grid Infrastructure for a Cluster ... succeeded

















[root@jiekexu-r1 ~]# systemctl status oracle-ohasd.service? oracle-ohasd.service - Oracle High Availability Services   Loaded: loaded (/etc/systemd/system/oracle-ohasd.service; enabled; vendor preset: disabled)  Drop-In: /etc/systemd/system/oracle-ohasd.service.d           +-00_oracle-ohasd.conf   Active: active (running) since Thu 2021-09-02 10:55:47 CST; 37min ago Main PID: 1638 (init.ohasd)   CGroup: /system.slice/oracle-ohasd.service           +- 1638 /bin/sh /etc/init.d/init.ohasd run >/dev/null 2>&1 
…………省略更多输出…………
Sep 02 11:29:49 jiekexu-r1 CLSD[4579]: The clock on host jiekexu-r1 has been updated by the Cluster Time Synchronization Service to be synchronous with the mean cluster time.Sep 02 11:31:58 jiekexu-r1 oracle_26819_+a[26819]: Oracle Audit[26819]: LENGTH : '247' ACTION :[7] 'CONNECT' DATABASE USER:[1] '/' PRIVILEGE :[6] 'SYSDBA' CLIENT USER:[4] 'gri...R:[3] '100'Hint: Some lines were ellipsized, use -l to show in full.

6.9 配置集群

根据 6.5.1 节前的内容,执行完 root.sh 脚本,执行 executeConfigTools 配置,更新节点信息。















































/u01/app/19.0.0/grid/gridSetup.sh  -silent -executeConfigTools -waitforcompletion \-responseFile /u01/app/19.0.0/grid/install/response/gridsetup.rsp  \INVENTORY_LOCATION=/u01/app/oraInventory \ORACLE_BASE=/u01/app/grid \ORACLE_HOME=/u01/app/19.0.0/grid \oracle.install.asm.OSDBA=asmdba \oracle.install.asm.OSOPER=asmoper \oracle.install.asm.OSASM=asmadmin \oracle.install.crs.config.storageOption=ASM \oracle.install.crs.config.useIPMI=false \oracle.install.asm.diskGroup.name=OCR \oracle.install.asm.diskGroup.AUSize=4 \oracle.install.asm.diskGroup.redundancy=NORMAL \oracle.install.crs.config.ClusterConfiguration=STANDALONE \oracle.install.crs.config.configureAsExtendedCluster=false \oracle.install.crs.config.gpnp.scanPort=1521 \oracle.install.crs.config.gpnp.configureGNS=false \oracle.install.option=CRS_CONFIG \oracle.install.asm.SYSASMPassword=Oracle19C \oracle.install.asm.monitorPassword=Oracle19C \oracle.install.asm.diskGroup.diskDiscoveryString=/dev/asm_* \oracle.install.asm.diskGroup.disks=/dev/asm_ocr01,/dev/asm_ocr02,/dev/asm_ocr03 \oracle.install.crs.config.gpnp.scanName=jiekexu-racscan \oracle.install.crs.config.clusterName=jiekexu-racscan \oracle.install.crs.config.autoConfigureClusterNodeVIP=false \oracle.install.crs.config.clusterNodes=jiekexu-r1:jiekexu-r1-vip,jiekexu-r2:jiekexu-r2-vip \oracle.install.crs.config.networkInterfaceList=ens32:192.168.75.0:1,ens33:10.10.10.0:5 \oracle.install.asm.configureGIMRDataDG=false \oracle.install.crs.configureRHPS=false \oracle.install.crs.config.ignoreDownNodes=false \oracle.install.config.managementOption=NONE \oracle.install.config.omsPort=0 \oracle.install.crs.rootconfig.executeRootScript=false 


Launching Oracle Grid Infrastructure Setup Wizard...
You can find the logs of this session at:/u01/app/oraInventory/logs/GridSetupActions2021-08-31_06-44-55PM
You can find the log of this install session at: /u01/app/oraInventory/logs/UpdateNodeList2021-08-31_06-44-55PM.logConfiguration failed.[WARNING] [INS-43080] Some of the configuration assistants failed, were cancelled or skipped.   ACTION: Refer to the logs or contact Oracle Support Services.

注意:在 /u01/app/19.0.0/grid/install/response 目录下,新生成了 grid_2021-08-31_02-31-29PM.rsp 响应文件,可以使用新生成的,我这里沿用了前面的配置项也可以。

7.创建磁盘组

创建磁盘组可使用图形化 asmca 创建,也可以使用 asmca -silent 静默创建,更可以使用 SQL 语句创建。

在这里创建3个磁盘组:

OCR: 存放OCR voting 文件。AU size 4MB  ,redundance NORMAL。

DATA : 存放数据文件等。AU size 4MB  ,redundance EXTERNAL 。

ARCH : 存放归档日志和镜像的 ONLINE LOGFILE。redundance EXTERNAL 。

#创建 DATA 磁盘组




asmca -silent -createDiskGroup -sysAsmPassword Oracle_19c -asmsnmpPassword Oracle_19c -oui_internal  -diskString '/dev/asm_\*\' -diskGroupName DATA -diskList /dev/asm_data01,/dev/asm_data02 -redundancy EXTERNAL -au_size 4 -compatible.asm 19.0.0.0.0
[INFO] [DBT-30001] Disk groups created successfully. Check /u01/app/grid/cfgtoollogs/asmca/asmca-210902AM105901.log for details.

查看创建日志发现执行了以下的创建 SQL 语句,并且两节点均已挂载。




ALTER SYSTEM SET asm_diskstring='/dev/asm_' SID='';select name from v$parameter where isdefault='FALSE'union select name from v$system_parameter where ismodified='MODIFIED';CREATE DISKGROUP DATA EXTERNAL REDUNDANCY  DISK '/dev/asm_data01' SIZE 10240M   DISK '/dev/asm_data02' SIZE 10240M  ATTRIBUTE 'compatible.asm'='19.0.0.0.0','compatible.advm'='19.0.0.0','au_size'='4M';

#创建 ARCH 磁盘组


asmca -silent -createDiskGroup -sysAsmPassword Oracle_19c -asmsnmpPassword Oracle_19c -oui_internal  -diskString '/dev/asm_*' -diskGroupName ARCH -diskList /dev/asm_arch01 -redundancy EXTERNAL -au_size 4 -compatible.asm 19.0.0.0.0

以下是官方文档 SQL 创建磁盘组示例:





ExampleCreating the FRA disk groupCREATE DISKGROUP fra NORMAL REDUNDANCY  DISK '/devices/diskc*';  CREATE DISKGROUP data external REDUNDANCY  DISK '/dev/asmdisks/asm-data'  ATTRIBUTE 'au_size'='4M',    'compatible.asm' = '19.0',     'compatible.rdbms' = '19.0',    'compatible.advm' = '19.0';CREATE DISKGROUP fra external REDUNDANCY  DISK '/dev/asmdisks/asm-fra'  ATTRIBUTE 'au_size'='4M',    'compatible.asm' = '19.0',     'compatible.rdbms' = '19.0',    'compatible.advm' = '19.0';

图形化创建比较简单就不演示了;创建完磁盘组后,检查磁盘组 DATA 兼容性.















su - grid sqlplus / as sysasmselect GROUP_NUMBER,name,value from v$asm_attribute where GROUP_NUMBER=2 and name like 'compatible%';
GROUP_NUMBER NAME               VALUE
------------ ------------------ ------------------------------
          2 compatible.asm     19.0.0.0.0           2 compatible.rdbms   10.1.0.0.0           2 compatible.advm    19.0.0.0.0
修改兼容性ALTER DISKGROUP DATA SET ATTRIBUTE 'compatible.rdbms' = '19.0.0.0.0';

8.安装 DB 软件

8.1 修改软件包权限并解压




[root@jiekexu-r1 soft]# chown oracle:oinstall LINUX.X64_193000_db_home.zip[root@jiekexu-r1 soft]# chown -R oracle:oinstall OPatch$ unzip LINUX.X64_193000_db_home.zip -d $ORACLE_HOME

8.2 替换 OPatch





mv $ORACLE_HOME/OPatch $ORACLE_HOME/OPatch.bakcp -r OPatch $ORACLE_HOME$ opatch version OPatch Version: 12.2.0.1.25OPatch succeeded.

8.3 使用 RU 静默安装 DB 软件




























${ORACLE_HOME}/runInstaller -hUsage:  runInstaller [] [Following are the possible flags:         -help - 显示帮助。        -silent - 在无提示模式下运行。输入内容可以是一个响应文件, 也可以是命令行变量值对的列表。                [-ignorePrereqFailure - 忽略所有先决条件检查失败。]        -responseFile - 指定要使用的响应文件的完整路径。        -logLevel - 根据此参数所提供的优先级启用消息日志。有效选项包括: 严重, 警告, 信息, 配置, 详细, 较为详细, 非常详细。        -executePrereqs | -executeConfigTools | -createGoldImage        -executePrereqs - 仅执行先决条件检查。        -executeConfigTools - 对安装的主目录执行配置工具。        -createGoldImage - 从当前 Oracle 主目录创建 Gold Image。                -destinationLocation - 指定将存放所创建 Gold Image 的位置的完整路径。                [-exclFiles - 指定要从新 Gold Image 中排除的文件的完整路径。]        -debug - 在调试模式下运行。        -printdiskusage - 记录有关磁盘使用情况的调试信息。        -printmemory - 记录有关内存使用情况的调试信息。        -printtime - 记录有关时间使用情况的调试信息。        -waitForCompletion - 等待安装完成, 而不是衍生安装程序并返回控制台提示符。        -noconfig - 不执行配置工具。        -noconsole - 禁止在控制台中显示消息。不分配控制台。        -ignoreInternalDriverError - 忽略任何内部驱动程序错误。        -noCopy - 执行配置, 但不将软件复制到远程节点。        -applyRU - 将发行版更新应用于 Oracle 主目录。        -applyOneOffs - 将一次性补丁程序应用于 Oracle 主目录。多个一次性补丁程序可以采用逗号分隔的位置列表格式传递。
db 响应文件位置 $ORACLE_HOME/install/response/db_install.rsp
















$ORACLE_HOME/runInstaller -ignorePrereq -waitforcompletion -silent -applyRU /home/soft/32900083/32895426 \-responseFile  $ORACLE_HOME/install/response/db_install.rsp \oracle.install.option=INSTALL_DB_SWONLY \ORACLE_HOSTNAME=/u01/app/oraInventory \UNIX_GROUP_NAME=oinstall \INVENTORY_LOCATION=/u01/app/oraInventory \ORACLE_HOME=/u01/app/oracle/product/19.0.0/dbhome_1 \ORACLE_BASE=/u01/app/oracle \oracle.install.db.InstallEdition=EE \oracle.install.db.OSDBA_GROUP=dba \oracle.install.db.OSOPER_GROUP=oper \oracle.install.db.OSBACKUPDBA_GROUP=backupdba \oracle.install.db.OSDGDBA_GROUP=dgdba \oracle.install.db.OSKMDBA_GROUP=kmdba \oracle.install.db.OSRACDBA_GROUP=racdba \oracle.install.db.CLUSTER_NODES=jiekexu-r1,jiekexu-r2

8.3.1 卸载 DB 软件

卸载 DB 软件很简单 $ORACLE_HOME/deinstall/deinstall  根据提示先回车 然后 y 继续,等待一会儿则卸载完毕,dbhome 清理完成。再次安装时需要新建,然后解压软件。



mkdir -p /u01/app/oracle/product/19.0.0/dbhome_1unzip LINUX.X64_193000_db_home.zip -d $ORACLE_HOME

8.4 静默创建实例

字符集为 32UTF8

DBCA 建库

非容器数据库创建方法:



















dbca -silent -createDatabase \ -templateName General_Purpose.dbc \ -gdbname JiekeXu -responseFile NO_VALUE \ -characterSet AL32UTF8 \ -sysPassword Oracle19c \ -systemPassword Oracle19c \ -createAsContainerDatabase false \ -databaseType MULTIPURPOSE \ -automaticMemoryManagement false \ -totalMemory 8192 \ -redoLogFileSize 1024 \ -emConfiguration NONE \ -ignorePreReqs \ -nodelist jiekexu-r1,jiekexu-r2 \ -storageType ASM \ -diskGroupName +DATA \ -asmsnmpPassword Oracle19c \ -recoveryAreaDestination  NONE

PDB容器数据库创建方法:






















dbca -silent -createDatabase \ -templateName General_Purpose.dbc \ -gdbname JiekeXu -responseFile NO_VALUE \ -characterSet AL32UTF8 \ -sysPassword Oracle_19C \ -systemPassword Oracle_19C \ -createAsContainerDatabase true \ -numberOfPDBs 1 \ -pdbName JiekeXupdb1 \ -pdbAdminPassword Oracle_19C \ -databaseType MULTIPURPOSE \ -automaticMemoryManagement false \ -totalMemory 1500 \ -redoLogFileSize 200 \ -emConfiguration NONE \ -ignorePreReqs \ -nodelist jiekexu-r1,jiekexu-r2  \ -storageType ASM \ -diskGroupName +DATA \ -asmsnmpPassword Oracle_19C \ -recoveryAreaDestination  NONE

本次创建容器数据库。





























[root@jiekexu-r1 ~]# tail -f /u01/app/oracle/cfgtoollogs/dbca/JiekeXu/JiekeXu.log[ 2021-09-02 16:26:50.800 CST ] Prepare for db operationDBCA_PROGRESS : 7%[ 2021-09-02 16:27:27.683 CST ] Copying database filesDBCA_PROGRESS : 27%[ 2021-09-02 16:30:53.347 CST ] Creating and starting Oracle instanceDBCA_PROGRESS : 28%DBCA_PROGRESS : 31%DBCA_PROGRESS : 35%DBCA_PROGRESS : 37%DBCA_PROGRESS : 40%[ 2021-09-02 17:10:05.458 CST ] Creating cluster database viewsDBCA_PROGRESS : 41%DBCA_PROGRESS : 53%[ 2021-09-02 17:11:35.673 CST ] Completing Database CreationDBCA_PROGRESS : 57%DBCA_PROGRESS : 59%DBCA_PROGRESS : 60%[ 2021-09-02 17:21:42.870 CST ] Creating Pluggable DatabasesDBCA_PROGRESS : 64%DBCA_PROGRESS : 80%[ 2021-09-02 17:22:41.957 CST ] Executing Post Configuration ActionsDBCA_PROGRESS : 100%[ 2021-09-02 17:22:41.971 CST ] Database creation complete. For details check the logfiles at: /u01/app/oracle/cfgtoollogs/dbca/JiekeXu.Database Information:Global Database Name:JiekeXuSystem Identifier(SID) Prefix:JiekeXu

到达 31% 则比较慢,半小时多没有反应,关闭微信、浏览器等其他软件后总共花费 56 分钟完成。

8.4.1 静默删除实例

静默删除数据库实例


dbca -silent -deleteDatabase -sourceDB JiekeXu -sysDBAUserName SYS -sysDBAPassword Oracle19c

8.5 数据库状态检查

8.5.1集群状态查看































































jiekexu-r1:/home/grid(+ASM1)$ crsctl status res -t 
Name           Target  State        Server                   State details      
Local Resources
ora.LISTENER.lsnr               ONLINE  ONLINE       jiekexu-r1               STABLE               ONLINE  ONLINE       jiekexu-r2               STABLEora.chad               ONLINE  ONLINE       jiekexu-r1               STABLE               ONLINE  ONLINE       jiekexu-r2               STABLEora.net1.network               ONLINE  ONLINE       jiekexu-r1               STABLE               ONLINE  ONLINE       jiekexu-r2               STABLEora.ons               ONLINE  ONLINE       jiekexu-r1               STABLE
              ONLINE  ONLINE       jiekexu-r2               STABLE
Cluster Resources
ora.ARCH.dg(ora.asmgroup)      1        ONLINE  ONLINE       jiekexu-r1               STABLE      2        ONLINE  ONLINE       jiekexu-r2               STABLEora.ASMNET1LSNR_ASM.lsnr(ora.asmgroup)      1        ONLINE  ONLINE       jiekexu-r1               STABLE      2        ONLINE  ONLINE       jiekexu-r2               STABLEora.DATA.dg(ora.asmgroup)      1        ONLINE  ONLINE       jiekexu-r1               STABLE      2        ONLINE  ONLINE       jiekexu-r2               STABLEora.LISTENER_SCAN1.lsnr      1        ONLINE  ONLINE       jiekexu-r2               STABLEora.OCR.dg(ora.asmgroup)      1        ONLINE  ONLINE       jiekexu-r1               STABLE      2        ONLINE  ONLINE       jiekexu-r2               STABLEora.asm(ora.asmgroup)      1        ONLINE  ONLINE       jiekexu-r1               Started,STABLE      2        ONLINE  ONLINE       jiekexu-r2               Started,STABLEora.asmnet1.asmnetwork(ora.asmgroup)      1        ONLINE  ONLINE       jiekexu-r1               STABLE      2        ONLINE  ONLINE       jiekexu-r2               STABLEora.cvu      1        ONLINE  ONLINE       jiekexu-r2               STABLEora.jiekexu-r1.vip      1        ONLINE  ONLINE       jiekexu-r1               STABLEora.jiekexu-r2.vip      1        ONLINE  ONLINE       jiekexu-r2               STABLEora.jiekexu.db      1        ONLINE  ONLINE       jiekexu-r1               Open,HOME=/u01/app/o                                                                                      racle/product/19.0.0                                                                                      /dbhome_1,STABLE      2        ONLINE  ONLINE       jiekexu-r2               Open,HOME=/u01/app/o                                                                                      racle/product/19.0.0                                                                                      /dbhome_1,STABLEora.qosmserver      1        ONLINE  ONLINE       jiekexu-r2               STABLEora.scan1.vip
     1        ONLINE  ONLINE       jiekexu-r2               STABLE
jiekexu-r1:/home/grid(+ASM1)$


8.5.2 监听状态查看

8.5.3 数据库信息查看


























































jiekexu-r1:/home/oracle(JiekeXu1)$  sqlplus / as sysdba 
SQL*Plus: Release 19.0.0.0.0 - Production on Thu Sep 2 18:05:30 2021Version 19.12.0.0.0
Copyright (c) 1982, 2021, Oracle.  All rights reserved.

Connected to:Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - ProductionVersion 19.12.0.0.0
SQL> set line  240 col HOST_NAME for a30 SQL> SQL> select INSTANCE_NAME,HOST_NAME,VERSION,STARTUP_TIME,STATUS from gv$instance; SQL> INSTANCE_NAME    HOST_NAME                      VERSION           STARTUP_TIME        STATUS
---------------- ------------------------------ ----------------- ------------------- ------------
JiekeXu1         jiekexu-r1                     19.0.0.0.0        2021-09-02 17:20:52 OPENJiekeXu2         jiekexu-r2                     19.0.0.0.0        2021-09-02 17:20:57 OPEN
Elapsed: 00:00:00.02SQL>  col status for a10SQL>  col action for a10SQL>  col action_time for a30SQL>  col description for a60SQL>  select patch_id,patch_type,action,status,action_time,description from dba_registry_sqlpatch;

 PATCH_ID PATCH_TYPE ACTION     STATUS     ACTION_TIME                    DESCRIPTION
---------- ---------- ---------- ---------- ------------------------------ ------------------------------------------------------------
 32904851 RU         APPLY      SUCCESS    02-SEP-21 05.05.15.051185 PM   Database Release Update : 19.12.0.0.210720 (32904851)
SQL> SQL> show pdbs
   CON_ID CON_NAME                       OPEN MODE  RESTRICTED
---------- ------------------------------ ---------- ----------
        2 PDB$SEED                       READ ONLY  NO         3 JIEKEXUPDB1                    READ WRITE NO
SQL>  col version for a25SQL>  col comments for a80SQL>  select ACTION_TIME,VERSION,COMMENTS from dba_registry_history;
ACTION_TIME                    VERSION                   COMMENTS
------------------------------ ------------------------- --------------------------------------------------------------------------------
                              19                        RDBMS_19.12.0.0.0DBRU_LINUX.X64_210715
02-SEP-21 05.02.53.625968 PM   19.0.0.0.0                Patch applied from 19.3.0.0.0 to 19.12.0.0.0: Release_Update - 210716141810

8.5.4 连接测试



































SQL> col File_Name for a88col Con_Name for a16set pages 345with Containers as (select PDB_ID Con_ID, PDB_Name Con_Name from DBA_PDBs  union  select 1 Con_ID, 'CDB$ROOT' Con_Name from Dual)  select Con_ID,Con_Name "Con_Name",Tablespace_Name "T'space_Name",File_Name "File_Name"  from CDB_Data_Files inner join Containers using (Con_ID)  union  select Con_ID,Con_Name "Con_Name",Tablespace_Name "T'space_Name",File_Name "File_Name"  from CDB_Temp_Files inner join Containers using (Con_ID)  order by 1, 3;


   CON_ID Con_Name         T'space_Name                   File_Name
---------- ---------------- ------------------------------ ----------------------------------------------------------------------------------------
        1 CDB$ROOT         SYSAUX                         +DATA/JIEKEXU/DATAFILE/sysaux.258.1082219405         1 CDB$ROOT         SYSTEM                         +DATA/JIEKEXU/DATAFILE/system.257.1082219301         1 CDB$ROOT         TEMP                           +DATA/JIEKEXU/TEMPFILE/temp.264.1082219523         1 CDB$ROOT         UNDOTBS1                       +DATA/JIEKEXU/DATAFILE/undotbs1.259.1082219451         1 CDB$ROOT         UNDOTBS2                       +DATA/JIEKEXU/DATAFILE/undotbs2.269.1082221805         1 CDB$ROOT         USERS                          +DATA/JIEKEXU/DATAFILE/users.260.1082219453         3 JIEKEXUPDB1      SYSAUX                         +DATA/JIEKEXU/CB00B60A29FFA77AE053814BA8C06D60/DATAFILE/sysaux.275.1082222507         3 JIEKEXUPDB1      SYSTEM                         +DATA/JIEKEXU/CB00B60A29FFA77AE053814BA8C06D60/DATAFILE/system.274.1082222507         3 JIEKEXUPDB1      TEMP                           +DATA/JIEKEXU/CB00B60A29FFA77AE053814BA8C06D60/TEMPFILE/temp.276.1082222513         3 JIEKEXUPDB1      UNDOTBS1                       +DATA/JIEKEXU/CB00B60A29FFA77AE053814BA8C06D60/DATAFILE/undotbs1.273.1082222507         3 JIEKEXUPDB1      UNDO_2                         +DATA/JIEKEXU/CB00B60A29FFA77AE053814BA8C06D60/DATAFILE/undo_2.277.1082222553         3 JIEKEXUPDB1      USERS                          +DATA/JIEKEXU/CB00B60A29FFA77AE053814BA8C06D60/DATAFILE/users.278.1082222557
12 rows selected.

8.6 SQL 连接提示符修改

















cd $ORACLE_HOME/sqlplus/adminvi glogin.sqlset linesize 250set pagesize 9999col Name format a80col owner format a30col file_name for a88set termout offALTER SESSION SET nls_date_format = 'yyyy-mm-dd HH24:MI:SS';set termout onset serveroutput on size 1000000set long 2000set time onset timing ondefine _editor=viset sqlprompt "_user'@'_connect_identifier> "

8.7 安装 rlwrap

*安装 rlwrap 包实现 sqlplus 历史命令上下翻转回退等操作。*

先使用 yum 安装 readline(一定要安装成功) 然后编译安装 rlwrap




















下载 https://github.com/hanslub42/rlwrap/releases
# yum install -y readline*# tar -zxvf  rlwrap-0.45.2.tar.gz# cd rlwrap-0.45.2# ./configure && make && make install添加 oracle 用户环境变量# su - oracle $ cat <>/home/oracle/.bash_profilealias sqlplus='rlwrap sqlplus'alias rman='rlwrap rman'alias lsnrctl='rlwrap lsnrctl'alias asmcmd='rlwrap asmcmd'alias adrci='rlwrap adrci'alias ggsci='rlwrap ggsci'alias sas=’sqlplus / as sysdba’EOF
$ . .bash_profile --生效

Linux 64 位 19.12 RU :https://www.modb.pro/download/137693

Linux 64 位 RAC 安装包:https://www.modb.pro/download/5713


吐血整理,实属不易,原作者更加辛苦,如认真阅读,此文一定对您有帮助,欢迎点赞、在看与转发,写作不易,坚持写作更不易,您的点赞、转发,举手之劳,便是对作者最大的支持,也能让更多的人受益,感谢!

——————————————————————--—--————

公众号:JiekeXu DBA之路
墨天轮:https://www.modb.pro/u/4347
CSDN :https://blog.csdn.net/JiekeXu
腾讯云:https://cloud.tencent.com/developer/user/5645107

————————————————————————----———



2021年7月国产数据库排行榜:openGauss高歌猛进,GBase持续下跌

Oracle 12c 及以上版本补丁更新说明及下载方法(收藏版)

Oracle 19c 19.10DBRU 最新补丁升级看这一篇就够了

Redhat 7.7 安装最新版 MongoDB 5.0.1 手册

ASM 管理的内部工具:KFED、KFOD、AMDU

性能优化|关于数据库历史性能问题的一道面试题

一线运维 DBA 五年经验常用 SQL 大全(二)

ORA-00349|激活 ADG 备库时遇到的问题

Oracle 轻量级实时监控工具 oratop

MySQL OCP 认证考试你知道吗?

Oracle 19C RAC 安装遇到的坑

国产数据库|TiDB 5.0 快速体验

Oracle 19C MAA 搭建指南

Oracle 每日一题系列合集

百花齐放的国产数据库


请使用浏览器的分享功能分享到微信等