oracle19C grid安装
<p>[TOC]</p>
<h2>说明</h2>
<ul>
<li>
<p><a href="https://blog.csdn.net/stevensxiao/article/details/100609030">参考文章</a></p>
</li>
<li>
<p>附件:LINUX.X64_193000_grid_home.zip</p>
</li>
<li>
<p>先安装oracle软件,在创建实例之前就安装grid</p>
</li>
<li>安装grid需要的用户及组信息,在安装oracle软件时就创建</li>
</ul>
<h2>安装前配置参数</h2>
<ul>
<li>
<p>检查grid用户权限信息,grid必须有racdba权限</p>
<pre><code>[root@asmdemo ~]# id grid
uid=54322(grid) gid=54321(oinstall) groups=54321(oinstall),54322(dba),54327(asmdba),54328(asmoper),54329(asmadmin),54330(racdba)</code></pre>
</li>
<li>
<p>创建目录结构
grid用户也有自己的ORACLE_HOME和ORACLE_BASE。<br />
ORACLE_HOME设置为/u01/app/grid/19.0.0,比oracle用户的/u01/app/oracle/product/19.3.0/dbhome_1简洁;<br />
ORACLE_BASE设为/u01/app/grid,和oracle用户的/u01/app/oracle类似。 </p>
</li>
<li>
<p>使用root用户执行,创建目录和授权</p>
<pre><code>mkdir -p /u01/app/grid/19.0.0
mkdir -p /u01/app/grid
mkdir -p /u01/app/oraInventory
chown -R grid:oinstall /u01/app/oraInventory
chown -R grid:oinstall /u01/app/grid/19.0.0
chown -R grid:oinstall /u01/app/grid</code></pre>
</li>
<li>
<p>设置环境变量</p>
<pre><code>[grid@asmdemo 19.0.0]$ vim ~/.bash_profile
export ORACLE_HOME=/u01/app/grid/19.0.0
export ORACLE_BASE=/u01/app/grid
export PATH=$ORACLE_HOME/bin:$PATH
export ORACLE_SID=+ASM</code></pre>
</li>
<li>下载LINUX.X64_193000_grid_home.zip放到oracle_home里去</li>
</ul>
<h2>上传安装包、解压安装(grid用户操作)</h2>
<ul>
<li>解压
<pre><code>[grid@asmdemo 19.0.0]$ pwd
/u01/app/grid/19.0.0
[grid@asmdemo 19.0.0]$ ll
total 2023360
-rw-------. 1 root root 2034892800 Oct 14 22:08 LINUX.X64_193000_grid_home.zip
[grid@asmdemo 19.0.0]$ unzip LINUX.X64_193000_grid_home.zip</code></pre></li>
</ul>
<h2>存储准备(参照创建分区小节)</h2>
<p>10G sdb,sdc 做 ARCH 盘<br />
5G sdd,sde 做 REDO 盘<br />
20G sdf,sdg做 DATA 盘 </p>
<ul>
<li>
<p>分区</p>
<pre><code>#fdisk /dev/sdc
#fdisk /dev/sdd</code></pre>
</li>
<li>查看分区后的结果
<pre><code>[root@asmdemo ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sdf 8:80 0 20G 0 disk
└─sdf1 8:81 0 18.6G 0 part
sdd 8:48 0 5G 0 disk
└─sdd1 8:49 0 4.7G 0 part
sdb 8:16 0 10G 0 disk
└─sdb1 8:17 0 9.3G 0 part
sr0 11:0 1 1024M 0 rom
sdg 8:96 0 20G 0 disk
└─sdg1 8:97 0 18.6G 0 part
sde 8:64 0 5G 0 disk
└─sde1 8:65 0 4.7G 0 part
sdc 8:32 0 10G 0 disk
└─sdc1 8:33 0 9.3G 0 part
sda 8:0 0 100G 0 disk
├─sda2 8:2 0 78G 0 part
│ ├─ol-swap 252:1 0 8G 0 lvm [SWAP]
│ └─ol-root 252:0 0 70G 0 lvm /
└─sda1 8:1 0 1G 0 part /boot</code></pre></li>
</ul>
<h2>安装软件(第一次是安装软件)</h2>
<pre><code>[grid@asmdemo 19.0.0]$ pwd
/u01/app/grid/19.0.0
[grid@asmdemo 19.0.0]$ ll gridSetup.sh
-rwxr-x---. 1 grid oinstall 3294 Mar 9 2017 gridSetup.sh
[grid@asmdemo 19.0.0]$ ./gridSetup.sh </code></pre>
<ul>
<li>选择只安装软件 </li>
</ul>
<p><img src="https://www.showdoc.com.cn/server/api/attachment/visitfile/sign/363bdc523d8aada1260c88a51cb490d3" alt="" /></p>
<ul>
<li>自动识别到节点的,节点能通讯 </li>
</ul>
<p><img src="https://www.showdoc.com.cn/server/api/attachment/visitfile/sign/38883c6fd9a12a14a6c6da02492f55bf" alt="" /></p>
<p><img src="https://www.showdoc.com.cn/server/api/attachment/visitfile/sign/e431cf33b8dc1a2030dc082c067ce210" alt="" /></p>
<p><img src="https://www.showdoc.com.cn/server/api/attachment/visitfile/sign/400281e100cca0c24c8b992327e9ce09" alt="" /></p>
<p><img src="https://www.showdoc.com.cn/server/api/attachment/visitfile/sign/5e80a2a16fe54e49aa273b1a7a8dda9c" alt="" /></p>
<p><img src="https://www.showdoc.com.cn/server/api/attachment/visitfile/sign/6153659121e6b6da6b7e4da6c095ce0b" alt="" /></p>
<p><img src="https://www.showdoc.com.cn/server/api/attachment/visitfile/sign/6cb56f100d38a8ba488fa58862247b41" alt="" /></p>
<h2>配置存储持久化</h2>
<p>ASM设备必须设置存储持久化,就是保证设备名,设备的权限在重启后不变化。有3种方式,udev,ASMLIB和ASM Filter Driver (Oracle ASMFD)。<br />
ASMFD是最新的,不是每一个操作系统都支持,我们另文介绍。ASMLIB过时了,不再讨论。<br />
udev是操作系统自带的,好处是不需要额外安装驱动。此处使用udev,<a href="https://oracle-base.com/articles/linux/udev-scsi-rules-configuration-in-oracle-linux">这篇文章</a>,写得非常全面,感谢作者。 </p>
<ul>
<li>
<p>首先获取磁盘的SCSI ID,这是唯一不变的信息:(命令与系统相关)</p>
<pre><code># /usr/lib/udev/scsi_id -g -u -d /dev/sdb
# /usr/lib/udev/scsi_id -g -u -d /dev/sdc</code></pre>
</li>
<li>
<p>将scsi设备配置为受信任设备。如果文件不存在,请创建该文件。</p>
<pre><code># cat /etc/scsi_id.config
# options=-g</code></pre>
</li>
<li>
<p>创建获取参数脚本</p>
<pre><code>[root@asmdemo script]# vim getscsiid.sh
#!/bin/bash
i=1
for disk in b c d e f g; do
scsiid=$(/usr/lib/udev/scsi_id -g -u -d /dev/sd$disk)
echo 'KERNEL=="sd?1", SUBSYSTEM=="block", PROGRAM=="/usr/lib/udev/scsi_id -g -u -d /dev/$parent", RESULT=="'${scsiid}'", SYMLINK+="asm-disk'${i}'", OWNER="grid", GROUP="dba", MODE="0660"'
((i=i+1))
done
for disk in b c d e f g; do
echo /sbin/partprobe /dev/sd${disk}1
done</code></pre>
</li>
<li>
<p>执行得到,前部分配置,后部分执行参数系统变更</p>
<pre><code>[root@asmdemo script]# sh getscsiid.sh
KERNEL=="sd?1", SUBSYSTEM=="block", PROGRAM=="/usr/lib/udev/scsi_id -g -u -d /dev/$parent", RESULT=="35000c2927e9bcf83", SYMLINK+="asm-disk1", OWNER="grid", GROUP="dba", MODE="0660"
KERNEL=="sd?1", SUBSYSTEM=="block", PROGRAM=="/usr/lib/udev/scsi_id -g -u -d /dev/$parent", RESULT=="35000c298610894c4", SYMLINK+="asm-disk2", OWNER="grid", GROUP="dba", MODE="0660"
KERNEL=="sd?1", SUBSYSTEM=="block", PROGRAM=="/usr/lib/udev/scsi_id -g -u -d /dev/$parent", RESULT=="35000c29fcc741146", SYMLINK+="asm-disk3", OWNER="grid", GROUP="dba", MODE="0660"
KERNEL=="sd?1", SUBSYSTEM=="block", PROGRAM=="/usr/lib/udev/scsi_id -g -u -d /dev/$parent", RESULT=="35000c2932a9eb310", SYMLINK+="asm-disk4", OWNER="grid", GROUP="dba", MODE="0660"
KERNEL=="sd?1", SUBSYSTEM=="block", PROGRAM=="/usr/lib/udev/scsi_id -g -u -d /dev/$parent", RESULT=="35000c295c8d40320", SYMLINK+="asm-disk5", OWNER="grid", GROUP="dba", MODE="0660"
KERNEL=="sd?1", SUBSYSTEM=="block", PROGRAM=="/usr/lib/udev/scsi_id -g -u -d /dev/$parent", RESULT=="35000c299added5ef", SYMLINK+="asm-disk6", OWNER="grid", GROUP="dba", MODE="0660"
/sbin/partprobe /dev/sdb1
/sbin/partprobe /dev/sdc1
/sbin/partprobe /dev/sdd1
/sbin/partprobe /dev/sde1
/sbin/partprobe /dev/sdf1
/sbin/partprobe /dev/sdg1</code></pre>
</li>
<li>
<p>设置参数</p>
<pre><code>[root@asmdemo script]# vi /etc/udev/rules.d/99-oracle-asmdevices.rules
[root@asmdemo script]# cat /etc/udev/rules.d/99-oracle-asmdevices.rules
KERNEL=="sd?1", SUBSYSTEM=="block", PROGRAM=="/usr/lib/udev/scsi_id -g -u -d /dev/$parent", RESULT=="35000c2927e9bcf83", SYMLINK+="asm-disk1", OWNER="grid", GROUP="dba", MODE="0660"
KERNEL=="sd?1", SUBSYSTEM=="block", PROGRAM=="/usr/lib/udev/scsi_id -g -u -d /dev/$parent", RESULT=="35000c298610894c4", SYMLINK+="asm-disk2", OWNER="grid", GROUP="dba", MODE="0660"
KERNEL=="sd?1", SUBSYSTEM=="block", PROGRAM=="/usr/lib/udev/scsi_id -g -u -d /dev/$parent", RESULT=="35000c29fcc741146", SYMLINK+="asm-disk3", OWNER="grid", GROUP="dba", MODE="0660"
KERNEL=="sd?1", SUBSYSTEM=="block", PROGRAM=="/usr/lib/udev/scsi_id -g -u -d /dev/$parent", RESULT=="35000c2932a9eb310", SYMLINK+="asm-disk4", OWNER="grid", GROUP="dba", MODE="0660"
KERNEL=="sd?1", SUBSYSTEM=="block", PROGRAM=="/usr/lib/udev/scsi_id -g -u -d /dev/$parent", RESULT=="35000c295c8d40320", SYMLINK+="asm-disk5", OWNER="grid", GROUP="dba", MODE="0660"
KERNEL=="sd?1", SUBSYSTEM=="block", PROGRAM=="/usr/lib/udev/scsi_id -g -u -d /dev/$parent", RESULT=="35000c299added5ef", SYMLINK+="asm-disk6", OWNER="grid", GROUP="dba", MODE="0660"</code></pre>
</li>
<li>
<p>通知系统变更</p>
<pre><code># /sbin/partprobe /dev/sdb1
# /sbin/partprobe /dev/sdc1
# /sbin/partprobe /dev/sdd1
# /sbin/partprobe /dev/sde1
# /sbin/partprobe /dev/sdf1
# /sbin/partprobe /dev/sdg1</code></pre>
</li>
<li>
<p>查看设备权限和属主:</p>
<pre><code>[root@asmdemo etc]# ls -l /dev/sd?1
brw-rw----. 1 root disk 8, 1 Oct 14 21:07 /dev/sda1
brw-rw----. 1 grid dba 8, 17 Oct 15 09:01 /dev/sdb1
brw-rw----. 1 grid dba 8, 33 Oct 15 09:01 /dev/sdc1
brw-rw----. 1 grid dba 8, 49 Oct 15 09:01 /dev/sdd1
brw-rw----. 1 grid dba 8, 65 Oct 15 09:01 /dev/sde1
brw-rw----. 1 grid dba 8, 81 Oct 15 09:01 /dev/sdf1
brw-rw----. 1 grid dba 8, 97 Oct 15 09:01 /dev/sdg1
[root@asmdemo etc]# ls -l /dev/asm*
lrwxrwxrwx. 1 root root 4 Oct 15 09:01 /dev/asm-disk1 -> sdb1
lrwxrwxrwx. 1 root root 4 Oct 15 09:01 /dev/asm-disk2 -> sdc1
lrwxrwxrwx. 1 root root 4 Oct 15 09:01 /dev/asm-disk3 -> sdd1
lrwxrwxrwx. 1 root root 4 Oct 15 09:01 /dev/asm-disk4 -> sde1
lrwxrwxrwx. 1 root root 4 Oct 15 09:01 /dev/asm-disk5 -> sdf1
lrwxrwxrwx. 1 root root 4 Oct 15 09:01 /dev/asm-disk6 -> sdg1</code></pre>
</li>
<li>
<p>测试udev设置:</p>
<pre><code>[root@asmdemo etc]# udevadm test /block/sdb/sdb1
[root@asmdemo etc]# udevadm test /block/sdc/sdc1
[root@asmdemo etc]# udevadm test /block/sdd/sdd1
[root@asmdemo etc]# udevadm test /block/sde/sde1
[root@asmdemo etc]# udevadm test /block/sdf/sdf1
[root@asmdemo etc]# udevadm test /block/sdg/sdg1
##有很多信息出来
ID_PATH=pci-0000:02:02.0-ata-1.0
ID_PATH_TAG=pci-0000_02_02_0-ata-1_0
ID_REVISION=00000001
ID_SERIAL=VMware_Virtual_SATA_Hard_Drive_00000000000000000001
ID_SERIAL_SHORT=00000000000000000001
ID_TYPE=disk
ID_WWN=0x5000c2927e9bcf83
ID_WWN_WITH_EXTENSION=0x5000c2927e9bcf83
MAJOR=8
MINOR=17
PARTN=1
SUBSYSTEM=block
TAGS=:systemd:
USEC_INITIALIZED=27033085
Unload module index
Unloaded link configuration context.</code></pre>
</li>
<li>
<p>重启UDEV设备:</p>
<pre><code>[root@asmdemo etc]# /sbin/udevadm control --reload-rules</code></pre>
</li>
<li>重启后权限不变,如下
<pre><code>[root@asmdemo dev]# ls -l /dev/sd?1
brw-rw----. 1 root disk 8, 1 Oct 14 21:07 /dev/sda1
brw-rw----. 1 grid dba 8, 17 Oct 15 09:40 /dev/sdb1
brw-rw----. 1 grid dba 8, 33 Oct 15 09:40 /dev/sdc1
brw-rw----. 1 grid dba 8, 49 Oct 15 09:40 /dev/sdd1
brw-rw----. 1 grid dba 8, 65 Oct 15 09:40 /dev/sde1
brw-rw----. 1 grid dba 8, 81 Oct 15 09:40 /dev/sdf1
brw-rw----. 1 grid dba 8, 97 Oct 15 09:40 /dev/sdg1
[root@asmdemo dev]# ls -l /dev/asm*
lrwxrwxrwx. 1 root root 4 Oct 15 09:40 /dev/asm-disk1 -> sdb1
lrwxrwxrwx. 1 root root 4 Oct 15 09:40 /dev/asm-disk2 -> sdc1
lrwxrwxrwx. 1 root root 4 Oct 15 09:40 /dev/asm-disk3 -> sdd1
lrwxrwxrwx. 1 root root 4 Oct 15 09:40 /dev/asm-disk4 -> sde1
lrwxrwxrwx. 1 root root 4 Oct 15 09:40 /dev/asm-disk5 -> sdf1
lrwxrwxrwx. 1 root root 4 Oct 15 09:40 /dev/asm-disk6 -> sdg1</code></pre></li>
</ul>
<h2>安装GI(第二次是设置磁盘组)</h2>
<ul>
<li>使用GI用户(grid),再次启动GI设置程序:
<pre><code>[grid@asmdemo 19.0.0]$ cd $ORACLE_HOME
[grid@asmdemo 19.0.0]$ pwd
/u01/app/grid/19.0.0
[grid@asmdemo 19.0.0]$ ./gridSetup.sh </code></pre></li>
</ul>
<p><img src="https://www.showdoc.com.cn/server/api/attachment/visitfile/sign/7464ad57403d7b749a4d2b27d9a7bfce" alt="" /></p>
<p><img src="https://www.showdoc.com.cn/server/api/attachment/visitfile/sign/bec02533cb5541491cfb7ba9e39ffac1" alt="" /></p>
<p><img src="https://www.showdoc.com.cn/server/api/attachment/visitfile/sign/fabb088d087fd884ddc90a760036cb9d" alt="" /></p>
<p><img src="https://www.showdoc.com.cn/server/api/attachment/visitfile/sign/987588e78af8d8c5034b6a0090fbcf64" alt="" /></p>
<p><img src="https://www.showdoc.com.cn/server/api/attachment/visitfile/sign/390f4f447ce63c9ca5ab247fc51fd36c" alt="" /></p>
<ul>
<li>这个包是集群使用的,可以忽略,如下位置有这个包
<pre><code>[root@asmdemo rpm]# pwd
/u01/app/grid/19.0.0/cv/rpm
[root@asmdemo rpm]# ll
total 12
-rw-r--r--. 1 grid oinstall 11412 Mar 13 2019 cvuqdisk-1.0.10-1.rpm
[root@asmdemo rpm]# rpm -Uvh cvuqdisk-1.0.10-1.rpm </code></pre></li>
</ul>
<p><img src="https://www.showdoc.com.cn/server/api/attachment/visitfile/sign/81408d624cb84e28901c0bedc1ff3bfa" alt="" /></p>
<p><img src="https://www.showdoc.com.cn/server/api/attachment/visitfile/sign/99ea65a6da08965d8eb98d0122a85696" alt="" /></p>
<h2>安装完成后创建oracle实例</h2>
<ul>
<li>
<p>转到ASM管理小节</p>
</li>
<li>核验<br />
至此,GI配置全部完成,用于Oracle数据库安装的磁盘组也已就绪。通过asmca也可以确认:</li>
</ul>