Oracle 19C RAC 安装配置
一、实施前期准备工作
1.1服务器安装操作系统
配置完全相同的两台服务器,安装相同版本的 Linux 操作系统。留存系统光盘或者镜像文件。
本次实验为 OEL7.6 ,系统目录大小均一致。对应 OEL7.6 的系统镜像文件放在服务器上,供后面配置本地 yum 使用。
1.2 Oracle安装介质
Oracle 19.3 版本 2 个 zip 包 ( 总大小 6G+, 注意空间 ) :
LINUX.X64_193000_grid_home.zip MD5:
LINUX.X64_193000_db_home.zip MD5:
只需要上传到节点 1 即可。
1.3共享存储规划
从存储中划分出两台主机可以同时看到的共享 LUN , 3 个 1G 的盘用作 OCR 和 Voting Disk ,其余分了 3 个 12G 的盘规划做用做数据盘和 FRA 。
注: 19c 安装 GI 时,可以选择是否配置 GIMR ,且默认不配置,我这里选择不配置,所以无需再给 GIMR 分配对应空间。
--OEL7 使用 udev 需要给磁盘创建分区,这里我使用 fdisk 将对应盘创建一个主分区,分区号为 2 (这里只是为了区分) :
sdb sdc sdd sde sdf sdg
sdb2 sdc2 sdd2 sde2 sdf2 sdg2
1 G 1 G 1 G 12 G 12 G 12 G
--OEL7 中 udev 需绑定对应磁盘的分区
for i in b c d e f g;
do
echo "KERNEL==\"sd?2\", SUBSYSTEM==\"block\", PROGRAM==\"/usr/lib/udev/scsi_id -g -u -d /dev/\$parent\", RESULT==\"/usr/lib/udev/scsi_id -g -u -d /dev/sd\\$i
\", SYMLINK+=\"asm-disk$i\", OWNER=\"grid\", GROUP=\"asmadmin\", MODE=\"0660\""
done
--vi /etc/udev/rules.d/ 99 -oracle-asmdevices.rules
KERNEL== "sd?2" , SUBSYSTEM== "block" , PROGRAM== "/usr/lib/udev/scsi_id -g -u -d /dev/$parent" , RESULT== "1ATA_VBOX_HARDDISK_VB208b8d32-df9af9d6" , SYMLINK+= "asm-ocr1" , OWNER= "grid" , GROUP= "asmadmin" , MODE= "0660"
KERNEL== "sd?2" , SUBSYSTEM== "block" , PROGRAM== "/usr/lib/udev/scsi_id -g -u -d /dev/$parent" , RESULT== "1ATA_VBOX_HARDDISK_VBe51f4d0a-1b73c589" , SYMLINK+= "asm-ocr2" , OWNER= "grid" , GROUP= "asmadmin" , MODE= "0660"
KERNEL== "sd?2" , SUBSYSTEM== "block" , PROGRAM== "/usr/lib/udev/scsi_id -g -u -d /dev/$parent" , RESULT== "1ATA_VBOX_HARDDISK_VBc63b1aa3-1e290288" , SYMLINK+= "asm-ocr3" , OWNER= "grid" , GROUP= "asmadmin" , MODE= "0660"
KERNEL== "sd?2" , SUBSYSTEM== "block" , PROGRAM== "/usr/lib/udev/scsi_id -g -u -d /dev/$parent" , RESULT== "1ATA_VBOX_HARDDISK_VB53ee20b6-40c4b9a3" , SYMLINK+= "asm-data01" , OWNER= "grid" , GROUP= "asmadmin" , MODE= "0660"
KERNEL== "sd?2" , SUBSYSTEM== "block" , PROGRAM== "/usr/lib/udev/scsi_id -g -u -d /dev/$parent" , RESULT== "1ATA_VBOX_HARDDISK_VB3822afbf-62d8a84d" , SYMLINK+= "asm-data02" , OWNER= "grid" , GROUP= "asmadmin" , MODE= "0660"
KERNEL== "sd?2" , SUBSYSTEM== "block" , PROGRAM== "/usr/lib/udev/scsi_id -g -u -d /dev/$parent" , RESULT== "1ATA_VBOX_HARDDISK_VBfbb7943a-5ec216e5" , SYMLINK+= "asm-data03" , OWNER= "grid" , GROUP= "asmadmin" , MODE= "0660"
--udevadm 配置重载生效:
[root@db193 rules.d] # udevadm control --reload
[root@db193 rules.d] # udevadm trigger
-- 确认 udev 已绑定成功 :
[root@db193 rules.d] # ls -l /dev/asm*
lrwxrwxrwx. 1 root root 4 Jul 30 23 : 45 /dev/asm-data01 -> sde2
lrwxrwxrwx. 1 root root 4 Jul 30 23 : 45 /dev/asm-data02 -> sdf2
lrwxrwxrwx. 1 root root 4 Jul 30 23 : 45 /dev/asm-data03 -> sdg2
lrwxrwxrwx. 1 root root 4 Jul 30 23 : 45 /dev/asm-ocr1 -> sdb2
lrwxrwxrwx. 1 root root 4 Jul 30 23 : 45 /dev/asm-ocr2 -> sdc2
lrwxrwxrwx. 1 root root 4 Jul 30 23 : 45 /dev/asm-ocr3 -> sdd2
-- 第二个节点 db195 最开始直接使用 udevadm 操作发现不行,此时需先 partprobe ,再 udevadm 触发即可成功
-- 使用 partprobe 将磁盘分区表变化信息通知内核,请求操作系统重新加载分区表
[root@db195 ~] # partprobe /dev/sdb
[root@db195 ~] # partprobe /dev/sdc
[root@db195 ~] # partprobe /dev/sdd
[root@db195 ~] # partprobe /dev/sde
[root@db195 ~] # partprobe /dev/sdf
[root@db195 ~] # partprobe /dev/sdg
--udevadm 配置重载生效:
[root@db195 ~] # udevadm control --reload
[root@db195 ~] # udevadm trigger
-- 确认 udev 已绑定成功 :
[root@db195 ~] # ls -l /dev/asm*
lrwxrwxrwx. 1 root root 4 Jul 30 23 : 49 /dev/asm-data01 -> sde2
lrwxrwxrwx. 1 root root 4 Jul 30 23 : 49 /dev/asm-data02 -> sdf2
lrwxrwxrwx. 1 root root 4 Jul 30 23 : 49 /dev/asm-data03 -> sdg2
lrwxrwxrwx. 1 root root 4 Jul 30 23 : 49 /dev/asm-ocr1 -> sdb2
lrwxrwxrwx. 1 root root 4 Jul 30 23 : 49 /dev/asm-ocr2 -> sdc2
lrwxrwxrwx. 1 root root 4 Jul 30 23 : 49 /dev/asm-ocr3 -> sdd2
1.4网络规范分配
公有网络 以及 私有网络。
公有网络:这里实验环境是 enp0s3 是 public IP , enp0s8 是 ASM & Private IP ,实际生产需根据实际情况调整规划,一般 public 是有 OS 层绑定( bonding ), private 是使用 HAIP 。
二、安装前期准备工作
2.1各节点系统时间校对
各节点系统时间校对 :
-- 检验时间和时区确认正确
date
-- 关闭 chrony 服务,移除 chrony 配置文件(后续使用 ctss )
systemctl list-unit-files|grep chronyd
systemctl status chronyd
systemctl disable chronyd
systemctl stop chronyd
mv /etc/chrony.conf /etc/chrony.conf_bak
这里实验环境,选择不使用 NTP 和 chrony ,这样 Oracle 会自动使用自己的 ctss 服务。
2.2各节点关闭防火墙和 SELinux
各节点关闭防火墙 :
systemctl list-unit-files|grep firewalld
systemctl status firewalld
systemctl disable firewalld
systemctl stop firewalld
各节点关闭 SELinux:
getenforce
cat /etc/selinux/ config
手工修改 /etc/selinux/ config SELINUX=disabled ,或使用下面命令:
sed -i '/^SELINUX=.*/ s//SELINUX=disabled/' /etc/selinux/ config
setenforce 0
最后核实各节点已经关闭 SELinux 即可。
2.3各节点检查系统依赖包安装情况
yum install -y oracle-database-preinstall-18c-1 .0-1.el7.x86_64
在 OEL7.6 中还是 oracle-database-preinstall-18c 的名字,并没有对应 19c 的,但实际测试,在依赖包方面基本没区别。
如果选用的是其他 Linux ,比如常用的 RHEL ,那就需要 yum 安装官方文档要求的依赖包了。
2.4各节点配置 /etc/hosts
编辑 /etc/hosts 文件:
192 .168.1.193 db193
192 .168.1.195 db195
192 .168.1.194 db193-vip
192 .168.1.196 db195-vip
192 .168.1.197 db19c-scan
10 .10.1.193 db193-priv
10 .10.1.195 db195-priv
修改主机名 ( 建议由 SA 调整 ) :
-- 例如:修改主机名为 db193:
hostnamectl status
hostnamectl set-hostname db193
hostnamectl status
2.5各节点创建需要的用户和组
创建 group & user ,给 oracle 、 grid 设置密码:
groupadd -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 grid
echo oracle | passwd --stdin oracle
echo oracle | passwd --stdin grid
我这里测试环境设置密码都是 oracle ,实际生产环境建议设置符合规范的复杂密码。
2.6各节点创建安装目录
各节点创建安装目录 (root 用户 ) :
mkdir -p /u01/ app /19.3.0/ grid
mkdir -p /u01/ app/grid
mkdir -p /u01/ app/oracle
chown -R grid: oinstall /u01
chown oracle: oinstall /u01/ app/oracle
chmod -R 775 /u01/
2.7各节点系统配置文件修改
内核参数修改: vi /etc/sysctl.conf
实际上 OEL 在安装依赖包的时候也同时修改了这些值,以下参数主要是核对或是对 RHEL 版本作为参考:
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
net .ipv4.conf.enp0s8.rp_filter = 2
net .ipv4.conf.enp0s9.rp_filter = 2
net .ipv4.conf.enp0s10.rp_filter = 2
修改生效:
注: enp0s9 和 enp0s10 是 IPSAN 专用的网卡,跟私网一样设置 loose mode 。(我这里因为没有使用 IPSAN ,所以没有这两张网卡)
net .ipv4.conf.enp0s8.rp_filter = 2
net .ipv4.conf.enp0s9.rp_filter = 2
net .ipv4.conf.enp0s10.rp_filter = 2
用户 shell 限制: vi /etc/security/limits.d/99-grid-oracle-limits.conf
oracle soft nproc 16384
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft stack 10240
oracle hard stack 32768
grid soft nproc 16384
grid hard nproc 16384
grid soft nofile 1024
grid hard nofile 65536
grid soft stack 10240
grid hard stack 32768
这里需要注意 OEL 自动配置的 /etc/security/limits.d/oracle-database-server-12cR2-preinstall.conf 并不包含 grid 用户的,可以手工加上。
vi /etc/profile.d/oracle-grid.sh
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -u 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
if [ $USER = "grid" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -u 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
这个 OEL 中也没有自动配置,需要手工配置。
2.8各节点设置用户的环境变量
第 1 个节点 grid 用户:
export ORACLE_SID=+ASM1;
export ORACLE_BASE=/u01/app/grid;
export ORACLE_HOME=/u01/app/ 19 . 3 . 0 /grid;
export PATH= $ORACLE_HOME /bin: $PATH ;
export LD_LIBRARY_PATH= $ORACLE_HOME /lib:/lib:/usr/lib;
第 2 个节点 grid 用户:
export ORACLE_SID=+ASM2;
export ORACLE_BASE=/u01/app/grid;
export ORACLE_HOME=/u01/app/ 19 . 3 . 0 /grid;
export PATH= $ORACLE_HOME /bin: $PATH ;
export LD_LIBRARY_PATH= $ORACLE_HOME /lib:/lib:/usr/lib;
第 1 个节点 oracle 用户:
export ORACLE_SID=jydb1;
export ORACLE_BASE=/u01/app/oracle;
export ORACLE_HOME=/u01/app/oracle/product/ 19 . 3 . 0 /db_1;
export PATH= $ORACLE_HOME /bin: $PATH ;
export LD_LIBRARY_PATH= $ORACLE_HOME /lib:/lib:/usr/lib;
第 2 个节点 oracle 用户:
export ORACLE_SID=jydb2;
export ORACLE_BASE=/u01/app/oracle;
export ORACLE_HOME=/u01/app/oracle/product/ 19 . 3 . 0 /db_1;
export PATH= $ORACLE_HOME /bin: $PATH ;
export LD_LIBRARY_PATH= $ORACLE_HOME /lib:/lib:/usr/lib;
三、 GI(Grid Infrastructure) 安装
3.1解压 GI 的安装包
su - grid
解压 GRID 到 GRID 用户的 $ORACLE_HOME 下
[grid @db 193 grid]$ pwd
/u01/ app /19.3.0/ grid
[grid @db 193 grid]$ unzip /u01/ media/LINUX.X64_193000_grid_home.zip
3.2安装配置 Xmanager 软件
在自己的 Windows 系统上成功安装 Xmanager Enterprise 之后,运行 Xstart.exe 可执行程序,
配置如下
Session : db193
Host : 192.168.1.193
Protocol : SSH
User Name : grid
Execution Command : /usr/bin/xterm -ls -display $DISPLAY
点击 RUN ,输入 grid 用户的密码可以正常弹出命令窗口界面,即配置成功。
当然也可以通过开启 Xmanager - Passive ,直接在 SecureCRT 连接的会话窗口中临时配置 DISPLAY 变量直接调用图形:
export DISPLAY=192.168.1.31:0.0
3.3共享存储 LUN 的赋权
-- 只需确认两个节点链接文件 (/dev/asm*) 对应的 sd [b-g] 2 的权限正确即可:
brw-rw---- 1 root disk 8 , 2 Jul 31 09 :13 / dev / sda2
brw-rw---- 1 grid asmadmin 8 , 18 Jul 31 18 :06 / dev / sdb2
brw-rw---- 1 grid asmadmin 8 , 34 Jul 31 18 :06 / dev / sdc2
brw-rw---- 1 grid asmadmin 8 , 50 Jul 31 18 :06 / dev / sdd2
brw-rw---- 1 grid asmadmin 8 , 66 Jul 31 17 :10 / dev / sde2
brw-rw---- 1 grid asmadmin 8 , 82 Jul 31 17 :10 / dev / sdf2
brw-rw---- 1 grid asmadmin 8 , 98 Jul 31 17 :10 / dev / sdg2
3.4使用 Xmanager 图形化界面配置 GI
Xmanager 通过 grid 用户登录,进入 $ORACLE_HOME 目录,运行 gridSetup 配置 GI
$ cd $ORACLE_HOME
$ ./gridSetup.sh
其实从 12cR2 开始, GI 的配置就跟之前有一些变化, 19c 也一样,下面来看下 GI 配置的整个图形化安装的过程截图:
注:这里 Public 网卡这里用的 enp0s3 , ASM&Private 这里用的 enp0s8 。
注:这里有一个新的存储 GIMR 的,之前 12c 、 18c 版本都是选择是外部冗余的一个 40G 大小的盘(当初给很多刚接触安装 12cRAC 的 DBA 造成了不适),而在 19c 安装中可以看到默认就是不选择的,恢复了 11g 时代的清爽感,这点我个人觉得很赞。
注:这里跟之前区别不大,我依然是选择 3 块 1G 的盘, Normal 冗余作为 OCR 和 voting disk 。
注:这里检查出来的问题都需要认真核对,确认确实可以忽略才可以点击“ Ignore All ”,如果这里检测出缺少某些 RPM 包,需要使用 yum 安装好。我这里是自己的测试环境,分的配置较低,所以有内存和 swap 检测不通过,实际生产环境不应出现。
注:执行 root 脚本,确保先在一节点执行完毕后,再在其他节点执行。
第一个节点 root 执行脚本:
[root@db193 ~] # /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@db193 ~] # /u01/app/19.3.0/grid/root.sh
Performing root user operation.
The following environment variables are set as :
ORACLE_OWNER= grid
ORACLE_HOME= /u01/app/ 19.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/ 19.3.0 /grid/crs/install/crsconfig_params
The log of current session can be found at:
/u01/app/grid/crsdata/db193/crsconfig/rootcrs_db193_2019 -07-31 _07 -27-23 AM.log
2019 / 07 / 31 07 : 28 : 07 CLSRSC -594 : Executing installation step 1 of 19 : 'SetupTFA'.
2019 / 07 / 31 07 : 28 : 08 CLSRSC -594 : Executing installation step 2 of 19 : 'ValidateEnv'.
2019 / 07 / 31 07 : 28 : 08 CLSRSC -363 : User ignored prerequisites during installation
2019 / 07 / 31 07 : 28 : 08 CLSRSC -594 : Executing installation step 3 of 19 : 'CheckFirstNode'.
2019 / 07 / 31 07 : 28 : 17 CLSRSC -594 : Executing installation step 4 of 19 : 'GenSiteGUIDs'.
2019 / 07 / 31 07 : 28 : 21 CLSRSC -594 : Executing installation step 5 of 19 : 'SetupOSD'.
2019 / 07 / 31 07 : 28 : 21 CLSRSC -594 : Executing installation step 6 of 19 : 'CheckCRSConfig'.
2019 / 07 / 31 07 : 28 : 21 CLSRSC -594 : Executing installation step 7 of 19 : 'SetupLocalGPNP'.
2019 / 07 / 31 07 : 31 : 54 CLSRSC -594 : Executing installation step 8 of 19 : 'CreateRootCert'.
2019 / 07 / 31 07 : 32 : 24 CLSRSC -4002 : Successfully installed Oracle Trace File Analyzer (TFA) Collector.
2019 / 07 / 31 07 : 32 : 37 CLSRSC -594 : Executing installation step 9 of 19 : 'ConfigOLR'.
2019 / 07 / 31 07 : 33 : 17 CLSRSC -594 : Executing installation step 10 of 19 : 'ConfigCHMOS'.
2019 / 07 / 31 07 : 33 : 18 CLSRSC -594 : Executing installation step 11 of 19 : 'CreateOHASD'.
2019 / 07 / 31 07 : 33 : 42 CLSRSC -594 : Executing installation step 12 of 19 : 'ConfigOHASD'.
2019 / 07 / 31 07 : 33 : 43 CLSRSC -330 : Adding Clusterware entries to file 'oracle-ohasd.service'
2019 / 07 / 31 07 : 34 : 48 CLSRSC -594 : Executing installation step 13 of 19 : 'InstallAFD'.
2019 / 07 / 31 07 : 35 : 21 CLSRSC -594 : Executing installation step 14 of 19 : 'InstallACFS'.
2019 / 07 / 31 07 : 35 : 50 CLSRSC -594 : Executing installation step 15 of 19 : 'InstallKA'.
2019 / 07 / 31 07 : 36 : 14 CLSRSC -594 : Executing installation step 16 of 19 : 'InitConfig'.
ASM has been created and started successfully.
[DBT -30001 ] Disk groups created successfully. Check /u01/app/grid/cfgtoollogs/asmca/asmca -190731 AM073727.log for details.
2019 / 07 / 31 07 : 40 : 00 CLSRSC -482 : Running command: '/u01/app/19.3.0/grid/bin/ocrconfig -upgrade grid oinstall'
CRS -4256 : Updating the profile
Successful addition of voting disk b789e47e76d74f06bf5f8b5cb4d62b88.
Successful addition of voting disk 3 bc8119dfafe4fbebf7e1bf11aec8b9a.
Successful addition of voting disk bccdf28694a54ffcbf41354c7e4f133d.
Successfully replaced voting disk group with +CRS.
CRS -4256 : Updating the profile
CRS -4266 : Voting file(s) successfully replaced
Located 3 voting disk(s).
2019 / 07 / 31 07 : 48 : 20 CLSRSC -594 : Executing installation step 17 of 19 : 'StartCluster'.
2019 / 07 / 31 07 : 50 : 48 CLSRSC -343 : Successfully started Oracle Clusterware stack
2019 / 07 / 31 07 : 50 : 49 CLSRSC -594 : Executing installation step 18 of 19 : 'ConfigNode'.
2019 / 07 / 31 08 : 04 : 16 CLSRSC -594 : Executing installation step 19 of 19 : 'PostConfig'.
2019 / 07 / 31 08 : 08 : 26 CLSRSC -325 : Configure Oracle Grid Infrastructure for a Cluster ... succeeded
[root@db193 ~] #
执行成功后,在第二个节点 root 执行脚本:
[ root@db195 ~] # /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@db195 ~] # /u01/app/19.3.0/grid/root.sh
Performing root user operation.
The following environment variables are set as :
ORACLE_OWNER= grid
ORACLE_HOME= /u01/app/ 19.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/ 19.3.0 /grid/crs/install/crsconfig_params
The log of current session can be found at:
/u01/app/grid/crsdata/db195/crsconfig/rootcrs_db195_2019 -07-31 _08 -10-55 AM.log
2019 / 07 / 31 08 : 11 : 34 CLSRSC -594 : Executing installation step 1 of 19 : 'SetupTFA'.
2019 / 07 / 31 08 : 11 : 34 CLSRSC -594 : Executing installation step 2 of 19 : 'ValidateEnv'.
2019 / 07 / 31 08 : 11 : 34 CLSRSC -363 : User ignored prerequisites during installation
2019 / 07 / 31 08 : 11 : 34 CLSRSC -594 : Executing installation step 3 of 19 : 'CheckFirstNode'.
2019 / 07 / 31 08 : 11 : 44 CLSRSC -594 : Executing installation step 4 of 19 : 'GenSiteGUIDs'.
2019 / 07 / 31 08 : 11 : 44 CLSRSC -594 : Executing installation step 5 of 19 : 'SetupOSD'.
2019 / 07 / 31 08 : 11 : 45 CLSRSC -594 : Executing installation step 6 of 19 : 'CheckCRSConfig'.
2019 / 07 / 31 08 : 11 : 51 CLSRSC -594 : Executing installation step 7 of 19 : 'SetupLocalGPNP'.
2019 / 07 / 31 08 : 12 : 03 CLSRSC -594 : Executing installation step 8 of 19 : 'CreateRootCert'.
2019 / 07 / 31 08 : 12 : 04 CLSRSC -594 : Executing installation step 9 of 19 : 'ConfigOLR'.
2019 / 07 / 31 08 : 12 : 32 CLSRSC -594 : Executing installation step 10 of 19 : 'ConfigCHMOS'.
2019 / 07 / 31 08 : 12 : 33 CLSRSC -594 : Executing installation step 11 of 19 : 'CreateOHASD'.
2019 / 07 / 31 08 : 12 : 56 CLSRSC -594 : Executing installation step 12 of 19 : 'ConfigOHASD'.
2019 / 07 / 31 08 : 12 : 59 CLSRSC -330 : Adding Clusterware entries to file 'oracle-ohasd.service'
2019 / 07 / 31 08 : 13 : 59 CLSRSC -4002 : Successfully installed Oracle Trace File Analyzer (TFA) Collector.
2019 / 07 / 31 08 : 14 : 31 CLSRSC -594 : Executing installation step 13 of 19 : 'InstallAFD'.
2019 / 07 / 31 08 : 14 : 42 CLSRSC -594 : Executing installation step 14 of 19 : 'InstallACFS'.
2019 / 07 / 31 08 : 14 : 51 CLSRSC -594 : Executing installation step 15 of 19 : 'InstallKA'.
2019 / 07 / 31 08 : 14 : 58 CLSRSC -594 : Executing installation step 16 of 19 : 'InitConfig'.
2019 / 07 / 31 08 : 15 : 32 CLSRSC -594 : Executing installation step 17 of 19 : 'StartCluster'.
2019 / 07 / 31 08 : 17 : 41 CLSRSC -343 : Successfully started Oracle Clusterware stack
2019 / 07 / 31 08 : 17 : 42 CLSRSC -594 : Executing installation step 18 of 19 : 'ConfigNode'.
2019 / 07 / 31 08 : 22 : 03 CLSRSC -594 : Executing installation step 19 of 19 : 'PostConfig'.
2019 / 07 / 31 08 : 23 : 05 CLSRSC -325 : Configure Oracle Grid Infrastructure for a Cluster ... succeeded
[root@db195 ~] #
这段时间从打印的日志来看,虽然耗时也比以前 11g 时代长,但实际相比 12c 的上一个版本 18c 来说却缩短了不少。
root 脚本成功执行完后继续安装 :
注:最后这个报错提示,查看日志发现是因为使用了一个 scan ip 的提示,可以忽略。
至此 GI 配置完成 。
3.5验证 crsctl 的状态
crsctl stat res -t 查看集群资源状态信息,看到 19c 实际相对 18c 来说,有做很多的精简,更趋于稳定性因素考虑 ~
[grid@db193 ~]$ crsctl stat res -t
Name Target State Server State details
Local Resources
ora.LISTENER.lsnr
ONLINE ONLINE db193 STABLE
ONLINE ONLINE db195 STABLE
ora.chad
ONLINE ONLINE db193 STABLE
ONLINE ONLINE db195 STABLE
ora.net1.network
ONLINE ONLINE db193 STABLE
ONLINE ONLINE db195 STABLE
ora.ons
ONLINE ONLINE db193 STABLE
ONLINE ONLINE db195 STABLE
Cluster Resources
ora.ASMNET1LSNR_ASM.lsnr(ora.asmgroup)
1 ONLINE ONLINE db193 STABLE
2 ONLINE ONLINE db195 STABLE
3 OFFLINE OFFLINE STABLE
ora.CRS.dg(ora.asmgroup)
1 ONLINE ONLINE db193 STABLE
2 ONLINE ONLINE db195 STABLE
3 OFFLINE OFFLINE STABLE
ora.LISTENER_SCAN1.lsnr
1 ONLINE ONLINE db193 STABLE
ora.asm(ora.asmgroup)
1 ONLINE ONLINE db193 Started,STABLE
2 ONLINE ONLINE db195 Started,STABLE
3 OFFLINE OFFLINE STABLE
ora.asmnet1.asmnetwork(ora.asmgroup)
1 ONLINE ONLINE db193 STABLE
2 ONLINE ONLINE db195 STABLE
3 OFFLINE OFFLINE STABLE
ora.cvu
1 ONLINE ONLINE db193 STABLE
ora.db193.vip
1 ONLINE ONLINE db193 STABLE
ora.db195.vip
1 ONLINE ONLINE db195 STABLE
ora.qosmserver
1 ONLINE ONLINE db193 STABLE
ora.scan1.vip
1 ONLINE ONLINE db193 STABLE
crsctl stat res -t -init
[grid@db193 ~]$ crsctl stat res -t -init
Name Target State Server State details
Cluster Resources
ora.asm
1 ONLINE ONLINE db193 Started,STABLE
ora.cluster_interconnect.haip
1 ONLINE ONLINE db193 STABLE
ora.crf
1 ONLINE ONLINE db193 STABLE
ora.crsd
1 ONLINE ONLINE db193 STABLE
ora.cssd
1 ONLINE ONLINE db193 STABLE
ora.cssdmonitor
1 ONLINE ONLINE db193 STABLE
ora.ctssd
1 ONLINE ONLINE db193 ACTIVE:0,STABLE
ora.diskmon
1 OFFLINE OFFLINE STABLE
ora.evmd
1 ONLINE ONLINE db193 STABLE
ora.gipcd
1 ONLINE ONLINE db193 STABLE
ora.gpnpd
1 ONLINE ONLINE db193 STABLE
ora.mdnsd
1 ONLINE ONLINE db193 STABLE
ora.storage
1 ONLINE ONLINE db193 STABLE
3.6测试集群的 FAILED OVER 功能
节点 2 被重启,查看节点 1 状态:
[grid@db193 ~]$ crsctl stat res -t
Name Target State Server State details
Local Resources
ora.LISTENER.lsnr
ONLINE ONLINE db193 STABLE
ora.chad
ONLINE ONLINE db193 STABLE
ora.net1.network
ONLINE ONLINE db193 STABLE
ora.ons
ONLINE ONLINE db193 STABLE
Cluster Resources
ora.ASMNET1LSNR_ASM.lsnr(ora.asmgroup)
1 ONLINE ONLINE db193 STABLE
2 ONLINE OFFLINE STABLE
3 OFFLINE OFFLINE STABLE
ora.CRS.dg(ora.asmgroup)
1 ONLINE ONLINE db193 STABLE
2 ONLINE OFFLINE STABLE
3 OFFLINE OFFLINE STABLE
ora.LISTENER_SCAN1.lsnr
1 ONLINE ONLINE db193 STABLE
ora.asm(ora.asmgroup)
1 ONLINE ONLINE db193 Started,STABLE
2 ONLINE OFFLINE STABLE
3 OFFLINE OFFLINE STABLE
ora.asmnet1.asmnetwork(ora.asmgroup)
1 ONLINE ONLINE db193 STABLE
2 ONLINE OFFLINE STABLE
3 OFFLINE OFFLINE STABLE
ora.cvu
1 ONLINE ONLINE db193 STABLE
ora.db193.vip
1 ONLINE ONLINE db193 STABLE
ora.db195.vip
1 ONLINE INTERMEDIATE db193 FAILED OVER,STABLE
ora.qosmserver
1 ONLINE ONLINE db193 STABLE
ora.scan1.vip
1 ONLINE ONLINE db193 STABLE
节点 1 被重启,查看节点 2 状态:
[grid@db195 ~]$ crsctl stat res -t
Name Target State Server State details
Local Resources
ora.LISTENER.lsnr
ONLINE ONLINE db195 STABLE
ora.chad
ONLINE ONLINE db195 STABLE
ora.net1.network
ONLINE ONLINE db195 STABLE
ora.ons
ONLINE ONLINE db195 STABLE
Cluster Resources
ora.ASMNET1LSNR_ASM.lsnr(ora.asmgroup)
1 ONLINE OFFLINE STABLE
2 ONLINE ONLINE db195 STABLE
3 OFFLINE OFFLINE STABLE
ora.CRS.dg(ora.asmgroup)
1 ONLINE OFFLINE STABLE
2 ONLINE ONLINE db195 STABLE
3 OFFLINE OFFLINE STABLE
ora.LISTENER_SCAN1.lsnr
1 ONLINE ONLINE db195 STABLE
ora.asm(ora.asmgroup)
1 ONLINE OFFLINE STABLE
2 ONLINE ONLINE db195 Started,STABLE
3 OFFLINE OFFLINE STABLE
ora.asmnet1.asmnetwork(ora.asmgroup)
1 ONLINE OFFLINE STABLE
2 ONLINE ONLINE db195 STABLE
3 OFFLINE OFFLINE STABLE
ora.cvu
1 ONLINE ONLINE db195 STABLE
ora.db193.vip
1 ONLINE INTERMEDIATE db195 FAILED OVER,STABLE
ora.db195.vip
1 ONLINE ONLINE db195 STABLE
ora.qosmserver
1 ONLINE ONLINE db195 STABLE
ora.scan1.vip
1 ONLINE ONLINE db195 STABLE
附:集群日志位置:
-- 如果忘记,可以使用 adrci 查看日志位置
[grid@db195 trace]$ pwd
/u01/app/grid/diag/crs/db195/crs/trace
[grid@db195 trace]$ tail - 20 f alert.log
2019 - 07 - 31 09 : 13 : 53.813 [CRSD( 9156 )]CRS- 8500 : Oracle Clusterware CRSD process is starting with operating system process ID 9156
2019 - 07 - 31 09 : 14 : 05.943 [CRSD( 9156 )]CRS- 1012 : The OCR service started on node db195.
2019 - 07 - 31 09 : 14 : 06.585 [CRSD( 9156 )]CRS- 1201 : CRSD started on node db195.
2019 - 07 - 31 09 : 14 : 15.787 [ORAAGENT( 9824 )]CRS- 8500 : Oracle Clusterware ORAAGENT process is starting with operating system process ID 9824
2019 - 07 - 31 09 : 14 : 16.576 [ORAROOTAGENT( 9856 )]CRS- 8500 : Oracle Clusterware ORAROOTAGENT process is starting with operating system process ID 9856
2019 - 07 - 31 09 : 14 : 28.516 [ORAAGENT( 10272 )]CRS- 8500 : Oracle Clusterware ORAAGENT process is starting with operating system process ID 10272
2019 - 07 - 31 09 : 21 : 07.409 [OCTSSD( 8378 )]CRS- 2407 : The new Cluster Time Synchronization Service reference node is host db195.
2019 - 07 - 31 09 : 21 : 10.569 [OCSSD( 7062 )]CRS- 1625 : Node db193, number 1 , was shut down
2019 - 07 - 31 09 : 21 : 10.948 [OCSSD( 7062 )]CRS- 1601 : CSSD Reconfiguration complete. Active nodes are db195 .
2019 - 07 - 31 09 : 21 : 11.055 [CRSD( 9156 )]CRS- 5504 : Node down event reported for node 'db193 '.
2019 - 07 - 31 09 : 21 : 11.292 [CRSD( 9156 )]CRS- 2773 : Server 'db193 ' has been removed from pool 'Free '.
2019 - 07 - 31 09 : 22 : 25.944 [OLOGGERD( 21377 )]CRS- 8500 : Oracle Clusterware OLOGGERD process is starting with operating system process ID 21377
2019 - 07 - 31 09 : 23 : 41.207 [OCSSD( 7062 )]CRS- 1601 : CSSD Reconfiguration complete. Active nodes are db193 db195 .
[grid@db195 trace]$ tail - 5 f ocssd.trc
2019 - 07 - 31 09 : 35 : 40.732 : CSSD: 527664896 : [ INFO] clssgmDiscEndpcl: initiating gipcDestroy 0 x27553
2019 - 07 - 31 09 : 35 : 40.732 : CSSD: 527664896 : [ INFO] clssgmDiscEndpcl: completed gipcDestroy 0 x27553
2019 - 07 - 31 09 : 35 : 42.136 : CSSD: 527664896 : [ INFO] : Processing member data change type 1 , size 4 for group HB+ASM, memberID 17 : 2 : 2
2019 - 07 - 31 09 : 35 : 42.136 : CSSD: 527664896 : [ INFO] : Sending member data change to GMP for group HB+ASM, memberID 17 : 2 : 2
2019 - 07 - 31 09 : 35 : 42.138 : CSSD: 1010091776 : [ INFO] clssgmpcMemberDataUpdt: grockName HB+ASM memberID 17 : 2 : 2 , datatype 1 datasize 4
至此, 19c 的 GI 配置已全部完成。
四、DB(Database)安装**
4.1解压DB的安装包
oracle 用户登录,在 $ORACLE_HOME 下解压 db 包( 19c 的 db 也是像 18c 一样直接解压到 $ORACLE_HOME 下,免安装):
[oracle@db193 ~]$ mkdir -p /u01/app/oracle/product/19.3.0/db_1
[oracle@db193 ~]$ cd $ORACLE_HOME
[oracle@db193 db_1]$ pwd
/u01/app/oracle/product/19.3.0/db_1
[oracle@db193 db_1]$ ls
[oracle@db193 db_1]$ unzip /u01/media/LINUX.X64_193000_db_home.zip
4.2 DB软件配置
打开 Xmanager 软件, Oracle 用户登录,配置数据库软件。
[oracle@db193 db_1]$ pwd
/u01/app/oracle/product/19.3.0/db_1
[oracle@db193 db_1]$ export DISPLAY=192.168.1.31:0.0
[oracle@db193 db_1]$ ./runInstaller
下面截取 DB 软件配置的过程如下:
注:这里选择只安装软件,数据库后面创建好 ASM 磁盘组后再运行 dbca 创建 。
注:配置好 ssh 等价性。
注:可以进行修复的,按提示执行脚本修复。
我这里还有 swap 的问题,因为是测试环境资源有限,可以忽略,如果生产环境,强烈建议调整符合要求。
如果还有其他的检查项未通过,则无论是生产还是测试环境,都不建议忽略,而应该整改符合要求为止。
注:最后 root 用户按安装提示执行 1 个脚本,需要在各节点分别执行。
至此,已完成 DB 软件的配置。
4.3 ASMCA创建磁盘组
打开 Xmanager 软件, grid 用户登录, asmca 创建 ASM 磁盘组
[grid@db193 ~]$ export DISPLAY=192.168.1.31:0.0
[grid@db193 ~]$ asmca
使用 asmca 调用创建磁盘组的图形界面 , 首先映入眼帘的是鲜艳的 19c 配色图 :
然后正式进入 asmca 的界面:
这里我先创建一个 DATA 磁盘组,一个 FRA 磁盘组,冗余选择 external( 生产如果选择 external ,底层存储必须已经做了 RAID) 。
这里看到新创建的 DATA 和 FRA 磁盘组已经创建完成并成功 mount 。
4.4 DBCA建库
打开 Xmanager 软件, oracle 用户登录, dbca 图形创建数据库。
下面是 DBCA 建库的过程截图:
注:这里选择是否启用 CDB ,并定义 CDB 和 PDB 的名称。我选择启用 CDB , CDB 名称为 jydb ,并自动创建 2 个 PDB ,前缀名就叫 pdb 。
注:这里我选择使用 OMF ,默认也是使用 OMF 。
注:这里我暂时没有启用 FRA ,后续调整开归档时将归档文件放在 +FRA 磁盘组中。
注:这里选择内存分配具体值,选择数据库的字符集,我这里没选择,字符集默认是 AL32UTF8 。需要根据实际情况修改。
注:这里可以选择是否配置 EM ,我这里选择配置,如果你不需要,可以选择不配置。 CVU 一般也不配置,我这里学习目的选择配置。
注:这里设置密码,我实验环境直接 oracle ,不符合规范,生产环境建议设置复杂密码。
注:这里可以选择将创建数据库的脚本保存下来,根据你的需求,可选可不选。
注:这里如果还有其他的检查未通过,则不能忽略。我这里是因为使用一个 scan ,对应报错可以忽略。
注:这里是安装信息的概览,建议认真核实,如果有不对的还可以退回去改。确认无误后开始创建数据库。
注: 19c 建库的时间还是和 18c 一样,长到让人崩溃,感觉以后 DBA 安装过程中可以提前下几个电影来边等边看了。
INFO: Aug 01, 2019 4:42:58 AM oracle.assistants.common.base.driver.AssistantConfigDriver updateExitStatus
INFO: Total time taken for DBCA operation in mm:ss is 286:16
至此, Oracle 19.3 RAC 数据库已经创建成功,目前如果你的企业想上 12c 系列的数据库,推荐直接选择 19c ( 12c 的最终版本 12.2.0.3 ), 19c 相对 18c 来说更趋于稳定, Oracle 的支持周期也更长。
4.5验证crsctl的状态
grid 用户登录, crsctl stat res -t 查看集群资源的状态,发现各节点的 DB 资源已经正常 Open 。
[grid@db193 ~]$ crsctl stat res -t
Name Target State Server State details
Local Resources
ora.LISTENER.lsnr
ONLINE ONLINE db193 STABLE
ONLINE ONLINE db195 STABLE
ora.chad
ONLINE ONLINE db193 STABLE
ONLINE ONLINE db195 STABLE
ora.net1.network
ONLINE ONLINE db193 STABLE
ONLINE ONLINE db195 STABLE
ora.ons
ONLINE ONLINE db193 STABLE
ONLINE ONLINE db195 STABLE
Cluster Resources
ora.ASMNET1LSNR_ASM.lsnr(ora.asmgroup)
1 ONLINE ONLINE db193 STABLE
2 ONLINE ONLINE db195 STABLE
3 OFFLINE OFFLINE STABLE
ora.CRS.dg(ora.asmgroup)
1 ONLINE ONLINE db193 STABLE
2 ONLINE ONLINE db195 STABLE
3 OFFLINE OFFLINE STABLE
ora.DATA.dg(ora.asmgroup)
1 ONLINE ONLINE db193 STABLE
2 ONLINE ONLINE db195 STABLE
3 ONLINE OFFLINE STABLE
ora.FRA.dg(ora.asmgroup)
1 ONLINE ONLINE db193 STABLE
2 ONLINE ONLINE db195 STABLE
3 ONLINE OFFLINE STABLE
ora.LISTENER_SCAN1.lsnr
1 ONLINE ONLINE db193 STABLE
ora.asm(ora.asmgroup)
1 ONLINE ONLINE db193 Started,STABLE
2 ONLINE ONLINE db195 Started,STABLE
3 OFFLINE OFFLINE STABLE
ora.asmnet1.asmnetwork(ora.asmgroup)
1 ONLINE ONLINE db193 STABLE
2 ONLINE ONLINE db195 STABLE
3 OFFLINE OFFLINE STABLE
ora.cvu
1 ONLINE ONLINE db193 STABLE
ora.db193.vip
1 ONLINE ONLINE db193 STABLE
ora.db195.vip
1 ONLINE ONLINE db195 STABLE
ora.jydb.db
1 ONLINE ONLINE db193 Open,HOME=/u01/app/oracle/product/19.3.0/db_1,STABLE
2 ONLINE ONLINE db195 Open,HOME=/u01/app/oracle/product/19.3.0/db_1,STABLE
ora.qosmserver
1 ONLINE ONLINE db193 STABLE
ora.scan1.vip
1 ONLINE ONLINE db193 STABLE
oracle 用户登录, sqlplus / as sysdba
[oracle@db193 ~]$ sqlplus / as sysdba
SQL*Plus: Release 19.0.0.0.0 - Production on Thu Aug 1 06:49:29 2019
Version 19.3.0.0.0
Copyright (c) 1982, 2019, Oracle. All rights reserved.
Connected to:
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.3.0.0.0
SQL> select inst_id, name, open_mode from gv$database;
INST_ID NAME OPEN_MODE
1 JYDB READ WRITE
2 JYDB READ WRITE
SQL> show con_id
CON_ID
1
SQL> show con_name
CON_NAME
CDB$ROOT
SQL> show pdbs
CON_ID CON_NAME OPEN MODE RESTRICTED
2 PDB$SEED READ ONLY NO
3 PDB1 READ WRITE NO
4 PDB2 READ WRITE NO
SQL> alter session set container = pdb2;
Session altered.
SQL> show pdbs
CON_ID CON_NAME OPEN MODE RESTRICTED
4 PDB2 READ WRITE NO
SQL> select name from v$datafile;
NAME
+DATA/JYDB/8F00F4E12A9F708DE053C101A8C0395D/DATAFILE/system.280.1015129671
+DATA/JYDB/8F00F4E12A9F708DE053C101A8C0395D/DATAFILE/sysaux.281.1015129671
+DATA/JYDB/8F00F4E12A9F708DE053C101A8C0395D/DATAFILE/undotbs1.279.1015129669
+DATA/JYDB/8F00F4E12A9F708DE053C101A8C0395D/DATAFILE/undo_2.283.1015129973
+DATA/JYDB/8F00F4E12A9F708DE053C101A8C0395D/DATAFILE/users.284.1015130015
SQL>
可以看到所有的资源均正常,至此,整个在 OEL 7.6 上安装 Oracle 19.3 GI & RAC 的工作已经全部结束。
如果觉得我的文章对您有用,请点赞。您的支持将鼓励我继续创作!
赞6
添加新评论0 条评论