评论

收藏

[Oracle] 基于CentOS7.8操作系统一步一步搭建Oracle 21c rac集群环境

数据库 数据库 发布于:2021-11-15 16:13 | 阅读数:866 | 评论:0

[toc]
DSC0000.png

参考:https://www.xmmup.com/zaicentos7-8shanganzhuangoracle-jiqunrac-21cxiangxiwanzhengban.html
一、rac安装规划
官网安装过程:https://docs.oracle.com/en/database/oracle/oracle-database/21/rilin/index.html

1.1、所需软件介绍
Oracle RAC不支持异构平台。在同一个集群中,可以支持具有速度和规模不同的机器,但所有节点必须运行在相同的操作系统。Oracle RAC不支持具有不同的芯片架构的机器。
序号类型内容MD51数据库LINUX.X64_213000_db_home.zip8ac915a800800ddf16a382506d3953db2集群软件LINUX.X64_213000_grid_home.zipb3fbdb7621ad82cbd4f40943effdd1be3操作系统CentOS-7.8-x86_64-DVD-2003.iso16673979023254EA09CC0B57853A7BBD4虚拟机软件VMware Workstation Pro 16.0.0 build-168942995Xmanager Enterprise 4Xmanager Enterprise 4,用于打开图形界面6SecureCRTPortable.exeVersion 6.6.1 (build 289)  ,带有SecureCRT和SecureFX,用于SSH连接和FTP上传
备注:
1、OS内存至少8G
2、安装OS和数据库前需要对下载好的安装包进行MD5值校验,检查其完整性


  • 21c数据库软件下载可以参考:https://www.xmmup.com/dbbao76zaidockerzhongzhixu2bujikeyongyouoracle-21chuanjing.html

1.2、IP地址规划
从Oracle 11g开始,一共至少7个IP地址,2块网卡,其中public、vip和scan都在同一个网段,private在另一个网段,主机名不要包含下横线,如:RAC_01是不允许的;通过执行ifconfig -a检查2个节点的网卡名称必须一致。另外,在安装之前,公网、私网共4个IP可以ping通,其它3个不能ping通才是正常的。
从18c开始,scan建议至少3个。
节点/主机名IP AddressInterface Name地址类型注册位置虚拟网卡适配器操作系统网卡raclhr-21c-n1192.168.59.62raclhr-21c-n1Public/etc/hostsVMnet8(nat模式)ens33raclhr-21c-n1192.168.59.64raclhr-21c-n1-vipVirtual/etc/hostsVMnet8(nat模式)ens33raclhr-21c-n1192.168.2.62raclhr-21c-n1-privPrivate/etc/hostsVMnet2(仅主机模式)ens34raclhr-21c-n2192.168.59.63raclhr-21c-n2Public/etc/hostsVMnet8(nat模式)ens33raclhr-21c-n2192.168.59.65raclhr-21c-n2-vipVirtual/etc/hostsVMnet8(nat模式)ens33raclhr-21c-n2192.168.2.63raclhr-21c-n2-privPrivate/etc/hostsVMnet2(仅主机模式)ens34192.168.59.66<br />192.168.59.67<br />192.168.59.68raclhr-21c-scanSCAN/etc/hostsVMnet8(nat模式)ens33
1.3、操作系统本地磁盘分区规划
除了/boot分区外,其它分区均采用逻辑卷的方式,这样有利于文件系统的扩展。
序号分区名称大小逻辑卷用途说明1/u0150G/dev/mapper/vg_orasoft-lv_orasoft_u01oracle和grid的安装目录2/soft20G/dev/mapper/VG_OS-lv_VG_OS_soft存储软件,至少10G
1.4、共享存储与ASM磁盘组规划
序号ASM磁盘名称磁盘组名称冗余方式大小用途备注1/dev/asm-diskd<br />/dev/asm-diske<br />/dev/asm-diskfOCRNormal3GOCR+VOTINGDISK最少1G2/dev/asm-diskg<br />/dev/asm-diskh<br />/dev/asm-diskiMGMTExternal30GMGMT最少30G,可以选择不安装GIMR组件3/dev/asm-diskj<br />/dev/asm-diskk<br />/dev/asm-dislDATAExternal45G存储数据库数据文件4/dev/asm-diskm<br />/dev/asm-diskn<br />/dev/asm-diskoFRAExternal30G快速恢复区二、操作系统配置
若无特殊说明,那么以下操作在2个节点均需要执行。

2.1、准备OS
安装步骤略,也可以下载小麦苗已经安装好的虚拟机环境:https://www.xmmup.com/ziliaofenxiang.html
安装一台虚拟机,然后复制改名,如下:
DSC0001.png

用虚拟机软件打开:
DSC0002.png


2.2、添加网卡
首先,需要添加网卡适配器:
VMnet2如下:
DSC0003.png

VMnet8如下:
DSC0004.png

网关为:192.168.59.2,如下所示:
DSC0005.png

先删除再添加,添加2块网卡,VMnet8为公有网卡,VMnet2为私有网卡,如下所示:
DSC0006.png

打开后,选择我已复制该虚拟机。
DSC0007.png


2.3、修改主机名
修改2个节点的主机名为raclhr-21c-n1和raclhr-21c-n2:
set-hostname raclhr-21c-n1
hostnamectl set-hostname raclhr-21c-n2
2.4、配置静态IP地址
在2个节点上分别配置静态IP地址。
在节点2上配置IP的时候注意将IP地址(IPADDR)修改掉。需要确保2个节点上的网卡MAC地址不一样,否则节点间不能通信。
2.4.1、修改mac地址
使用ifconfig或ip link show查看mac地址,修改文件/etc/udev/rules.d/70-persistent-ipoib.rules
&gt; /etc/udev/rules.d/70-persistent-ipoib.rules &lt;&lt;"EOF"
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:25:83:db", ATTR{type}=="1", KERNEL=="eth*", NAME="ens33"
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:25:83:e5", ATTR{type}=="1", KERNEL=="eth*", NAME="ens34"
EOF
2.4.2、配置静态IP地址
注意修改IPADDR和HWADDR地址。
1、配置公网:/etc/sysconfig/network-scripts/ifcfg-ens33
&gt; /etc/sysconfig/network-scripts/ifcfg-ens33 &lt;&lt;"EOF"
DEVICE=ens33
NAME=ens33
IPADDR=192.168.59.62
NETMASK=255.255.255.0
GATEWAY=192.168.59.2
ONBOOT=yes
USERCTL=no
BOOTPROTO=static
HWADDR=00:0c:29:25:83:db
TYPE=Ethernet
IPV6INIT=no
DNS1=114.114.114.114
DNS2=8.8.8.8
NM_CONTROLLED=no
EOF
2、配置私网:/etc/sysconfig/network-scripts/ifcfg-ens34 。注意第二块网卡不能配置网关,否则系统默认网关就变成了第二块网卡的网关,从而导致系统不能上外网。
&gt; /etc/sysconfig/network-scripts/ifcfg-ens34 &lt;&lt;"EOF"
DEVICE=ens34
NAME=ens34
IPADDR=192.168.2.62
NETMASK=255.255.255.0
ONBOOT=yes
USERCTL=no
BOOTPROTO=static
HWADDR=00:0c:29:25:83:e5
TYPE=Ethernet
IPV6INIT=no
DNS1=114.114.114.114
DNS2=8.8.8.8
NM_CONTROLLED=no
EOF
该部分内容做完后,可以重启一次OS。

2.5、关闭防火墙
disable firewalld
systemctl stop firewalld
systemctl status firewalld
systemctl list-unit-files | grep fire
2.6、禁用selinux
手工修改/etc/selinux/config的SELINUX=disabled,或使用下面命令:
-i '/^SELINUX=.*/ s//SELINUX=disabled/' /etc/selinux/config
重启才能生效,校验:
[root@raclhr-21c-n1 ~]# getenforce 
Disabled
2.7、修改/etc/hosts文件
增加如下的内容:
#Public IP
192.168.59.62      raclhr-21c-n1
192.168.59.63      raclhr-21c-n2
#Private IP
192.168.2.62       raclhr-21c-n1-priv
192.168.2.63       raclhr-21c-n2-priv
#Virtual IP
192.168.59.64      raclhr-21c-n1-vip
192.168.59.65      raclhr-21c-n2-vip
#Scan IP
192.168.59.66      raclhr-21c-scan
192.168.59.67      raclhr-21c-scan
192.168.59.68      raclhr-21c-scan
注意:需要保留127.0.0.1   localhost这行。

2.8、添加组和用户
-g 54321 oinstall  
groupadd -g 54322 dba  
groupadd -g 54323 oper  
groupadd -g 54324 backupdba  
groupadd -g 54325 dgdba  
groupadd -g 54326 kmdba  
groupadd -g 54327 asmdba  
groupadd -g 54328 asmoper  
groupadd -g 54329 asmadmin  
groupadd -g 54330 racdba
useradd -u 54321 -g oinstall -G dba,asmdba,backupdba,dgdba,kmdba,racdba,oper oracle  
useradd -u 54322 -g oinstall -G asmadmin,asmdba,asmoper,dba,racdba grid  
echo lhr | passwd --stdin oracle
echo lhr | passwd --stdin grid
2.9、创建安装目录
2.9.1、挂载/u01目录
首先,在2个节点都各自添加一块200g大小的磁盘:
DSC0008.png

然后做卷组,200g磁盘大约分10个PE,每个PE大约20g:
内容太多,放不下,部分内容有所删减,全文可以参考:https://www.xmmup.com/zaicentos7-8shanganzhuangoracle-jiqunrac-21cxiangxiwanzhengban.html
分区完成后,开始创建逻辑卷,挂载分区等操作:
/dev/sdc1 /dev/sdc2 /dev/sdc3 /dev/sdc5 /dev/sdc6 /dev/sdc7 /dev/sdc8 /dev/sdc9 /dev/sdc10 /dev/sdc11
vgcreate vg_oracle /dev/sdc1 /dev/sdc2 /dev/sdc3 /dev/sdc5 /dev/sdc6 /dev/sdc7 /dev/sdc8 /dev/sdc9 /dev/sdc10 /dev/sdc11
lvcreate -n lv_orasoft_u01 -L 60G vg_oracle
mkfs.ext4 /dev/vg_oracle/lv_orasoft_u01
mkdir /u01
mount /dev/vg_oracle/lv_orasoft_u01 /u01
echo "/dev/vg_oracle/lv_orasoft_u01 /u01  ext4 defaults 0 0" &gt;&gt; /etc/fstab
查询:
[root@raclhr-21c-n1 ~]# df -h
Filesystem              Size  Used Avail Use% Mounted on
devtmpfs                3.9G   0  3.9G   0% /dev
tmpfs                 3.9G   0  3.9G   0% /dev/shm
tmpfs                 3.9G   13M  3.9G   1% /run
tmpfs                 3.9G   0  3.9G   0% /sys/fs/cgroup
/dev/mapper/centos_lhrdocker-root    50G  5.0G   42G  11% /
/dev/sda1               976M  143M  767M  16% /boot
/dev/mapper/centos_lhrdocker-home   9.8G   41M  9.2G   1% /home
/dev/mapper/vg_docker-lv_docker     788G   73M  748G   1% /var/lib/docker
tmpfs                 797M   12K  797M   1% /run/user/42
tmpfs                 797M   0  797M   0% /run/user/0
/dev/mapper/vg_oracle-lv_orasoft_u01   59G   53M   56G   1% /u01
2.9.2、创建目录
-p /u01/app/21.3.0/grid
mkdir -p /u01/app/grid
mkdir -p /u01/app/oracle
mkdir -p /u01/app/oracle/product/21.3.0/dbhome_1
chown -R grid:oinstall /u01
chown -R oracle:oinstall /u01/app/oracle
chmod -R 775 /u01/
mkdir -p /u01/app/oraInventory
chown -R grid:oinstall /u01/app/oraInventory
chmod -R 775 /u01/app/oraInventory
2.10、配置grid和oracle用户的环境变量文件
oracle用户:
&gt;&gt; /home/oracle/.bash_profile &lt;&lt;"EOF"
umask 022
export ORACLE_SID=rac21c1
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/21.3.0/dbhome_1
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
export NLS_DATE_FORMAT="YYYY-MM-DD HH24:MI:SS"
export TMP=/tmp
export TMPDIR=$TMP
export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/OPatch:$PATH
export EDITOR=vi
export TNS_ADMIN=$ORACLE_HOME/network/admin
export ORACLE_PATH=.:$ORACLE_BASE/dba_scripts/SQL:$ORACLE_HOME/rdbms/admin
export SQLPATH=$ORACLE_HOME/sqlplus/admin
#export NLS_LANG="SIMPLIFIED CHINESE_CHINA.ZHS16GBK" --AL32UTF8 SELECT userenv('LANGUAGE') db_NLS_LANG FROM DUAL;
export NLS_LANG="AMERICAN_CHINA.ZHS16GBK"
alias sqlplus='rlwrap sqlplus'
alias rman='rlwrap rman'
alias asmcmd='rlwrap asmcmd'
alias dgmgrl='rlwrap dgmgrl'
alias sas='sqlplus / as sysdba'
EOF
cat &gt;&gt; /home/grid/.bash_profile &lt;&lt;"EOF"
umask 022
export ORACLE_SID=+ASM1
export ORACLE_BASE=/u01/app/grid
export ORACLE_HOME=/u01/app/21.3.0/grid
export LD_LIBRARY_PATH=$ORACLE_HOME/lib
export NLS_DATE_FORMAT="YYYY-MM-DD HH24:MI:SS"
export PATH=$ORACLE_HOME/bin:$PATH
alias sqlplus='rlwrap sqlplus' 
alias asmcmd='rlwrap asmcmd'
alias dgmgrl='rlwrap dgmgrl'
alias sas='sqlplus / as sysdba'
EOF
注意:另外一台数据库实例名须做相应修改:
Oracle:export  ORACLE_SID=rac21c2
grid:export ORACLE_SID=+ASM2

2.11、配置root用户的环境变量
&gt;&gt; /etc/profile &lt;&lt;"EOF"
export ORACLE_BASE=/u01/app/grid
export ORACLE_HOME=/u01/app/21.3.0/grid
export GRID_BASE=$ORACLE_BASE
export GRID_HOME=$ORACLE_HOME
export PATH=$PATH:$ORACLE_HOME/bin
EOF
2.12、安装软件依赖包
安装一些常用的包:
install -y openssh-clients openssh-server initscripts  net-tools telnet which wget \
  passwd e4fsprogs lrzsz sudo unzip lvm2 tree traceroute lsof file tar systemd \
  bridge-utils mlocate mailx strace less mmv stress
yum install -y dos2unix rlwrap xdpyinfo xorg-x11-apps nmap numactl numactl-devel \
  iproute rsyslog bash-completion tmux sysbench vim redhat-lsb smartmontools xinetd \
  gcc  make  sysstat ksh binutils socat cmake automake autoconf bzr bison libtool deltarpm \
  rsync libev pv subversion nload gnuplot jq oniguruma yum-fastestmirror net-snmp net-snmp-utils \
  nfs-utils rpcbind  postfix dovecot bind-utils bind bind-chroot dnsmasq haproxy keepalived bzr \
  fio bzip2 ntp flex lftp
yum install -y ncurses-devel libgcrypt-devel libaio libaio-devel \
  perl perl-Env perl-devel  perl-Time-HiRes perl-DBD-MySQL perl-ExtUtils-MakeMaker perl-TermReadKey \
  perl-Config-Tiny perl-Email-Date-Format perl-Log-Dispatch perl-Mail-Sender perl-Mail-Sendmail \
  perl-MIME-Lite perl-Parallel-ForkManager perl-Digest-MD5 perl-ExtUtils-CBuilder perl-IO-Socket-SSL \
  perl-JSON openssl-devel libverto-devel libsepol-devel libselinux-devel libkadm5 keyutils-libs-devel \
  krb5-devel libcom_err-devel cyrus-sasl* perl-DBD-Pg perf slang perl-DBI  perl-CPAN \
  perl-ExtUtils-eBuilder cpan perl-tests
yum install -y  compat-libstdc++-33 gcc-c++  glibc glibc-common glibc.i686  glibc-devel glibc-devel.i686 \
  libgcc libgcc.i686 libstdc++   libstdc++-devel  libaio.i686   libaio-devel.i686 \
  libXext  libXext.i686  libXtst  libXtst.i686  libX11  libX11.i686  libXau  libXau.i686  \
  libxcb  libxcb.i686  libXi  libXi.i686   unixODBC  unixODBC-devel  zlib-devel  zlib-devel.i686 \
  compat-libcap1 libXp libXp-devel libXp.i686 elfutils-libelf elfutils-libelf-devel compat-db \
  gnome-libs pdksh xscreensaver fontconfig-devel libXrender-devel
 yum remove PackageKit -y
检查:
-q --qf '%{NAME}-%{VERSION}-%{RELEASE} (%{ARCH})\n' binutils \
compat-libcap1 \
compat-libstdc++-33 \
gcc \
gcc-c++ \
glibc \
glibc-devel \
ksh \
libgcc \
libstdc++ \
libstdc++-devel \
libaio \
libaio-devel \
libXext \
libXtst \
libX11 \
libXau \
libxcb \
libXi \
make \
elfutils-libelf-devel \
sysstat  | grep "not installed"
2.13、配置内核参数
2.13.1、修改/etc/sysctl.conf文件
&gt;&gt; /etc/sysctl.conf &lt;&lt;"EOF"
vm.swappiness = 1
vm.dirty_background_ratio = 3
vm.dirty_ratio = 80
vm.dirty_expire_centisecs = 500
vm.dirty_writeback_centisecs = 100
kernel.shmmni = 4096  
kernel.shmall = 1073741824  
kernel.shmmax = 4398046511104
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500 
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576 
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.panic_on_oops = 1
kernel.watchdog_thresh=30
EOF
生效:
/sbin/sysctl -p
2.13.2、修改/etc/security/limits.conf文件
"grid soft nofile 1024
grid hard nofile 65536
grid soft stack 10240
grid hard stack 32768
grid soft nproc 2047
grid hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft stack 10240
oracle hard stack 32768
oracle soft nproc 2047
oracle hard nproc 16384
oracle hard memlock  8145728
oracle soft memlock  8145728
root soft nproc 2047 " &gt;&gt; /etc/security/limits.conf
2.13.3、修改/etc/pam.d/login文件
"session  required   pam_limits.so" &gt;&gt; /etc/pam.d/login
2.13.4、修改/etc/profile文件
&gt;&gt; /etc/profile &lt;&lt; "EOF"
if [ $USER = "oracle" ] || [ $USER = "grid" ]; then
    if [ $SHELL = "/bin/ksh" ]; then
        ulimit -p 16384
        ulimit -n 65536
    else
        ulimit -u 16384 -n 65536
    fi
    umask 022
fi
EOF
2.14、关闭NTP和chrony服务
可以采用操作系统的NTP服务,也可以使用Oracle自带的服务ctss,如果ntp没有启用,那么Oracle会自动启用自己的ctssd进程。
从oracle 11gR2 RAC开始使用Cluster Time Synchronization Service(CTSS)同步各节点的时间,当安装程序发现NTP协议处于非活动状态时,安装集群时间同步服务将以活动模式(active)自动进行安装并同步所有节点的时间。如果发现配置了NTP,则以观察者模式(observer mode)启动集群时间同步服务,Oracle Clusterware不会在集群中进行活动的时间同步。
stop ntpd 
systemctl disable ntpd.service
mv /etc/ntp.conf /etc/ntp.conf.bak
Chrony是一个开源的自由软件,它能帮助你保持系统时钟与时钟服务器(NTP)同步,因此让你的时间保持精确。它由两个程序组成,分别是chronyd和chronyc。chronyd是一个后台运行的守护进程,用于调整内核中运行的系统时钟和时钟服务器同步。它确定计算机增减时间的比率,并对此进行补偿。chronyc提供了一个用户界面,用于监控性能并进行多样化的配置。它可以在chronyd实例控制的计算机上工作,也可以在一台不同的远程计算机上工作。
disable chronyd
systemctl stop chronyd
mv /etc/chrony.conf /etc/chrony.conf_bak
2.15、关闭avahi-daemon
stop avahi-daemon 
systemctl disable avahi-daemon
Avahi允许程序在不需要进行手动网络配置的情况 下,在一个本地网络中发布和获知各种服务和主机。例如,当某用户把他的计算机接入到某个局域网时,如果他的机器运行有Avahi服务,则Avahi程式自动广播,从而发现网络中可用的打印机、共享文件和可相互聊天的其他用户。这有点象他正在接收局域网中的各种网络广告一样。
Linux下系统实际启动的进程名,是avahi-daemon。

2.16、将NOZEROCONF=yes添加到/etc/sysconfig/network文件中
'NOZEROCONF=yes' &gt;&gt; /etc/sysconfig/network
2.17、禁用透明大页
参考:https://www.xmmup.com/linux-biaozhundayehetoumingdaye.html
&gt;&gt; /etc/rc.local &lt;&lt;"EOF"
if test -f /sys/kernel/mm/transparent_hugepage/enabled; then
   echo never &gt; /sys/kernel/mm/transparent_hugepage/enabled
fi
if test -f /sys/kernel/mm/transparent_hugepage/defrag; then
   echo never &gt; /sys/kernel/mm/transparent_hugepage/defrag
fi
EOF
chmod +x /etc/rc.d/rc.local
sh /etc/rc.local
cat /sys/kernel/mm/transparent_hugepage/defrag
cat /sys/kernel/mm/transparent_hugepage/enabled
建议配置大页功能,参考:https://www.xmmup.com/oracleshujukupeizhidaye.html

2.18、停止不用的服务
list-unit-files | grep enable
systemctl stop autofs
systemctl stop nfslock
systemctl stop rpcidmapd
systemctl stop rpcgssd
systemctl stop ntpd
systemctl stop bluetooth.service
systemctl stop cups.path 
systemctl stop cups.socket
systemctl stop postfix.service
systemctl stop rpcbind.service
systemctl stop rpcbind.socket
systemctl stop NetworkManager-dispatcher.service
systemctl stop dbus-org.freedesktop.NetworkManager.service
systemctl stop abrt-ccpp.service
systemctl stop cups.service
systemctl stop libvirtd
systemctl disable autofs
systemctl disable nfslock
systemctl disable rpcidmapd
systemctl disable rpcgssd
systemctl disable ntpd
systemctl disable bluetooth.service
systemctl disable cups.path 
systemctl disable cups.socket
systemctl disable postfix.service
systemctl disable rpcbind.service
systemctl disable rpcbind.socket
systemctl disable NetworkManager-dispatcher.service
systemctl disable dbus-org.freedesktop.NetworkManager.service
systemctl disable abrt-ccpp.service
systemctl disable cups.service
systemctl disable  libvirtd
2.19、提升开关机速度
在centos在关机或开机时一直等待,等待时间久,卡住时间久,提示A stop job is running for ……
解决:
&gt;&gt; /etc/systemd/system.conf &lt;&lt; "EOF"
DefaultTimeoutStartSec=5s
DefaultTimeoutStopSec=5s
EOF
systemctl daemon-reload
三、配置共享存储
参考:https://www.xmmup.com/zaicentos7-8shanganzhuangoracle-jiqunrac-21cxiangxiwanzhengban.html/3

3.1、服务端配置
3.1.1、创建LVM
3.1.2、使用yum安装targetd和targetcli
3.1.3、使用targetcli创建设备
3.1.4、使用targetcli创建iqn和LUN
3.1.5、使用targetcli创建acls
3.1.6、配置target监听IP和端口
3.1.7、保存配置

3.2、客户端配置
3.2.1、安装服务并启动
3.2.2、使用iscsiadm发现可用存储设备并登陆连接
3.2.3、创建并配置udev rules文件
四、数据库软件包准备

4.1、上传安装软件
打开SecureFX软件:
DSC0009.png

复制粘贴数据库文件到/soft目录下并等待上传完成。
注意,对安装包需要进行MD5值校验:
[root@raclhr-21c-n1 ~]# cd /soft
[root@raclhr-21c-n1 soft]# ll
total 5401812
-rw-r--r-- 1 root root 3109225519 Aug 16 09:58 LINUX.X64_213000_db_home.zip
-rw-r--r-- 1 root root 2422217613 Aug 16 09:57 LINUX.X64_213000_grid_home.zip
[root@raclhr-21c-n1 soft]# md5sum LINUX.X64_213000_grid_home.zip 
b3fbdb7621ad82cbd4f40943effdd1be  LINUX.X64_213000_grid_home.zip
[root@raclhr-21c-n1 soft]# md5sum LINUX.X64_213000_db_home.zip 
8ac915a800800ddf16a382506d3953db  LINUX.X64_213000_db_home.zip
4.2、解压软件
grid用户:
LINUX.X64_213000_grid_home.zip  -d /u01/app/21.3.0/grid
oracle用户:
LINUX.X64_213000_db_home.zip -d /u01/app/oracle/product/21.3.0/dbhome_1
只在节点1上进行解压即可。
???? 注意:
1、不要同时进行解压2个文件,否则可能有未预料到的错误
2、需要搜索一下解压是否有报错的地方,搜索关键词“error”
注意:18c解压后的文件所在目录就是grid home。所以解压的时候,就要把文件解压到之前定的GRID_HOME下。在12c R2之前是安装的时候,软件会自动复制过去。
Starting with Oracle Database 18c, the Oracle Database software is available as an image file for download and installation. Extract the image software into the directory where you want your Oracle home to be located, and then run the runInstaller script to start the Oracle Database installation.
Starting with Oracle Database 18c, installation and configuration of Oracle Database software is simplified with Image-Based installation.
五、安装前预检查

5.1、安装补丁包(cvuqdisk)
在安装RAC之前,经常会需要运行集群验证工具CVU(Cluster Verification Utility),该工具执行系统检查,确认当前的配置是否满足要求。
首先判断是否安装了cvuqdisk包:
-qa cvuqdisk
如果没有安装,那么在2个节点上都执行如下命令进行安装该包:
CVUQDISK_GRP=oinstall
cd /u01/app/21.3.0/grid/cv/rpm
rpm -ivh  cvuqdisk-1.0.10-1.rpm
传输到第2个节点上进行安装:
cvuqdisk-1.0.10-1.rpm root@raclhr-21c-n2:/soft
-- 节点2安装cvuqdisk包
export CVUQDISK_GRP=oinstall
rpm -ivh  /soft/cvuqdisk-1.0.10-1.rpm
5.2、配SSH互信,建立ssh等效性
sshUserSetup.sh在GI安装介质解压缩后的sshsetup目录下。下面两条命令在节点1上执行即可,在root用户下执行:
/u01/app/21.3.0/grid/oui/prov/resources/scripts/sshUserSetup.sh -user grid  -hosts "raclhr-21c-n1 raclhr-21c-n2" -advanced exverify -confirm
/u01/app/21.3.0/grid/oui/prov/resources/scripts/sshUserSetup.sh -user oracle  -hosts "raclhr-21c-n1 raclhr-21c-n2" -advanced exverify -confirm
输入yes及密码一路回车即可。
以oracle和grid用户在2个节点上都测试两节点连通性:
raclhr-21c-n1 date
ssh raclhr-21c-n2 date
ssh raclhr-21c-n1-priv date
ssh raclhr-21c-n2-priv date
第二次执行时不再提示输入口令,并且可以成功执行命令,则表示SSH对等性配置成功。

5.3、cluster硬件检测--安装前预检查配置信息
Use Cluster Verification Utility (cvu)
Before installing Oracle Clusterware, use CVU to ensure that your cluster is prepared for an installation:
Oracle provides CVU to perform system checks in preparation for an installation, patch updates, or other system changes. In addition, CVU can generate fixup scripts that can change many kernel parameters to at lease the minimum settings required for a successful installation.
Using CVU can help system administrators, storage administrators, and DBA to ensure that everyone has completed the system configuration and preinstallation steps.
./runcluvfy.sh -help
./runcluvfy.sh stage -pre crsinst -n rac1,rac2 –fixup -verbose
Install the operating system package cvuqdisk to both Oracle RAC nodes. Without cvuqdisk, Cluster Verification Utility cannot discover shared disks, and you will receive the error message "Package cvuqdisk not installed" when the Cluster Verification Utility is run (either manually or at the end of the Oracle grid infrastructure installation). Use the cvuqdisk RPM for your hardware architecture (for example, x86_64 or i386). The cvuqdisk RPM can be found on the Oracle grid infrastructure installation media in the rpm directory. For the purpose of this article, the Oracle grid infrastructure media was extracted to the /home/grid/software/oracle/grid directory on racnode1 as the grid user.
在安装GRID之前,建议先利用CVU(Cluster Verification Utility)检查CRS的安装前环境。以grid用户运行:
- grid
export CVUQDISK_GRP=oinstall
export CV_NODE_ALL=raclhr-21c-n1,raclhr-21c-n2
/u01/app/21.3.0/grid/runcluvfy.sh stage -pre crsinst -allnodes -fixup -verbose -method root
grid安装完成后还可以进行如下校验:
$ORACLE_HOME/bin/cluvfy stage  -pre crsinst -n all  -verbose -fixup
未检测通过的显示为failed,有的failed可以根据提供的脚本进行修复。有的需要根据情况进行修复,有的failed也可以忽略。

  • 报错一:
/dev/shm mounted as temporary file system ...FAILED
raclhr-21c-n2: PRVE-0421 : No entry exists in /etc/fstab for mounting /dev/shm
raclhr-21c-n1: PRVE-0421 : No entry exists in /etc/fstab for mounting /dev/shm
参考:http://blog.itpub.net/26736162/viewspace-2214381
CentOS7和RHEL7在 /etc/fstab中不包含/dev/shm ,可以手动加进去,或者忽略都可以。

  • 报错二:
login manager IPC parameter ...FAILED
raclhr-21c-n2: PRVE-10233 : Systemd login manager parameter 'RemoveIPC' entry
         does not exist or is commented out in the configuration file
         "/etc/systemd/logind.conf" on node "raclhr-21c-n2".
         [Expected="no"]
raclhr-21c-n1: PRVE-10233 : Systemd login manager parameter 'RemoveIPC' entry
         does not exist or is commented out in the configuration file
         "/etc/systemd/logind.conf" on node "raclhr-21c-n1".
         [Expected="no"]
参考:http://blog.itpub.net/29371470/viewspace-2125673/
解决:
"RemoveIPC=no" &gt;&gt; /etc/systemd/logind.conf
systemctl daemon-reload
systemctl restart systemd-logind

  • 报错三:
Time Protocol (NTP) ...FAILED
raclhr-21c-n2: PRVG-1017 : NTP configuration file "/etc/ntp.conf" is present on
         nodes "raclhr-21c-n2,raclhr-21c-n1" on which NTP daemon or
         service was not running
raclhr-21c-n1: PRVG-1017 : NTP configuration file "/etc/ntp.conf" is present on
         nodes "raclhr-21c-n2,raclhr-21c-n1" on which NTP daemon or
         service was not running
我们使用ctssd来同步集群的时间,所以ntp必须关闭。
六、图形界面安装集群和db
安装之前重启一次OS,并检查网络和共享盘是否正确。
首先,打开Xmanager - Passive,如下:
DSC00010.png


6.1、安装grid
注意:以grid用户登录,然后运行下面这个脚本,和之前版本的grid安装有所不同:
[grid@raclhr-21c-n1 ~]$ export DISPLAY=192.168.59.1:0.0
[grid@raclhr-21c-n1 ~]$ /u01/app/21.3.0/grid/gridSetup.sh
Launching Oracle Grid Infrastructure Setup Wizard...
DSC00011.png

DSC00012.png

DSC00013.png

DSC00014.png

点击add添加节点2后,点击next
DSC00015.png

DSC00016.png

默认选中了不安装GIMR,我们也暂时不安装MIMR库:
DSC00017.png

DSC00018.png

DSC00019.png

修改磁盘路径为“/dev/asm*”就可以找到ASM磁盘了。
DSC00020.png

DSC00021.png

DSC00022.png

DSC00023.png

DSC00024.png

DSC00025.png

DSC00026.png

DSC00027.png

忽悠所有错误继续安装
DSC00028.png

DSC00029.png

DSC00030.png

分别在节点1和节点2上执行:
/u01/app/oraInventory/orainstRoot.sh
/u01/app/21.3.0/grid/root.sh
节点1运行:
[root@raclhr-21c-n1 ~]# /u01/app/oraInventory/orainstRoot.sh
Changing permissions of /u01/app/oraInventory.
Adding read,write permissions for group.
Removing read,write,execute permissions for world.
Changing groupname of /u01/app/oraInventory to oinstall.
The execution of the script is complete.
[root@raclhr-21c-n1 ~]# /u01/app/21.3.0/grid/root.sh
Performing root user operation.
The following environment variables are set as:
  ORACLE_OWNER= grid
  ORACLE_HOME=  /u01/app/21.3.0/grid
Enter the full pathname of the local bin directory: [/usr/local/bin]: 
   Copying dbhome to /usr/local/bin ...
   Copying oraenv to /usr/local/bin ...
   Copying coraenv to /usr/local/bin ...
Creating /etc/oratab file...
Entries will be added to the /etc/oratab file as needed by
Database Configuration Assistant when a database is created
Finished running generic part of root script.
Now product-specific root actions will be performed.
Relinking oracle with rac_on option
Using configuration parameter file: /u01/app/21.3.0/grid/crs/install/crsconfig_params
2021-08-20 08:38:46: Got permissions of file /u01/app/grid/crsdata/raclhr-21c-n1/crsconfig: 0775
2021-08-20 08:38:46: Got permissions of file /u01/app/grid/crsdata: 0775
2021-08-20 08:38:46: Got permissions of file /u01/app/grid/crsdata/raclhr-21c-n1: 0775
The log of current session can be found at:
  /u01/app/grid/crsdata/raclhr-21c-n1/crsconfig/rootcrs_raclhr-21c-n1_2021-08-20_08-38-46AM.log
2021/08/20 08:38:56 CLSRSC-594: Executing installation step 1 of 19: 'SetupTFA'.
2021/08/20 08:38:56 CLSRSC-594: Executing installation step 2 of 19: 'ValidateEnv'.
2021/08/20 08:38:56 CLSRSC-594: Executing installation step 3 of 19: 'CheckFirstNode'.
2021/08/20 08:38:58 CLSRSC-594: Executing installation step 4 of 19: 'GenSiteGUIDs'.
2021/08/20 08:39:00 CLSRSC-594: Executing installation step 5 of 19: 'SetupOSD'.
Redirecting to /bin/systemctl restart rsyslog.service
2021/08/20 08:39:00 CLSRSC-594: Executing installation step 6 of 19: 'CheckCRSConfig'.
2021/08/20 08:39:00 CLSRSC-594: Executing installation step 7 of 19: 'SetupLocalGPNP'.
2021/08/20 08:39:13 CLSRSC-594: Executing installation step 8 of 19: 'CreateRootCert'.
2021/08/20 08:39:17 CLSRSC-594: Executing installation step 9 of 19: 'ConfigOLR'.
2021/08/20 08:39:35 CLSRSC-594: Executing installation step 10 of 19: 'ConfigCHMOS'.
2021/08/20 08:39:35 CLSRSC-594: Executing installation step 11 of 19: 'CreateOHASD'.
2021/08/20 08:39:40 CLSRSC-594: Executing installation step 12 of 19: 'ConfigOHASD'.
2021/08/20 08:39:41 CLSRSC-330: Adding Clusterware entries to file 'oracle-ohasd.service'
2021/08/20 08:39:58 CLSRSC-4002: Successfully installed Oracle Autonomous Health Framework (AHF).
2021/08/20 08:40:14 CLSRSC-594: Executing installation step 13 of 19: 'InstallAFD'.
2021/08/20 08:40:14 CLSRSC-594: Executing installation step 14 of 19: 'InstallACFS'.
2021/08/20 08:40:19 CLSRSC-594: Executing installation step 15 of 19: 'InstallKA'.
2021/08/20 08:40:24 CLSRSC-594: Executing installation step 16 of 19: 'InitConfig'.
2021/08/20 08:41:52 CLSRSC-482: Running command: '/u01/app/21.3.0/grid/bin/ocrconfig -upgrade grid oinstall'
CRS-4256: Updating the profile
Successful addition of voting disk e4f4713a678d4f04bf0cce6c0c14692d.
Successful addition of voting disk 7f85f487c7e34f42bff66f6c7cfc6032.
Successful addition of voting disk 408b301b47c84f97bfc109558258b289.
Successfully replaced voting disk group with +OCR.
CRS-4256: Updating the profile
CRS-4266: Voting file(s) successfully replaced
##  STATE  File Universal Id        File Name Disk group
--  -----  -----------------        --------- ---------
 1. ONLINE   e4f4713a678d4f04bf0cce6c0c14692d (/dev/asm-diskd) [OCR]
 2. ONLINE   7f85f487c7e34f42bff66f6c7cfc6032 (/dev/asm-diske) [OCR]
 3. ONLINE   408b301b47c84f97bfc109558258b289 (/dev/asm-diskf) [OCR]
Located 3 voting disk(s).
2021/08/20 08:43:30 CLSRSC-594: Executing installation step 17 of 19: 'StartCluster'.
2021/08/20 08:44:43 CLSRSC-343: Successfully started Oracle Clusterware stack
2021/08/20 08:44:43 CLSRSC-594: Executing installation step 18 of 19: 'ConfigNode'.
2021/08/20 08:47:14 CLSRSC-594: Executing installation step 19 of 19: 'PostConfig'.
2021/08/20 08:47:36 CLSRSC-325: Configure Oracle Grid Infrastructure for a Cluster ... succeeded
最后输出Configure Oracle Grid Infrastructure for a Cluster ... succeeded表示成功,跑完后,检查一下:
[root@raclhr-21c-n1 ~]# crsctl stat res -t
--------------------------------------------------------------------------------
Name       Target  State    Server           State details     
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.LISTENER.lsnr
         ONLINE  ONLINE     raclhr-21c-n1      STABLE
ora.chad
         ONLINE  ONLINE     raclhr-21c-n1      STABLE
ora.net1.network
         ONLINE  ONLINE     raclhr-21c-n1      STABLE
ora.ons
         ONLINE  ONLINE     raclhr-21c-n1      STABLE
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.ASMNET1LSNR_ASM.lsnr(ora.asmgroup)
    1    ONLINE  ONLINE     raclhr-21c-n1      STABLE
    2    OFFLINE OFFLINE                 STABLE
ora.LISTENER_SCAN1.lsnr
    1    ONLINE  ONLINE     raclhr-21c-n1      STABLE
ora.LISTENER_SCAN2.lsnr
    1    ONLINE  ONLINE     raclhr-21c-n1      STABLE
ora.LISTENER_SCAN3.lsnr
    1    ONLINE  ONLINE     raclhr-21c-n1      STABLE
ora.OCR.dg(ora.asmgroup)
    1    ONLINE  ONLINE     raclhr-21c-n1      STABLE
    2    OFFLINE OFFLINE                 STABLE
ora.asm(ora.asmgroup)
    1    ONLINE  ONLINE     raclhr-21c-n1      STABLE
    2    OFFLINE OFFLINE                 STABLE
ora.asmnet1.asmnetwork(ora.asmgroup)
    1    ONLINE  ONLINE     raclhr-21c-n1      STABLE
    2    OFFLINE OFFLINE                 STABLE
ora.cdp1.cdp
    1    ONLINE  ONLINE     raclhr-21c-n1      STABLE
ora.cdp2.cdp
    1    ONLINE  ONLINE     raclhr-21c-n1      STABLE
ora.cdp3.cdp
    1    ONLINE  ONLINE     raclhr-21c-n1      STABLE
ora.cvu
    1    ONLINE  ONLINE     raclhr-21c-n1      STABLE
ora.qosmserver
    1    ONLINE  ONLINE     raclhr-21c-n1      STABLE
ora.raclhr-21c-n1.vip
    1    ONLINE  ONLINE     raclhr-21c-n1      STABLE
ora.scan1.vip
    1    ONLINE  ONLINE     raclhr-21c-n1      STABLE
ora.scan2.vip
    1    ONLINE  ONLINE     raclhr-21c-n1      STABLE
ora.scan3.vip
    1    ONLINE  ONLINE     raclhr-21c-n1      STABLE
--------------------------------------------------------------------------------
节点2:
[root@raclhr-21c-n2 ~]# /u01/app/21.3.0/grid/root.sh
Performing root user operation.
The following environment variables are set as:
  ORACLE_OWNER= grid
  ORACLE_HOME=  /u01/app/21.3.0/grid
Enter the full pathname of the local bin directory: [/usr/local/bin]: 
The contents of "dbhome" have not changed. No need to overwrite.
The contents of "oraenv" have not changed. No need to overwrite.
The contents of "coraenv" have not changed. No need to overwrite.
Entries will be added to the /etc/oratab file as needed by
Database Configuration Assistant when a database is created
Finished running generic part of root script.
Now product-specific root actions will be performed.
Relinking oracle with rac_on option
Using configuration parameter file: /u01/app/21.3.0/grid/crs/install/crsconfig_params
The log of current session can be found at:
  /u01/app/grid/crsdata/raclhr-21c-n2/crsconfig/rootcrs_raclhr-21c-n2_2021-08-20_08-51-42AM.log
2021/08/20 08:51:48 CLSRSC-594: Executing installation step 1 of 19: 'SetupTFA'.
2021/08/20 08:51:48 CLSRSC-594: Executing installation step 2 of 19: 'ValidateEnv'.
2021/08/20 08:51:48 CLSRSC-594: Executing installation step 3 of 19: 'CheckFirstNode'.
2021/08/20 08:51:50 CLSRSC-594: Executing installation step 4 of 19: 'GenSiteGUIDs'.
2021/08/20 08:51:50 CLSRSC-594: Executing installation step 5 of 19: 'SetupOSD'.
2021/08/20 08:51:50 CLSRSC-594: Executing installation step 6 of 19: 'CheckCRSConfig'.
2021/08/20 08:51:51 CLSRSC-594: Executing installation step 7 of 19: 'SetupLocalGPNP'.
2021/08/20 08:51:52 CLSRSC-594: Executing installation step 8 of 19: 'CreateRootCert'.
2021/08/20 08:51:52 CLSRSC-594: Executing installation step 9 of 19: 'ConfigOLR'.
2021/08/20 08:51:52 CLSRSC-594: Executing installation step 10 of 19: 'ConfigCHMOS'.
2021/08/20 08:52:23 CLSRSC-594: Executing installation step 11 of 19: 'CreateOHASD'.
2021/08/20 08:52:24 CLSRSC-594: Executing installation step 12 of 19: 'ConfigOHASD'.
2021/08/20 08:52:25 CLSRSC-330: Adding Clusterware entries to file 'oracle-ohasd.service'
2021/08/20 08:52:55 CLSRSC-594: Executing installation step 13 of 19: 'InstallAFD'.
2021/08/20 08:52:55 CLSRSC-594: Executing installation step 14 of 19: 'InstallACFS'.
2021/08/20 08:52:57 CLSRSC-594: Executing installation step 15 of 19: 'InstallKA'.
2021/08/20 08:52:58 CLSRSC-594: Executing installation step 16 of 19: 'InitConfig'.
2021/08/20 08:53:04 CLSRSC-4002: Successfully installed Oracle Autonomous Health Framework (AHF).
2021/08/20 08:53:08 CLSRSC-594: Executing installation step 17 of 19: 'StartCluster'.
2021/08/20 08:54:09 CLSRSC-343: Successfully started Oracle Clusterware stack
2021/08/20 08:54:09 CLSRSC-594: Executing installation step 18 of 19: 'ConfigNode'.
2021/08/20 08:54:28 CLSRSC-594: Executing installation step 19 of 19: 'PostConfig'.
2021/08/20 08:54:38 CLSRSC-325: Configure Oracle Grid Infrastructure for a Cluster ... succeeded
最后输出Configure Oracle Grid Infrastructure for a Cluster ... succeeded表示成功,查看:
[root@raclhr-21c-n1 ~]# crsctl stat res -t
--------------------------------------------------------------------------------
Name       Target  State    Server           State details     
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.LISTENER.lsnr
         ONLINE  ONLINE     raclhr-21c-n1      STABLE
         ONLINE  ONLINE     raclhr-21c-n2      STABLE
ora.chad
         ONLINE  ONLINE     raclhr-21c-n1      STABLE
         ONLINE  ONLINE     raclhr-21c-n2      STABLE
ora.net1.network
         ONLINE  ONLINE     raclhr-21c-n1      STABLE
         ONLINE  ONLINE     raclhr-21c-n2      STABLE
ora.ons
         ONLINE  ONLINE     raclhr-21c-n1      STABLE
         ONLINE  ONLINE     raclhr-21c-n2      STABLE
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.ASMNET1LSNR_ASM.lsnr(ora.asmgroup)
    1    ONLINE  ONLINE     raclhr-21c-n1      STABLE
    2    ONLINE  ONLINE     raclhr-21c-n2      STABLE
ora.LISTENER_SCAN1.lsnr
    1    ONLINE  ONLINE     raclhr-21c-n1      STABLE
ora.LISTENER_SCAN2.lsnr
    1    ONLINE  ONLINE     raclhr-21c-n1      STABLE
ora.LISTENER_SCAN3.lsnr
    1    ONLINE  ONLINE     raclhr-21c-n2      STABLE
ora.OCR.dg(ora.asmgroup)
    1    ONLINE  ONLINE     raclhr-21c-n1      STABLE
    2    ONLINE  ONLINE     raclhr-21c-n2      STABLE
ora.asm(ora.asmgroup)
    1    ONLINE  ONLINE     raclhr-21c-n1      STABLE
    2    ONLINE  ONLINE     raclhr-21c-n2      Started,STABLE
ora.asmnet1.asmnetwork(ora.asmgroup)
    1    ONLINE  ONLINE     raclhr-21c-n1      STABLE
    2    ONLINE  ONLINE     raclhr-21c-n2      STABLE
ora.cdp1.cdp
    1    ONLINE  ONLINE     raclhr-21c-n1      STABLE
ora.cdp2.cdp
    1    ONLINE  ONLINE     raclhr-21c-n1      STABLE
ora.cdp3.cdp
    1    ONLINE  ONLINE     raclhr-21c-n2      STABLE
ora.cvu
    1    ONLINE  ONLINE     raclhr-21c-n1      STABLE
ora.qosmserver
    1    ONLINE  ONLINE     raclhr-21c-n1      STABLE
ora.raclhr-21c-n1.vip
    1    ONLINE  ONLINE     raclhr-21c-n1      STABLE
ora.raclhr-21c-n2.vip
    1    ONLINE  ONLINE     raclhr-21c-n2      STABLE
ora.scan1.vip
    1    ONLINE  ONLINE     raclhr-21c-n1      STABLE
ora.scan2.vip
    1    ONLINE  ONLINE     raclhr-21c-n1      STABLE
ora.scan3.vip
    1    ONLINE  ONLINE     raclhr-21c-n2      STABLE
--------------------------------------------------------------------------------
此时回到界面点击OK,继续运行:
DSC00031.png

DSC00032.png

最后集群校验报错,看了一下是dns和ntp的问题,可以忽略,继续安装:
DSC00033.png


6.2、安装db
[root@raclhr-21c-n1 ~]# su - oracle
Last login: Thu Aug 19 15:26:38 CST 2021 on pts/0
[oracle@raclhr-21c-n1 ~]$ cd $ORACLE_HOME
[oracle@raclhr-21c-n1 dbhome_1]$ export DISPLAY=192.168.59.1:0.0
[oracle@raclhr-21c-n1 dbhome_1]$ ./runInstaller
DSC00034.png

DSC00035.png

DSC00036.png

DSC00037.png

DSC00038.png

DSC00039.png

DSC00040.png

DSC00041.png

DSC00042.png

DSC00043.png

DSC00044.png

DSC00045.png

节点1和节点2分别执行:
[root@raclhr-21c-n1 ~]# /u01/app/oracle/product/21.3.0/dbhome_1/root.sh
Performing root user operation.
The following environment variables are set as:
  ORACLE_OWNER= oracle
  ORACLE_HOME=  /u01/app/oracle/product/21.3.0/dbhome_1
Enter the full pathname of the local bin directory: [/usr/local/bin]: 
The contents of "dbhome" have not changed. No need to overwrite.
The contents of "oraenv" have not changed. No need to overwrite.
The contents of "coraenv" have not changed. No need to overwrite.
Entries will be added to the /etc/oratab file as needed by
Database Configuration Assistant when a database is created
Finished running generic part of root script.
Now product-specific root actions will be performed.
执行完后,点击OK:
DSC00046.png


6.3、创建磁盘组
以 grid 用户执行 asmca 命令,创建DATA和FRA两个磁盘组。:
[root@raclhr-21c-n1 ~]# su - grid
Last login: Fri Aug 20 09:59:53 CST 2021
[grid@raclhr-21c-n1 ~]$ export DISPLAY=192.168.59.1:0.0
[grid@raclhr-21c-n1 ~]$ asmca
DSC00047.png

DSC00048.png

DSC00049.png

查看:
[grid@raclhr-21c-n1 ~]$ $ORACLE_HOME/bin/kfod disks=all st=true ds=true
--------------------------------------------------------------------------------
 Disk      Size Header  Path                  Disk Group  User   Group   
================================================================================
   1:     1024 MB MEMBER  /dev/asm-diskd               OCR      grid   asmadmin
   2:     1024 MB MEMBER  /dev/asm-diske               OCR      grid   asmadmin
   3:     1024 MB MEMBER  /dev/asm-diskf               OCR      grid   asmadmin
   4:    10240 MB CANDIDATE /dev/asm-diskg               #      grid   asmadmin
   5:    10240 MB CANDIDATE /dev/asm-diskh               #      grid   asmadmin
   6:    10240 MB CANDIDATE /dev/asm-diski               #      grid   asmadmin
   7:    15360 MB MEMBER  /dev/asm-diskj               DATA     grid   asmadmin
   8:    15360 MB MEMBER  /dev/asm-diskk               DATA     grid   asmadmin
   9:    15360 MB MEMBER  /dev/asm-diskl               DATA     grid   asmadmin
  10:    10240 MB MEMBER  /dev/asm-diskm               FRA      grid   asmadmin
  11:    10240 MB MEMBER  /dev/asm-diskn               FRA      grid   asmadmin
  12:    10240 MB MEMBER  /dev/asm-disko               FRA      grid   asmadmin
--------------------------------------------------------------------------------
ORACLE_SID ORACLE_HOME                              
================================================================================
6.4、创建数据库
[oracle@raclhr-21c-n1 ~]$ export DISPLAY=192.168.59.1:0.0
[oracle@raclhr-21c-n1 ~]$ dbca
DSC00050.png

DSC00051.png

DSC00052.png

DSC00053.png

DSC00054.png

DSC00055.png

DSC00056.png

DSC00057.png

DSC00058.png

DSC00059.png

DSC00060.png

DSC00061.png

DSC00062.png

DSC00063.png

七、静默安装集群和db
安装之前重启一次OS,并检查网络和共享盘是否正确。
参考:https://www.xmmup.com/zaicentos7-8shanganzhuangoracle-jiqunrac-21cxiangxiwanzhengban.html/7

7.1、静默安装grid
参考:https://www.xmmup.com/zaicentos7-8shanganzhuangoracle-jiqunrac-21cxiangxiwanzhengban.html/7

7.2、静默安装db软件
参考:https://www.xmmup.com/zaicentos7-8shanganzhuangoracle-jiqunrac-21cxiangxiwanzhengban.html/7

7.3、创建DATA和FRA磁盘组
参考:https://www.xmmup.com/zaicentos7-8shanganzhuangoracle-jiqunrac-21cxiangxiwanzhengban.html/7

7.4、静默创建数据库
-- rac数据库
dbca -silent -ignorePreReqs  -ignorePrereqFailure  -createDatabase -templateName General_Purpose.dbc -responseFile NO_VALUE \
-gdbname rac21c  -sid rac21c \
-createAsContainerDatabase TRUE \
-sysPassword lhr -systemPassword lhr -dbsnmpPassword lhr \
-datafileDestination '+DATA' -recoveryAreaDestination '+FRA' \
-storageType ASM \
-characterset AL32UTF8 \
-totalMemory 1024 \
-databaseType OLTP \
-emConfiguration none \
-nodeinfo raclhr-21c-n1,raclhr-21c-n2
-- 单实例
dbca -silent -createDatabase -templateName General_Purpose.dbc -responseFile NO_VALUE \
-gdbname LHRCDB  -sid LHRCDB \
-createAsContainerDatabase TRUE \
-numberOfPDBs 1 \
-pdbName pdbxmm \
-pdbAdminPassword lhr \
-sysPassword lhr -systemPassword lhr \
-datafileDestination '/u01/app/oracle/oradata' \
-recoveryAreaDestination '/u01/app/oracle/flash_recovery_area' \
-redoLogFileSize 50 \
-storageType FS \
-characterset AL32UTF8 -nationalCharacterSet AL16UTF16 \
-totalMemory 1024 \
-databaseType OLTP  \
-emConfiguration NONE
创建过程:
[oracle@raclhr-21c-n1 ~]$ dbca -silent -ignorePreReqs  -ignorePrereqFailure  -createDatabase -templateName General_Purpose.dbc -responseFile NO_VALUE \
&gt; -gdbname rac21c  -sid rac21c \
&gt; -createAsContainerDatabase TRUE \
&gt; -sysPassword lhr -systemPassword lhr -dbsnmpPassword lhr \
&gt; -datafileDestination '+DATA' -recoveryAreaDestination '+FRA' \
&gt; -storageType ASM \
&gt; -characterset AL32UTF8 \
&gt; -totalMemory 1024 \
&gt; -databaseType OLTP \
&gt; -emConfiguration none \
&gt; -nodeinfo raclhr-21c-n1,raclhr-21c-n2
[WARNING] [DBT-06208] The 'SYS' password entered does not conform to the Oracle recommended standards.
   CAUSE: 
a. Oracle recommends that the password entered should be at least 8 characters in length, contain at least 1 uppercase character, 1 lower case character and 1 digit [0-9].
b.The password entered is a keyword that Oracle does not recommend to be used as password
   ACTION: Specify a strong password. If required refer Oracle documentation for guidelines.
[WARNING] [DBT-06208] The 'SYSTEM' password entered does not conform to the Oracle recommended standards.
   CAUSE: 
a. Oracle recommends that the password entered should be at least 8 characters in length, contain at least 1 uppercase character, 1 lower case character and 1 digit [0-9].
b.The password entered is a keyword that Oracle does not recommend to be used as password
   ACTION: Specify a strong password. If required refer Oracle documentation for guidelines.
[WARNING] [DBT-06208] The 'PDBADMIN' password entered does not conform to the Oracle recommended standards.
   CAUSE: 
a. Oracle recommends that the password entered should be at least 8 characters in length, contain at least 1 uppercase character, 1 lower case character and 1 digit [0-9].
b.The password entered is a keyword that Oracle does not recommend to be used as password
   ACTION: Specify a strong password. If required refer Oracle documentation for guidelines.
Prepare for db operation
7% complete
Copying database files
27% complete
Creating and starting Oracle instance
28% complete
31% complete
35% complete
37% complete
40% complete
Creating cluster database views
41% complete
53% complete
Completing Database Creation
57% complete
59% complete
60% complete
80% complete
Executing Post Configuration Actions
100% complete
Database creation complete. For details check the logfiles at:
 /u01/app/oracle/cfgtoollogs/dbca/rac21c.
Database Information:
Global Database Name:rac21c
System Identifier(SID) Prefix:rac21c
Look at the log file "/u01/app/oracle/cfgtoollogs/dbca/rac21c/rac21c.log" for further details.
[oracle@raclhr-21c-n1 ~]$ crsctl stat res -t
--------------------------------------------------------------------------------
Name       Target  State    Server           State details     
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.LISTENER.lsnr
         ONLINE  ONLINE     raclhr-21c-n1      STABLE
         ONLINE  ONLINE     raclhr-21c-n2      STABLE
ora.chad
         ONLINE  ONLINE     raclhr-21c-n1      STABLE
         ONLINE  ONLINE     raclhr-21c-n2      STABLE
ora.net1.network
         ONLINE  ONLINE     raclhr-21c-n1      STABLE
         ONLINE  ONLINE     raclhr-21c-n2      STABLE
ora.ons
         ONLINE  ONLINE     raclhr-21c-n1      STABLE
         ONLINE  ONLINE     raclhr-21c-n2      STABLE
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.ASMNET1LSNR_ASM.lsnr(ora.asmgroup)
    1    ONLINE  ONLINE     raclhr-21c-n1      STABLE
    2    ONLINE  ONLINE     raclhr-21c-n2      STABLE
ora.DATA.dg(ora.asmgroup)
    1    ONLINE  ONLINE     raclhr-21c-n1      STABLE
    2    ONLINE  ONLINE     raclhr-21c-n2      STABLE
ora.FRA.dg(ora.asmgroup)
    1    ONLINE  ONLINE     raclhr-21c-n1      STABLE
    2    ONLINE  ONLINE     raclhr-21c-n2      STABLE
ora.LISTENER_SCAN1.lsnr
    1    ONLINE  ONLINE     raclhr-21c-n1      STABLE
ora.LISTENER_SCAN2.lsnr
    1    ONLINE  ONLINE     raclhr-21c-n1      STABLE
ora.LISTENER_SCAN3.lsnr
    1    ONLINE  ONLINE     raclhr-21c-n2      STABLE
ora.OCR.dg(ora.asmgroup)
    1    ONLINE  ONLINE     raclhr-21c-n1      STABLE
    2    ONLINE  ONLINE     raclhr-21c-n2      STABLE
ora.asm(ora.asmgroup)
    1    ONLINE  ONLINE     raclhr-21c-n1      Started,STABLE
    2    ONLINE  ONLINE     raclhr-21c-n2      Started,STABLE
ora.asmnet1.asmnetwork(ora.asmgroup)
    1    ONLINE  ONLINE     raclhr-21c-n1      STABLE
    2    ONLINE  ONLINE     raclhr-21c-n2      STABLE
ora.cdp1.cdp
    1    ONLINE  ONLINE     raclhr-21c-n1      STABLE
ora.cdp2.cdp
    1    ONLINE  ONLINE     raclhr-21c-n1      STABLE
ora.cdp3.cdp
    1    ONLINE  ONLINE     raclhr-21c-n2      STABLE
ora.cvu
    1    ONLINE  ONLINE     raclhr-21c-n1      STABLE
ora.qosmserver
    1    ONLINE  ONLINE     raclhr-21c-n1      STABLE
ora.rac21c.db
    1    ONLINE  ONLINE     raclhr-21c-n1      Open,HOME=/u01/app/o
                               racle/product/21.3.0
                               /dbhome_1,STABLE
    2    ONLINE  ONLINE     raclhr-21c-n2      Open,HOME=/u01/app/o
                               racle/product/21.3.0
                               /dbhome_1,STABLE
ora.raclhr-21c-n1.vip
    1    ONLINE  ONLINE     raclhr-21c-n1      STABLE
ora.raclhr-21c-n2.vip
    1    ONLINE  ONLINE     raclhr-21c-n2      STABLE
ora.scan1.vip
    1    ONLINE  ONLINE     raclhr-21c-n1      STABLE
ora.scan2.vip
    1    ONLINE  ONLINE     raclhr-21c-n1      STABLE
ora.scan3.vip
    1    ONLINE  ONLINE     raclhr-21c-n2      STABLE
--------------------------------------------------------------------------------
[oracle@raclhr-21c-n1 ~]$ sas
SQL*Plus: Release 21.0.0.0.0 - Production on Mon Aug 23 10:32:50 2021
Version 21.3.0.0.0
Copyright (c) 1982, 2021, Oracle.  All rights reserved.
Connected to:
Oracle Database 21c Enterprise Edition Release 21.0.0.0.0 - Production
Version 21.3.0.0.0
SYS@rac21c1&gt; show pdbs
  CON_ID CON_NAME             OPEN MODE  RESTRICTED
---------- ------------------------------ ---------- ----------
     2 PDB$SEED             READ ONLY  NO
7.5、创建PDB数据库
@rac21c1&gt; show parameter db_create_file_dest
NAME                 TYPE           VALUE
------------------------------------ ---------------------- ------------------------------
db_create_file_dest          string         +DATA
SYS@rac21c1&gt; create pluggable database PDBLHR1 admin user lhr identified by lhr;
Pluggable database created.
SYS@rac21c1&gt; show pdbs
  CON_ID CON_NAME             OPEN MODE  RESTRICTED
---------- ------------------------------ ---------- ----------
     2 PDB$SEED             READ ONLY  NO
     3 PDBLHR1            MOUNTED
SYS@rac21c1&gt; alter pluggable database pdblhr1 open;
Pluggable database altered.
SYS@rac21c1&gt; show pdbs
  CON_ID CON_NAME             OPEN MODE  RESTRICTED
---------- ------------------------------ ---------- ----------
     2 PDB$SEED             READ ONLY  NO
     3 PDBLHR1            READ WRITE NO
SYS@rac21c1&gt;  alter pluggable database all save state;
Pluggable database altered.
[oracle@raclhr-21c-n1 ~]$ export ORACLE_PDB_SID=PDBLHR1
[oracle@raclhr-21c-n1 ~]$ sas
SQL*Plus: Release 21.0.0.0.0 - Production on Mon Aug 23 10:45:11 2021
Version 21.3.0.0.0
Copyright (c) 1982, 2021, Oracle.  All rights reserved.
Connected to:
Oracle Database 21c Enterprise Edition Release 21.0.0.0.0 - Production
Version 21.3.0.0.0
SYS@rac21c1&gt; show pdbs
  CON_ID CON_NAME             OPEN MODE  RESTRICTED
---------- ------------------------------ ---------- ----------
     3 PDBLHR1            READ WRITE NO
SYS@rac21c1&gt; show con_name
CON_NAME
------------------------------
PDBLHR1
[root@raclhr-21c-n1 ~]# crsctl status resource  -w "TYPE = ora.database.type" -t
--------------------------------------------------------------------------------
Name       Target  State    Server           State details     
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.rac21c.db
    1    ONLINE  ONLINE     raclhr-21c-n1      Open,HOME=/u01/app/o
                               racle/product/21.3.0
                               /dbhome_1,STABLE
    2    ONLINE  ONLINE     raclhr-21c-n2      Open,HOME=/u01/app/o
                               racle/product/21.3.0
                               /dbhome_1,STABLE
--------------------------------------------------------------------------------
[root@raclhr-21c-n1 ~]# crsctl status resource  -w "TYPE = ora.pdb.type" -t    
--------------------------------------------------------------------------------
Name       Target  State    Server           State details     
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.rac21c.pdblhr1.pdb
    1    ONLINE  ONLINE     raclhr-21c-n1      STABLE
    2    ONLINE  ONLINE     raclhr-21c-n2      STABLE
--------------------------------------------------------------------------------
八、修改基本配置

8.1、禁用crs和db的自启动
-- 禁用crs自启动
crsctl disable has
-- 禁用db自启动
crsctl modify resource ora.rac21c.db -attr AUTO_START=never -unsupported
crsctl stat res ora.rac21c.db -p | grep AUTO_START
8.2、修改SQL提示符
oracle和grid均修改:
&gt;&gt; $ORACLE_HOME/sqlplus/admin/glogin.sql &lt;&lt;"EOF"
set linesize 9999 pagesize 9999
set sqlprompt "_USER'@'_CONNECT_IDENTIFIER&gt; "
EOF
参考
内容太多,放不下,部分内容有所删减,全文可以参考:https://www.xmmup.com/zaicentos7-8shanganzhuangoracle-jiqunrac-21cxiangxiwanzhengban.html
</div>
    
    <div id="asideoffset"></div>

关注下面的标签,发现更多相似文章
评论

使用道具 举报

0 经验
0 文档
OPNE在线字典