Oracle RAC (Real Application Cluster) is used for complex application to increase database performance, high availability and scalability. In this article, I will show how to install Oracle RAC (12.2.0.1) on Oracle Enterprise Linux 7.1.
Below high level steps will perform to install/configure Oracle RAC:
- Configure 2 Virtual Machine (VM) for 2 Nodes RAC.
- Install Oracle Linux 7.1.
- Oracle Installation Prerequisites.
- Additional Setup.
- Create Shared Disk.
- Clone the Virtual Machine for Node2.
- Install GI (Grid Infrastructure).
- Configure ASM.
- Install Oracle Database Binary and Create Database on RAC.
1. Configure VM for 2 Nodes RAC. Create VM
2. Install Oracle Linux 7.1. OEL 7.1
3. Oracle Installation Prerequisites:
Perform either the Automatic Setup or the Manual Setup to complete the basic prerequisites. The Additional Setup is required for all installations.
3.1. Automatic Setup:
All necessary prerequisites will be performed automatically.
Note::: You may notice that very few or no package installed with 12cR2-Preinstall packages. Because Earlier executed this package – (yum install oracle-rdbms-server-11gR2-preinstall) on this server.
[root@rac12cnode1 ~]# yum install oracle-database-server-12cR2-preinstall -y Loaded plugins: langpacks ol7_UEKR3 | 2.5 kB 00:00:00 ol7_latest | 2.7 kB 00:00:00 (1/2): ol7_latest/x86_64/updateinfo | 3.0 MB 00:00:02 (2/2): ol7_latest/x86_64/primary_db | 39 MB 00:00:14 Resolving Dependencies --> Running transaction check ---> Package oracle-database-server-12cR2-preinstall.x86_64 0:1.0-5.el7 will be installed --> Finished Dependency Resolution Dependencies Resolved ========================================================================================================================================================== Package Arch Version Repository Size ========================================================================================================================================================== Installing: oracle-database-server-12cR2-preinstall x86_64 1.0-5.el7 ol7_latest 19 k Transaction Summary ========================================================================================================================================================== Install 1 Package Total download size: 19 k Installed size: 55 k Downloading packages: oracle-database-server-12cR2-preinstall-1.0-5.el7.x86_64.rpm | 19 kB 00:00:01 Running transaction check Running transaction test Transaction test succeeded Running transaction Warning: RPMDB altered outside of yum. Installing : oracle-database-server-12cR2-preinstall-1.0-5.el7.x86_64 1/1 Verifying : oracle-database-server-12cR2-preinstall-1.0-5.el7.x86_64 1/1 Installed: oracle-database-server-12cR2-preinstall.x86_64 0:1.0-5.el7 Complete!
You don’t need to run below command if you already done above one.
[root@rac12cnode1 ~]# yum install oracle-rdbms-server-11gR2-preinstall Loaded plugins: langpacks Resolving Dependencies --> Running transaction check ---> Package oracle-rdbms-server-11gR2-preinstall.x86_64 0:1.0-6.el7 will be installed --> Processing Dependency: gcc-c++ for package: oracle-rdbms-server-11gR2-preinstall-1.0-6.el7.x86_64 --> Processing Dependency: compat-libcap1 for package: oracle-rdbms-server-11gR2-preinstall-1.0-6.el7.x86_64 --> Processing Dependency: ksh for package: oracle-rdbms-server-11gR2-preinstall-1.0-6.el7.x86_64 --> Processing Dependency: libaio-devel for package: oracle-rdbms-server-11gR2-preinstall-1.0-6.el7.x86_64 --> Processing Dependency: compat-libstdc++-33 for package: oracle-rdbms-server-11gR2-preinstall-1.0-6.el7.x86_64 --> Processing Dependency: libstdc++-devel for package: oracle-rdbms-server-11gR2-preinstall-1.0-6.el7.x86_64 --> Running transaction check ---> Package compat-libcap1.x86_64 0:1.10-7.el7 will be installed ---> Package compat-libstdc++-33.x86_64 0:3.2.3-72.el7 will be installed ---> Package gcc-c++.x86_64 0:4.8.5-44.0.3.el7 will be installed --> Processing Dependency: libstdc++ = 4.8.5-44.0.3.el7 for package: gcc-c++-4.8.5-44.0.3.el7.x86_64 --> Processing Dependency: gcc = 4.8.5-44.0.3.el7 for package: gcc-c++-4.8.5-44.0.3.el7.x86_64 ---> Package ksh.x86_64 0:20120801-142.0.1.el7 will be installed ---> Package libaio-devel.x86_64 0:0.3.109-13.el7 will be installed --> Processing Dependency: libaio(x86-64) = 0.3.109-13.el7 for package: libaio-devel-0.3.109-13.el7.x86_64 ---> Package libstdc++-devel.x86_64 0:4.8.5-44.0.3.el7 will be installed --> Running transaction check ---> Package gcc.x86_64 0:4.8.3-9.el7 will be updated ---> Package gcc.x86_64 0:4.8.5-44.0.3.el7 will be an update --> Processing Dependency: libgomp = 4.8.5-44.0.3.el7 for package: gcc-4.8.5-44.0.3.el7.x86_64 --> Processing Dependency: cpp = 4.8.5-44.0.3.el7 for package: gcc-4.8.5-44.0.3.el7.x86_64 --> Processing Dependency: libgcc >= 4.8.5-44.0.3.el7 for package: gcc-4.8.5-44.0.3.el7.x86_64 ---> Package libaio.x86_64 0:0.3.109-12.el7 will be updated ---> Package libaio.x86_64 0:0.3.109-13.el7 will be an update ---> Package libstdc++.x86_64 0:4.8.3-9.el7 will be updated ---> Package libstdc++.x86_64 0:4.8.5-44.0.3.el7 will be an update --> Running transaction check ---> Package cpp.x86_64 0:4.8.3-9.el7 will be updated ---> Package cpp.x86_64 0:4.8.5-44.0.3.el7 will be an update ---> Package libgcc.x86_64 0:4.8.3-9.el7 will be updated ---> Package libgcc.x86_64 0:4.8.5-44.0.3.el7 will be an update ---> Package libgomp.x86_64 0:4.8.3-9.el7 will be updated ---> Package libgomp.x86_64 0:4.8.5-44.0.3.el7 will be an update --> Finished Dependency Resolution Dependencies Resolved ========================================================================================================================================================== Package Arch Version Repository Size ========================================================================================================================================================== Installing: oracle-rdbms-server-11gR2-preinstall x86_64 1.0-6.el7 ol7_latest 22 k Installing for dependencies: compat-libcap1 x86_64 1.10-7.el7 ol7_latest 17 k compat-libstdc++-33 x86_64 3.2.3-72.el7 ol7_latest 190 k gcc-c++ x86_64 4.8.5-44.0.3.el7 ol7_latest 7.2 M ksh x86_64 20120801-142.0.1.el7 ol7_latest 882 k libaio-devel x86_64 0.3.109-13.el7 ol7_latest 12 k libstdc++-devel x86_64 4.8.5-44.0.3.el7 ol7_latest 1.5 M Updating for dependencies: cpp x86_64 4.8.5-44.0.3.el7 ol7_latest 5.9 M gcc x86_64 4.8.5-44.0.3.el7 ol7_latest 16 M libaio x86_64 0.3.109-13.el7 ol7_latest 24 k libgcc x86_64 4.8.5-44.0.3.el7 ol7_latest 103 k libgomp x86_64 4.8.5-44.0.3.el7 ol7_latest 159 k libstdc++ x86_64 4.8.5-44.0.3.el7 ol7_latest 306 k Transaction Summary ========================================================================================================================================================== Install 1 Package (+6 Dependent packages) Upgrade ( 6 Dependent packages) Total download size: 32 M Is this ok [y/d/N]: y Downloading packages: No Presto metadata available for ol7_latest warning: /var/cache/yum/x86_64/7Server/ol7_latest/packages/compat-libcap1-1.10-7.el7.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID ec551f03: NOKEYTA Public key for compat-libcap1-1.10-7.el7.x86_64.rpm is not installed (1/13): compat-libcap1-1.10-7.el7.x86_64.rpm | 17 kB 00:00:00 (2/13): cpp-4.8.5-44.0.3.el7.x86_64.rpm | 5.9 MB 00:00:01 (3/13): compat-libstdc++-33-3.2.3-72.el7.x86_64.rpm | 190 kB 00:00:05 (4/13): gcc-4.8.5-44.0.3.el7.x86_64.rpm | 16 MB 00:00:04 (5/13): ksh-20120801-142.0.1.el7.x86_64.rpm | 882 kB 00:00:00 (6/13): libaio-0.3.109-13.el7.x86_64.rpm | 24 kB 00:00:00 (7/13): libaio-devel-0.3.109-13.el7.x86_64.rpm | 12 kB 00:00:00 (8/13): libgcc-4.8.5-44.0.3.el7.x86_64.rpm | 103 kB 00:00:00 (9/13): libgomp-4.8.5-44.0.3.el7.x86_64.rpm | 159 kB 00:00:00 (10/13): libstdc++-4.8.5-44.0.3.el7.x86_64.rpm | 306 kB 00:00:00 (11/13): libstdc++-devel-4.8.5-44.0.3.el7.x86_64.rpm | 1.5 MB 00:00:00 (12/13): oracle-rdbms-server-11gR2-preinstall-1.0-6.el7.x86_64.rpm | 22 kB 00:00:01 (13/13): gcc-c++-4.8.5-44.0.3.el7.x86_64.rpm | 7.2 MB 00:00:04 ---------------------------------------------------------------------------------------------------------------------------------------------------------- Total 3.3 MB/s | 32 MB 00:00:09 Retrieving key from file:///etc/pki/rpm-gpg/RPM-GPG-KEY-oracle Importing GPG key 0xEC551F03: Userid : "Oracle OSS group (Open Source Software group) <[email protected]>" Fingerprint: 4214 4123 fecf c55b 9086 313d 72f9 7b74 ec55 1f03 Package : 7:oraclelinux-release-7.1-1.0.5.el7.x86_64 (@anaconda/7.1) From : /etc/pki/rpm-gpg/RPM-GPG-KEY-oracle Is this ok [y/N]: y Running transaction check Running transaction test Transaction test succeeded Running transaction Updating : libgcc-4.8.5-44.0.3.el7.x86_64 1/19 Updating : libstdc++-4.8.5-44.0.3.el7.x86_64 2/19 Installing : libstdc++-devel-4.8.5-44.0.3.el7.x86_64 3/19 Updating : libaio-0.3.109-13.el7.x86_64 4/19 Installing : libaio-devel-0.3.109-13.el7.x86_64 5/19 Installing : compat-libstdc++-33-3.2.3-72.el7.x86_64 6/19 Updating : cpp-4.8.5-44.0.3.el7.x86_64 7/19 Installing : ksh-20120801-142.0.1.el7.x86_64 8/19 Installing : compat-libcap1-1.10-7.el7.x86_64 9/19 Updating : libgomp-4.8.5-44.0.3.el7.x86_64 10/19 Updating : gcc-4.8.5-44.0.3.el7.x86_64 11/19 Installing : gcc-c++-4.8.5-44.0.3.el7.x86_64 12/19 Installing : oracle-rdbms-server-11gR2-preinstall-1.0-6.el7.x86_64 13/19 Cleanup : gcc-4.8.3-9.el7.x86_64 14/19 Cleanup : libstdc++-4.8.3-9.el7.x86_64 15/19 Cleanup : libgcc-4.8.3-9.el7.x86_64 16/19 Cleanup : cpp-4.8.3-9.el7.x86_64 17/19 Cleanup : libgomp-4.8.3-9.el7.x86_64 18/19 Cleanup : libaio-0.3.109-12.el7.x86_64 19/19 Verifying : gcc-4.8.5-44.0.3.el7.x86_64 1/19 Verifying : libaio-0.3.109-13.el7.x86_64 2/19 Verifying : oracle-rdbms-server-11gR2-preinstall-1.0-6.el7.x86_64 3/19 Verifying : libgomp-4.8.5-44.0.3.el7.x86_64 4/19 Verifying : compat-libstdc++-33-3.2.3-72.el7.x86_64 5/19 Verifying : gcc-c++-4.8.5-44.0.3.el7.x86_64 6/19 Verifying : compat-libcap1-1.10-7.el7.x86_64 7/19 Verifying : libaio-devel-0.3.109-13.el7.x86_64 8/19 Verifying : libstdc++-devel-4.8.5-44.0.3.el7.x86_64 9/19 Verifying : libgcc-4.8.5-44.0.3.el7.x86_64 10/19 Verifying : libstdc++-4.8.5-44.0.3.el7.x86_64 11/19 Verifying : ksh-20120801-142.0.1.el7.x86_64 12/19 Verifying : cpp-4.8.5-44.0.3.el7.x86_64 13/19 Verifying : gcc-4.8.3-9.el7.x86_64 14/19 Verifying : cpp-4.8.3-9.el7.x86_64 15/19 Verifying : libgomp-4.8.3-9.el7.x86_64 16/19 Verifying : libstdc++-4.8.3-9.el7.x86_64 17/19 Verifying : libgcc-4.8.3-9.el7.x86_64 18/19 Verifying : libaio-0.3.109-12.el7.x86_64 19/19 Installed: oracle-rdbms-server-11gR2-preinstall.x86_64 0:1.0-6.el7 Dependency Installed: compat-libcap1.x86_64 0:1.10-7.el7 compat-libstdc++-33.x86_64 0:3.2.3-72.el7 gcc-c++.x86_64 0:4.8.5-44.0.3.el7 ksh.x86_64 0:20120801-142.0.1.el7 libaio-devel.x86_64 0:0.3.109-13.el7 libstdc++-devel.x86_64 0:4.8.5-44.0.3.el7 Dependency Updated: cpp.x86_64 0:4.8.5-44.0.3.el7 gcc.x86_64 0:4.8.5-44.0.3.el7 libaio.x86_64 0:0.3.109-13.el7 libgcc.x86_64 0:4.8.5-44.0.3.el7 libgomp.x86_64 0:4.8.5-44.0.3.el7 libstdc++.x86_64 0:4.8.5-44.0.3.el7 Complete!
3.2. Manual Setup:
Add the following lines to the “/etc/sysctl.conf” file, or in a file called “/etc/sysctl.d/98-oracle.conf”.
fs.file-max = 6815744 kernel.sem = 250 32000 100 128 kernel.shmmni = 4096 kernel.shmall = 1073741824 kernel.shmmax = 4398046511104 kernel.panic_on_oops = 1 net.core.rmem_default = 262144 net.core.rmem_max = 4194304 net.core.wmem_default = 262144 net.core.wmem_max = 1048576 net.ipv4.conf.all.rp_filter = 2 net.ipv4.conf.default.rp_filter = 2 fs.aio-max-nr = 1048576 net.ipv4.ip_local_port_range = 9000 65500
Validation –
/sbin/sysctl -p # Or /sbin/sysctl -p /etc/sysctl.d/98-oracle.conf
Add the following lines to a file called “/etc/security/limits.d/oracle-database-server-12cR2-preinstall.conf” file.
oracle soft nofile 1024 oracle hard nofile 65536 oracle soft nproc 16384 oracle hard nproc 16384 oracle soft stack 10240 oracle hard stack 32768 oracle hard memlock 134217728 oracle soft memlock 134217728
Install required packages:
# From Public Yum or ULN yum install binutils -y yum install compat-libstdc++-33 -y yum install compat-libstdc++-33.i686 -y yum install gcc -y yum install gcc-c++ -y yum install glibc -y yum install glibc.i686 -y yum install glibc-devel -y yum install glibc-devel.i686 -y yum install ksh -y yum install libgcc -y yum install libgcc.i686 -y yum install libstdc++ -y yum install libstdc++.i686 -y yum install libstdc++-devel -y yum install libstdc++-devel.i686 -y yum install libaio -y yum install libaio.i686 -y yum install libaio-devel -y yum install libaio-devel.i686 -y yum install libXext -y yum install libXext.i686 -y yum install libXtst -y yum install libXtst.i686 -y yum install libX11 -y yum install libX11.i686 -y yum install libXau -y yum install libXau.i686 -y yum install libxcb -y yum install libxcb.i686 -y yum install libXi -y yum install libXi.i686 -y yum install make -y yum install sysstat -y yum install unixODBC -y yum install unixODBC-devel -y yum install zlib-devel -y yum install zlib-devel.i686 -y
Create Groups and User:
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,oper oracle
You could define the additional groups and assign them to the “oracle” users. The would allow you to assign the individual groups during the installation. For this installation I’ve just used the “dba” group.
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,oper,backupdba,dgdba,kmdba,asmdba,asmoper,asmadmin,racdba oracle
4. Additional Setup:
4.1 Network Setup:
[root@rac12cnode1 ~]# ifconfig
enp0s3: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.56.210 netmask 255.255.255.0 broadcast 192.168.56.255
inet6 fe80::a00:27ff:fe9d:4d59 prefixlen 64 scopeid 0x20<link>
ether 08:00:27:9d:4d:59 txqueuelen 1000 (Ethernet)
RX packets 5846 bytes 366426 (357.8 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 432 bytes 107845 (105.3 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
enp0s8: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.10.210 netmask 255.255.255.0 broadcast 192.168.10.255
inet6 fe80::a00:27ff:fe38:a5fb prefixlen 64 scopeid 0x20<link>
ether 08:00:27:38:a5:fb txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 118 bytes 13805 (13.4 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
enp0s9: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.1.243 netmask 255.255.255.0 broadcast 192.168.1.255
inet6 2600:1700:8930:4760:a00:27ff:fea7:ae0b prefixlen 128 scopeid 0x0<global>
inet6 fe80::a00:27ff:fea7:ae0b prefixlen 64 scopeid 0x20<link>
inet6 2600:1700:8930:4760::1f prefixlen 128 scopeid 0x0<global>
ether 08:00:27:a7:ae:0b txqueuelen 1000 (Ethernet)
RX packets 43592 bytes 47190486 (45.0 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 15892 bytes 1233112 (1.1 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 0 (Local Loopback)
RX packets 271 bytes 23040 (22.5 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 271 bytes 23040 (22.5 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
4.2. Hosts File:
[root@rac12cnode1 ~]# cat /etc/hosts 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 #::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 #RAC # Public IP 192.168.56.210 rac12cnode1.localdomain rac12cnode1 192.168.56.211 rac12cnode2.localdomain rac12cnode2 #Private IP 192.168.10.210 rac12cnode1-priv.localdomain rac12cnode1-priv 192.168.10.211 rac12cnode2-priv.localdomain rac12cnode2-priv #VIP 192.168.56.212 rac12cnode1-vip.localdomain rac12cnode1-vip 192.168.56.213 rac12cnode2-vip.localdomain rac12cnode2-vip #SCAN IP 192.168.56.214 rac12cnode-scan.localdomain rac12cnode-scan 192.168.56.215 rac12cnode-scan.localdomain rac12cnode-scan 192.168.56.216 rac12cnode-scan.localdomain rac12cnode-scan
4.3. Set password for oracle:
[root@rac12cnode1 ~]# id oracle uid=54321(oracle) gid=54321(oinstall) groups=54321(oinstall),54322(dba) [root@rac12cnode1 ~]# passwd oracle Changing password for user oracle. New password: BAD PASSWORD: The password is shorter than 8 characters Retype new password: passwd: all authentication tokens updated successfully.
4.4. Set secure Linux to permissive:
[root@rac12cnode1 ~]# cat /etc/selinux/config | grep permissive SELINUX=permissive
4.5. Disable Firewall:
[root@rac12cnode1 ~]# systemctl stop firewalld [root@rac12cnode1 ~]# systemctl disable firewalld
4.6. To create home directory for GI and Oracle DB, enter the following commands:
mkdir -p /u01/app/12.2.0/grid chown -R oracle:oinstall /u01/app/12.2.0/grid chmod -R 775 /u01/app/12.2.0/grid mkdir -p /u01/app/oracle chown -R oracle:oinstall /u01/app/oracle mkdir -p /u01/app/oracle/cfgtoollogs chown -R oracle:oinstall /u01/app/oracle/cfgtoollogs chmod -R 775 /u01/app/oracle mkdir -p /u01/app/oraInventory chown -R oracle:oinstall /u01/app/oraInventory chmod -R 775 /u01/app/oraInventory mkdir -p /u01/app/oracle/product/12.2.0/dbhome_1 chown -R oracle:oinstall /u01/app/oracle/product/12.2.0/dbhome_1 chmod -R 775 /u01/app/oracle/product/12.2.0/dbhome_1
4.7. Install Oracle ASMLib:
[root@rac12cnode1 software]# rpm -Uvh oracleasmlib-2.0.12-1.el7.x86_64.rpm Preparing... ################################# [100%] Updating / installing... 1:oracleasmlib-2.0.12-1.el7 ################################# [100%] [root@rac12cnode1 software]# rpm -Uvh oracleasm-support-2.1.8-3.el7.x86_64.rpm Preparing... ################################# [100%] Updating / installing... 1:oracleasm-support-2.1.8-3.el7 ################################# [100%] Note: Forwarding request to 'systemctl enable oracleasm.service'. ln -s '/usr/lib/systemd/system/oracleasm.service' '/etc/systemd/system/multi-user.target.wants/oracleasm.service'
5.1. Create the disks and associate them to VM as virtual media:
VBoxManage createhd --filename "C:\VM\rac12cnode1\asmdisk01.vdi" --size 7168 --format VDI --variant Fixed VBoxManage createhd --filename "C:\VM\rac12cnode1\asmdisk02.vdi" --size 5120 --format VDI --variant Fixed VBoxManage createhd --filename "C:\VM\rac12cnode1\asmdisk03.vdi" --size 5120 --format VDI --variant Fixed VBoxManage createhd --filename "C:\VM\rac12cnode1\asmdisk04.vdi" --size 5120 --format VDI --variant Fixed
5.2. Convert Disk to Shareable:
VBoxManage modifyhd "C:\VM\rac12cnode1\asmdisk01.vdi" --type shareable VBoxManage modifyhd "C:\VM\rac12cnode1\asmdisk02.vdi" --type shareable VBoxManage modifyhd "C:\VM\rac12cnode1\asmdisk03.vdi" --type shareable VBoxManage modifyhd "C:\VM\rac12cnode1\asmdisk04.vdi" --type shareable
5.3. Connect Disk to VM:
VBoxManage storageattach rac12cnode1 --storagectl "SATA" --port 1 --device 0 --type hdd --medium "C:\VM\racnode1\asmdisk01.vdi" --mtype shareable VBoxManage storageattach rac12cnode1 --storagectl "SATA" --port 2 --device 0 --type hdd --medium "C:\VM\racnode1\asmdisk02.vdi" --mtype shareable VBoxManage storageattach rac12cnode1 --storagectl "SATA" --port 3 --device 0 --type hdd --medium "C:\VM\racnode1\asmdisk03.vdi" --mtype shareable VBoxManage storageattach rac12cnode1 --storagectl "SATA" --port 4 --device 0 --type hdd --medium "C:\VM\racnode1\asmdisk04.vdi" --mtype shareable
5.4. Format disk for Creating ASM:
[root@rac12cnode1 dev]# ls sd* sda sda1 sda2 sdb sdc sdd sde [root@rac12cnode1 dev]# fdisk /dev/sdb Welcome to fdisk (util-linux 2.23.2). Changes will remain in memory only, until you decide to write them. Be careful before using the write command. Device does not contain a recognized partition table Building a new DOS disklabel with disk identifier 0xeb05d744. Command (m for help): n Partition type: p primary (0 primary, 0 extended, 4 free) e extended Select (default p): p Partition number (1-4, default 1): First sector (2048-14680063, default 2048): Using default value 2048 Last sector, +sectors or +size{K,M,G} (2048-14680063, default 14680063): Using default value 14680063 Partition 1 of type Linux and of size 7 GiB is set Command (m for help): w The partition table has been altered! Calling ioctl() to re-read partition table. Syncing disks.
[root@rac12cnode1 dev]# ls sd* sda sda1 sda2 sdb sdb1 sdc sdc1 sdd sdd1 sde sde1
5.5. Configure ASM Library Drive:
[root@rac12cnode1 dev]# id oracle uid=54321(oracle) gid=54321(oinstall) groups=54321(oinstall),54322(dba) [root@racnode1 dev]# oracleasm configure -i Configuring the Oracle ASM library driver. This will configure the on-boot properties of the Oracle ASM library driver. The following questions will determine whether the driver is loaded on boot and what permissions it will have. The current values will be shown in brackets ('[]'). Hitting <ENTER> without typing an answer will keep that current value. Ctrl-C will abort. Default user to own the driver interface []: oracle Default group to own the driver interface []: dba Scan for Oracle ASM disks on boot (y/n) [y]: y Writing Oracle ASM library driver configuration: done
5.6. Create ASM Disks
[root@rac12cnode1 dev]# /usr/sbin/oracleasm init [root@rac12cnode1 dev]# /usr/sbin/oracleasm createdisk DISK_OCR /dev/sdb1 Writing disk header: done Instantiating disk: done [root@rac12cnode1 dev]# /usr/sbin/oracleasm createdisk DISK_DATA01 /dev/sdc1 Writing disk header: done Instantiating disk: done [root@rac12cnode1 dev]# /usr/sbin/oracleasm createdisk DISK_DATA02 /dev/sdd1 Writing disk header: done Instantiating disk: done [root@rac12cnode1 dev]# /usr/sbin/oracleasm createdisk DISK_DATA03 /dev/sde1 Writing disk header: done Instantiating disk: done
5.7. Validate ASM Disks:
[root@rac12cnode1 dev]# /usr/sbin/oracleasm scandisks Reloading disk partitions: done Cleaning any stale ASM disks... Scanning system for ASM disks... [root@rac12cnode1 dev]# /usr/sbin/oracleasm listdisks DISK_DATA01 DISK_DATA02 DISK_DATA03 DISK_OCR
6. Clone the Virtual Machine for Node2:
6.1. You can clone VM using command prompt or GUI.
C:\Users\samad>cd "c:\Program Files\Oracle\VirtualBox" VBoxManage clonehd "C:\VM\rac12cnode1\rac12cnode1.vdi" "C:\VM\rac12cnode2\rac12cnode2.vdi"
6.2. Add all shareable disks to Node 2.
VBoxManage storageattach rac12cnode2 --storagectl "SATA" --port 1 --device 0 --type hdd --medium "C:\VM\rac12cnode1\asmdisk01.vdi" --mtype shareable VBoxManage storageattach rac12cnode2 --storagectl "SATA" --port 2 --device 0 --type hdd --medium "C:\VM\rac12cnode1\asmdisk02.vdi" --mtype shareable VBoxManage storageattach rac12cnode2 --storagectl "SATA" --port 3 --device 0 --type hdd --medium "C:\VM\rac12cnode1\asmdisk03.vdi" --mtype shareable VBoxManage storageattach rac12cnode2 --storagectl "SATA" --port 4 --device 0 --type hdd --medium "C:\VM\rac12cnode1\asmdisk04.vdi" --mtype shareable
6.3. Change hostname and IP on Node2:
[root@racnode2 ~]# cat /etc/hostname
rac12cnode2.localdomain
[root@rac12cnode2 ~]# ifconfig
enp0s3: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.56.211 netmask 255.255.255.0 broadcast 192.168.56.255
inet6 fe80::a00:27ff:fe28:a10a prefixlen 64 scopeid 0x20<link>
ether 08:00:27:28:a1:0a txqueuelen 1000 (Ethernet)
RX packets 146 bytes 13342 (13.0 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 90 bytes 14607 (14.2 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
enp0s8: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.10.211 netmask 255.255.255.0 broadcast 192.168.10.255
inet6 fe80::a00:27ff:fede:982a prefixlen 64 scopeid 0x20<link>
ether 08:00:27:de:98:2a txqueuelen 1000 (Ethernet)
RX packets 14 bytes 2971 (2.9 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 55 bytes 8257 (8.0 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
enp0s9: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.1.244 netmask 255.255.255.0 broadcast 192.168.1.255
inet6 fe80::a00:27ff:fed0:8d47 prefixlen 64 scopeid 0x20<link>
inet6 2600:1700:8930:4760:a00:27ff:fed0:8d47 prefixlen 128 scopeid 0x0<global>
ether 08:00:27:d0:8d:47 txqueuelen 1000 (Ethernet)
RX packets 363 bytes 28591 (27.9 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 84 bytes 10320 (10.0 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 0 (Local Loopback)
RX packets 134 bytes 11384 (11.1 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 134 bytes 11384 (11.1 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
6.3. Verify ASM Disks on Node2:
[root@rac12cnode2 ~]# oracleasm configure -i Configuring the Oracle ASM library driver. This will configure the on-boot properties of the Oracle ASM library driver. The following questions will determine whether the driver is loaded on boot and what permissions it will have. The current values will be shown in brackets ('[]'). Hitting <ENTER> without typing an answer will keep that current value. Ctrl-C will abort. Default user to own the driver interface []: oracle Default group to own the driver interface []: dba Scan for Oracle ASM disks on boot (y/n) [y]: Writing Oracle ASM library driver configuration: done
6.5. ASM Disks Validation:
[root@rac12cnode2 ~]# oracleasm scandisks Reloading disk partitions: done Cleaning any stale ASM disks... Scanning system for ASM disks... Instantiating disk "DISK_OCR" Instantiating disk "DISK_DATA02" Instantiating disk "DISK_DATA03" Instantiating disk "DISK_DATA01" [root@rac12cnode2 ~]# oracleasm listdisks DISK_DATA01 DISK_DATA02 DISK_DATA03 DISK_OCR
7. Install GI (Grid Infrastructure):
7.1 Trigger runInstaller from GUI.
[oracle@rac12cnode1 software]$ pwd /u01/software [oracle@rac12cnode1 software]$ ls -lrt total 2924500 -rw-r--r--. 1 oracle oinstall 2994687209 Jul 19 2018 linuxx64_12201_grid_home.zip [oracle@rac12cnode1 grid]$ pwd /u01/app/12.2.0/grid [oracle@rac12cnode1 grid]$ unzip /u01/software/li lib/ linuxx64_12201_grid_home.zip [oracle@rac12cnode1 grid]$ unzip /u01/software/linuxx64_12201_grid_home.zip [oracle@rac12cnode1 grid]$ pwd /u01/app/12.2.0/grid [oracle@rac12cnode1 grid]$ ls -lrt gridSetup.sh -rwxr-x---. 1 oracle oinstall 5395 Jul 21 2016 gridSetup.sh [oracle@rac12cnode1 grid]$ ./gridSetup.sh
7.2. Installation Software show all option one by one.
Choose “Skip software updates” and Click Next…
Choose “Configure Oracle Grid Infrastructure for a New Cluster” and Click Next…
Choose “Configure an Oracle Standalone Cluster” and Click Next…
Provide Cluster Name and Scan Name with port. Click Next..
Click on Add.. Button to add other nodes.
Provide Node’s Hostname and Role with Virtual Hostname. Click on OK..
Click on SSH Connectivity.. to setup or test password less connection between nodes.
Provide password for user and Click Setup (if not setup earlier)
Successfully setup passwordless SSH connectivity between selected nodes. Click OK.
Click on Test if setup SSH earlier.
Select Interface for Public and ASM & Private. Click Next..
Choose “Configure ASM using block devices” and Click Next…
Click Yes, if you want to Create seperate ASM DiskGroup for OCR/Voting Disk and GIMR. otherwise Choose No.
Provide DiskGroup Name and Disk. Click Next..
Provide password for ASM and ASMSNMP.
Select Do not use IPMI.
You can configure OEM agent later.
Provide OS Group.
Click Yes to confirm.
Click Next..
Click Yes to confirm.
Uncheck the CheckBox. Click Next..
Prerequisite Check. Click on “Fix & Check Again”
Execute generated script from root user to all recommended nodes.
Script Execution:
[root@rac12cnode1 disks]# /tmp/GridSetupActions2020-10-16_04-23-47PM/CVU_12.2.0.1.0_oracle/runfixup.sh All Fix-up operations were completed successfully. [root@rac12cnode2 ~]# /tmp/GridSetupActions2020-10-16_04-23-47PM/CVU_12.2.0.1.0_oracle/runfixup.sh All Fix-up operations were completed successfully.
You may Ignore if you think these are ok. But recommended to meet all prerequisite checks on Production database.
Click “Ignore All” check box to continue.
Click Yes to confirm.
Summary of all selection. If you are ok then Click on Install otherwise click on Back to change.
Installation is progressing.
Execute all Scripts on recommended nodes from root user.
Execute orainstRoot.sh script on both nodes:
[root@rac12cnode1 disks]# /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@rac12cnode2 ~]# /tmp/GridSetupActions2020-10-16_04-23-47PM/CVU_12.2.0.1.0_oracle/runfixup.sh All Fix-up operations were completed successfully. [root@rac12cnode2 ~]# /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/oraInventor
Execute root.sh script on all nodes from root user:
[root@rac12cnode1 grid]# /u01/app/12.2.0/grid/root.sh Performing root user operation. The following environment variables are set as: ORACLE_OWNER= oracle ORACLE_HOME= /u01/app/12.2.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/12.2.0/grid/crs/install/crsconfig_params The log of current session can be found at: /u01/app/oracle/crsdata/rac12cnode1/crsconfig/rootcrs_rac12cnode1_2020-10-16_04-59-41PM.log 2020/10/16 16:59:45 CLSRSC-594: Executing installation step 1 of 19: 'SetupTFA'. 2020/10/16 16:59:45 CLSRSC-4001: Installing Oracle Trace File Analyzer (TFA) Collector. 2020/10/16 17:00:15 CLSRSC-4002: Successfully installed Oracle Trace File Analyzer (TFA) Collector. 2020/10/16 17:00:15 CLSRSC-594: Executing installation step 2 of 19: 'ValidateEnv'. 2020/10/16 17:00:19 CLSRSC-363: User ignored prerequisites during installation 2020/10/16 17:00:19 CLSRSC-594: Executing installation step 3 of 19: 'CheckFirstNode'. 2020/10/16 17:00:21 CLSRSC-594: Executing installation step 4 of 19: 'GenSiteGUIDs'. 2020/10/16 17:00:22 CLSRSC-594: Executing installation step 5 of 19: 'SaveParamFile'. 2020/10/16 17:00:28 CLSRSC-594: Executing installation step 6 of 19: 'SetupOSD'. 2020/10/16 17:00:28 CLSRSC-594: Executing installation step 7 of 19: 'CheckCRSConfig'. 2020/10/16 17:00:28 CLSRSC-594: Executing installation step 8 of 19: 'SetupLocalGPNP'. 2020/10/16 17:01:00 CLSRSC-594: Executing installation step 9 of 19: 'ConfigOLR'. 2020/10/16 17:01:08 CLSRSC-594: Executing installation step 10 of 19: 'ConfigCHMOS'. 2020/10/16 17:01:08 CLSRSC-594: Executing installation step 11 of 19: 'CreateOHASD'. 2020/10/16 17:01:13 CLSRSC-594: Executing installation step 12 of 19: 'ConfigOHASD'. 2020/10/16 17:01:29 CLSRSC-330: Adding Clusterware entries to file 'oracle-ohasd.service' 2020/10/16 17:01:50 CLSRSC-594: Executing installation step 13 of 19: 'InstallAFD'. 2020/10/16 17:01:55 CLSRSC-594: Executing installation step 14 of 19: 'InstallACFS'. CRS-2791: Starting shutdown of Oracle High Availability Services-managed resources on 'rac12cnode1' CRS-2793: Shutdown of Oracle High Availability Services-managed resources on 'rac12cnode1' has completed CRS-4133: Oracle High Availability Services has been stopped. CRS-4123: Oracle High Availability Services has been started. 2020/10/16 17:02:32 CLSRSC-594: Executing installation step 15 of 19: 'InstallKA'. 2020/10/16 17:02:37 CLSRSC-594: Executing installation step 16 of 19: 'InitConfig'. CRS-2791: Starting shutdown of Oracle High Availability Services-managed resources on 'rac12cnode1' CRS-2793: Shutdown of Oracle High Availability Services-managed resources on 'rac12cnode1' has completed CRS-4133: Oracle High Availability Services has been stopped. CRS-4123: Oracle High Availability Services has been started. CRS-2672: Attempting to start 'ora.evmd' on 'rac12cnode1' CRS-2672: Attempting to start 'ora.mdnsd' on 'rac12cnode1' CRS-2676: Start of 'ora.mdnsd' on 'rac12cnode1' succeeded CRS-2676: Start of 'ora.evmd' on 'rac12cnode1' succeeded CRS-2672: Attempting to start 'ora.gpnpd' on 'rac12cnode1' CRS-2676: Start of 'ora.gpnpd' on 'rac12cnode1' succeeded CRS-2672: Attempting to start 'ora.cssdmonitor' on 'rac12cnode1' CRS-2672: Attempting to start 'ora.gipcd' on 'rac12cnode1' CRS-2676: Start of 'ora.cssdmonitor' on 'rac12cnode1' succeeded CRS-2676: Start of 'ora.gipcd' on 'rac12cnode1' succeeded CRS-2672: Attempting to start 'ora.cssd' on 'rac12cnode1' CRS-2672: Attempting to start 'ora.diskmon' on 'rac12cnode1' CRS-2676: Start of 'ora.diskmon' on 'rac12cnode1' succeeded CRS-2676: Start of 'ora.cssd' on 'rac12cnode1' succeeded Disk groups created successfully. Check /u01/app/oracle/cfgtoollogs/asmca/asmca-201016PM050314.log for details. 2020/10/16 17:03:58 CLSRSC-482: Running command: '/u01/app/12.2.0/grid/bin/ocrconfig -upgrade oracle oinstall' CRS-2672: Attempting to start 'ora.crf' on 'rac12cnode1' CRS-2672: Attempting to start 'ora.storage' on 'rac12cnode1' CRS-2676: Start of 'ora.storage' on 'rac12cnode1' succeeded CRS-2676: Start of 'ora.crf' on 'rac12cnode1' succeeded CRS-2672: Attempting to start 'ora.crsd' on 'rac12cnode1' CRS-2676: Start of 'ora.crsd' on 'rac12cnode1' succeeded CRS-4256: Updating the profile Successful addition of voting disk a35c504b83ec4f86bff42baa1e71892c. 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 a35c504b83ec4f86bff42baa1e71892c (/dev/oracleasm/disks/DISK_OCR01) [OCR] Located 1 voting disk(s). CRS-2791: Starting shutdown of Oracle High Availability Services-managed resources on 'rac12cnode1' CRS-2673: Attempting to stop 'ora.crsd' on 'rac12cnode1' CRS-2677: Stop of 'ora.crsd' on 'rac12cnode1' succeeded CRS-2673: Attempting to stop 'ora.storage' on 'rac12cnode1' CRS-2673: Attempting to stop 'ora.crf' on 'rac12cnode1' CRS-2673: Attempting to stop 'ora.drivers.acfs' on 'rac12cnode1' CRS-2673: Attempting to stop 'ora.gpnpd' on 'rac12cnode1' CRS-2673: Attempting to stop 'ora.mdnsd' on 'rac12cnode1' CRS-2677: Stop of 'ora.drivers.acfs' on 'rac12cnode1' succeeded CRS-2677: Stop of 'ora.storage' on 'rac12cnode1' succeeded CRS-2673: Attempting to stop 'ora.asm' on 'rac12cnode1' CRS-2677: Stop of 'ora.gpnpd' on 'rac12cnode1' succeeded CRS-2677: Stop of 'ora.crf' on 'rac12cnode1' succeeded CRS-2677: Stop of 'ora.mdnsd' on 'rac12cnode1' succeeded CRS-2677: Stop of 'ora.asm' on 'rac12cnode1' succeeded CRS-2673: Attempting to stop 'ora.cluster_interconnect.haip' on 'rac12cnode1' CRS-2677: Stop of 'ora.cluster_interconnect.haip' on 'rac12cnode1' succeeded CRS-2673: Attempting to stop 'ora.ctssd' on 'rac12cnode1' CRS-2673: Attempting to stop 'ora.evmd' on 'rac12cnode1' CRS-2677: Stop of 'ora.evmd' on 'rac12cnode1' succeeded CRS-2677: Stop of 'ora.ctssd' on 'rac12cnode1' succeeded CRS-2673: Attempting to stop 'ora.cssd' on 'rac12cnode1' CRS-2677: Stop of 'ora.cssd' on 'rac12cnode1' succeeded CRS-2673: Attempting to stop 'ora.gipcd' on 'rac12cnode1' CRS-2677: Stop of 'ora.gipcd' on 'rac12cnode1' succeeded CRS-2793: Shutdown of Oracle High Availability Services-managed resources on 'rac12cnode1' has completed CRS-4133: Oracle High Availability Services has been stopped. 2020/10/16 17:05:05 CLSRSC-594: Executing installation step 17 of 19: 'StartCluster'. CRS-4123: Starting Oracle High Availability Services-managed resources CRS-2672: Attempting to start 'ora.mdnsd' on 'rac12cnode1' CRS-2672: Attempting to start 'ora.evmd' on 'rac12cnode1' CRS-2676: Start of 'ora.mdnsd' on 'rac12cnode1' succeeded CRS-2676: Start of 'ora.evmd' on 'rac12cnode1' succeeded CRS-2672: Attempting to start 'ora.gpnpd' on 'rac12cnode1' CRS-2676: Start of 'ora.gpnpd' on 'rac12cnode1' succeeded CRS-2672: Attempting to start 'ora.gipcd' on 'rac12cnode1' CRS-2676: Start of 'ora.gipcd' on 'rac12cnode1' succeeded CRS-2672: Attempting to start 'ora.cssdmonitor' on 'rac12cnode1' CRS-2676: Start of 'ora.cssdmonitor' on 'rac12cnode1' succeeded CRS-2672: Attempting to start 'ora.cssd' on 'rac12cnode1' CRS-2672: Attempting to start 'ora.diskmon' on 'rac12cnode1' CRS-2676: Start of 'ora.diskmon' on 'rac12cnode1' succeeded CRS-2676: Start of 'ora.cssd' on 'rac12cnode1' succeeded CRS-2672: Attempting to start 'ora.cluster_interconnect.haip' on 'rac12cnode1' CRS-2672: Attempting to start 'ora.ctssd' on 'rac12cnode1' CRS-2676: Start of 'ora.ctssd' on 'rac12cnode1' succeeded CRS-2676: Start of 'ora.cluster_interconnect.haip' on 'rac12cnode1' succeeded CRS-2672: Attempting to start 'ora.asm' on 'rac12cnode1' CRS-2676: Start of 'ora.asm' on 'rac12cnode1' succeeded CRS-2672: Attempting to start 'ora.storage' on 'rac12cnode1' CRS-2676: Start of 'ora.storage' on 'rac12cnode1' succeeded CRS-2672: Attempting to start 'ora.crf' on 'rac12cnode1' CRS-2676: Start of 'ora.crf' on 'rac12cnode1' succeeded CRS-2672: Attempting to start 'ora.crsd' on 'rac12cnode1' CRS-2676: Start of 'ora.crsd' on 'rac12cnode1' succeeded CRS-6023: Starting Oracle Cluster Ready Services-managed resources CRS-6017: Processing resource auto-start for servers: rac12cnode1 CRS-6016: Resource auto-start has completed for server rac12cnode1 CRS-6024: Completed start of Oracle Cluster Ready Services-managed resources CRS-4123: Oracle High Availability Services has been started. 2020/10/16 17:06:51 CLSRSC-343: Successfully started Oracle Clusterware stack 2020/10/16 17:06:51 CLSRSC-594: Executing installation step 18 of 19: 'ConfigNode'. CRS-2672: Attempting to start 'ora.ASMNET1LSNR_ASM.lsnr' on 'rac12cnode1' CRS-2676: Start of 'ora.ASMNET1LSNR_ASM.lsnr' on 'rac12cnode1' succeeded CRS-2672: Attempting to start 'ora.asm' on 'rac12cnode1' CRS-2676: Start of 'ora.asm' on 'rac12cnode1' succeeded CRS-2672: Attempting to start 'ora.OCR.dg' on 'rac12cnode1' CRS-2676: Start of 'ora.OCR.dg' on 'rac12cnode1' succeeded 2020/10/16 17:09:47 CLSRSC-594: Executing installation step 19 of 19: 'PostConfig'. 2020/10/16 17:12:18 CLSRSC-325: Configure Oracle Grid Infrastructure for a Cluster ... succeeded # on Node2: [root@rac12cnode2 ~]# /u01/app/12.2.0/grid/root.sh Performing root user operation. The following environment variables are set as: ORACLE_OWNER= oracle ORACLE_HOME= /u01/app/12.2.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/12.2.0/grid/crs/install/crsconfig_params The log of current session can be found at: /u01/app/oracle/crsdata/rac12cnode2/crsconfig/rootcrs_rac12cnode2_2020-10-16_05-13-16PM.log 2020/10/16 17:13:21 CLSRSC-594: Executing installation step 1 of 19: 'SetupTFA'. 2020/10/16 17:13:21 CLSRSC-4001: Installing Oracle Trace File Analyzer (TFA) Collector. 2020/10/16 17:13:49 CLSRSC-4002: Successfully installed Oracle Trace File Analyzer (TFA) Collector. 2020/10/16 17:13:49 CLSRSC-594: Executing installation step 2 of 19: 'ValidateEnv'. 2020/10/16 17:13:50 CLSRSC-363: User ignored prerequisites during installation 2020/10/16 17:13:50 CLSRSC-594: Executing installation step 3 of 19: 'CheckFirstNode'. 2020/10/16 17:13:51 CLSRSC-594: Executing installation step 4 of 19: 'GenSiteGUIDs'. 2020/10/16 17:13:51 CLSRSC-594: Executing installation step 5 of 19: 'SaveParamFile'. 2020/10/16 17:13:53 CLSRSC-594: Executing installation step 6 of 19: 'SetupOSD'. 2020/10/16 17:13:53 CLSRSC-594: Executing installation step 7 of 19: 'CheckCRSConfig'. 2020/10/16 17:13:54 CLSRSC-594: Executing installation step 8 of 19: 'SetupLocalGPNP'. 2020/10/16 17:13:56 CLSRSC-594: Executing installation step 9 of 19: 'ConfigOLR'. 2020/10/16 17:13:58 CLSRSC-594: Executing installation step 10 of 19: 'ConfigCHMOS'. 2020/10/16 17:13:58 CLSRSC-594: Executing installation step 11 of 19: 'CreateOHASD'. 2020/10/16 17:13:59 CLSRSC-594: Executing installation step 12 of 19: 'ConfigOHASD'. 2020/10/16 17:14:15 CLSRSC-330: Adding Clusterware entries to file 'oracle-ohasd.service' 2020/10/16 17:14:32 CLSRSC-594: Executing installation step 13 of 19: 'InstallAFD'. 2020/10/16 17:14:33 CLSRSC-594: Executing installation step 14 of 19: 'InstallACFS'. CRS-2791: Starting shutdown of Oracle High Availability Services-managed resources on 'rac12cnode2' CRS-2793: Shutdown of Oracle High Availability Services-managed resources on 'rac12cnode2' has completed CRS-4133: Oracle High Availability Services has been stopped. CRS-4123: Oracle High Availability Services has been started. 2020/10/16 17:14:56 CLSRSC-594: Executing installation step 15 of 19: 'InstallKA'. 2020/10/16 17:14:57 CLSRSC-594: Executing installation step 16 of 19: 'InitConfig'. CRS-2791: Starting shutdown of Oracle High Availability Services-managed resources on 'rac12cnode2' CRS-2793: Shutdown of Oracle High Availability Services-managed resources on 'rac12cnode2' has completed CRS-4133: Oracle High Availability Services has been stopped. CRS-4123: Oracle High Availability Services has been started. CRS-2791: Starting shutdown of Oracle High Availability Services-managed resources on 'rac12cnode2' CRS-2673: Attempting to stop 'ora.drivers.acfs' on 'rac12cnode2' CRS-2677: Stop of 'ora.drivers.acfs' on 'rac12cnode2' succeeded CRS-2793: Shutdown of Oracle High Availability Services-managed resources on 'rac12cnode2' has completed CRS-4133: Oracle High Availability Services has been stopped. 2020/10/16 17:15:16 CLSRSC-594: Executing installation step 17 of 19: 'StartCluster'. CRS-4123: Starting Oracle High Availability Services-managed resources CRS-2672: Attempting to start 'ora.mdnsd' on 'rac12cnode2' CRS-2672: Attempting to start 'ora.evmd' on 'rac12cnode2' CRS-2676: Start of 'ora.mdnsd' on 'rac12cnode2' succeeded CRS-2676: Start of 'ora.evmd' on 'rac12cnode2' succeeded CRS-2672: Attempting to start 'ora.gpnpd' on 'rac12cnode2' CRS-2676: Start of 'ora.gpnpd' on 'rac12cnode2' succeeded CRS-2672: Attempting to start 'ora.gipcd' on 'rac12cnode2' CRS-2676: Start of 'ora.gipcd' on 'rac12cnode2' succeeded CRS-2672: Attempting to start 'ora.cssdmonitor' on 'rac12cnode2' CRS-2676: Start of 'ora.cssdmonitor' on 'rac12cnode2' succeeded CRS-2672: Attempting to start 'ora.cssd' on 'rac12cnode2' CRS-2672: Attempting to start 'ora.diskmon' on 'rac12cnode2' CRS-2676: Start of 'ora.diskmon' on 'rac12cnode2' succeeded CRS-2676: Start of 'ora.cssd' on 'rac12cnode2' succeeded CRS-2672: Attempting to start 'ora.cluster_interconnect.haip' on 'rac12cnode2' CRS-2672: Attempting to start 'ora.ctssd' on 'rac12cnode2' CRS-2676: Start of 'ora.ctssd' on 'rac12cnode2' succeeded CRS-2676: Start of 'ora.cluster_interconnect.haip' on 'rac12cnode2' succeeded CRS-2672: Attempting to start 'ora.asm' on 'rac12cnode2' CRS-2676: Start of 'ora.asm' on 'rac12cnode2' succeeded CRS-2672: Attempting to start 'ora.storage' on 'rac12cnode2' CRS-2676: Start of 'ora.storage' on 'rac12cnode2' succeeded CRS-2672: Attempting to start 'ora.crf' on 'rac12cnode2' CRS-2676: Start of 'ora.crf' on 'rac12cnode2' succeeded CRS-2672: Attempting to start 'ora.crsd' on 'rac12cnode2' CRS-2676: Start of 'ora.crsd' on 'rac12cnode2' succeeded CRS-6017: Processing resource auto-start for servers: rac12cnode2 CRS-2673: Attempting to stop 'ora.LISTENER_SCAN1.lsnr' on 'rac12cnode1' CRS-2672: Attempting to start 'ora.net1.network' on 'rac12cnode2' CRS-2672: Attempting to start 'ora.ASMNET1LSNR_ASM.lsnr' on 'rac12cnode2' CRS-2677: Stop of 'ora.LISTENER_SCAN1.lsnr' on 'rac12cnode1' succeeded CRS-2676: Start of 'ora.net1.network' on 'rac12cnode2' succeeded CRS-2673: Attempting to stop 'ora.scan1.vip' on 'rac12cnode1' CRS-2672: Attempting to start 'ora.ons' on 'rac12cnode2' CRS-2677: Stop of 'ora.scan1.vip' on 'rac12cnode1' succeeded CRS-2672: Attempting to start 'ora.scan1.vip' on 'rac12cnode2' CRS-2676: Start of 'ora.scan1.vip' on 'rac12cnode2' succeeded CRS-2672: Attempting to start 'ora.LISTENER_SCAN1.lsnr' on 'rac12cnode2' CRS-2676: Start of 'ora.ASMNET1LSNR_ASM.lsnr' on 'rac12cnode2' succeeded CRS-2672: Attempting to start 'ora.asm' on 'rac12cnode2' CRS-2676: Start of 'ora.ons' on 'rac12cnode2' succeeded CRS-2676: Start of 'ora.LISTENER_SCAN1.lsnr' on 'rac12cnode2' succeeded CRS-2676: Start of 'ora.asm' on 'rac12cnode2' succeeded CRS-6016: Resource auto-start has completed for server rac12cnode2 CRS-6024: Completed start of Oracle Cluster Ready Services-managed resources CRS-4123: Oracle High Availability Services has been started. 2020/10/16 17:17:00 CLSRSC-343: Successfully started Oracle Clusterware stack 2020/10/16 17:17:00 CLSRSC-594: Executing installation step 18 of 19: 'ConfigNode'. 2020/10/16 17:17:14 CLSRSC-594: Executing installation step 19 of 19: 'PostConfig'. 2020/10/16 17:17:27 CLSRSC-325: Configure Oracle Grid Infrastructure for a Cluster ... succeeded
Click on OK once executed successfully on all nodes.
Installation is progressing…
You may ignore the failed for Oracle Cluster Verification Utility. Click on Close.
7.3. Clusterware Status:
[root@rac12cnode1 grid]# crsctl stat res -t -------------------------------------------------------------------------------- Name Target State Server State details -------------------------------------------------------------------------------- Local Resources -------------------------------------------------------------------------------- ora.ASMNET1LSNR_ASM.lsnr ONLINE ONLINE rac12cnode1 STABLE ONLINE ONLINE rac12cnode2 STABLE ora.LISTENER.lsnr ONLINE ONLINE rac12cnode1 STABLE ONLINE ONLINE rac12cnode2 STABLE ora.OCR.dg ONLINE ONLINE rac12cnode1 STABLE ONLINE ONLINE rac12cnode2 STABLE ora.chad ONLINE ONLINE rac12cnode1 STABLE ONLINE ONLINE rac12cnode2 STABLE ora.net1.network ONLINE ONLINE rac12cnode1 STABLE ONLINE ONLINE rac12cnode2 STABLE ora.ons ONLINE ONLINE rac12cnode1 STABLE ONLINE ONLINE rac12cnode2 STABLE ora.proxy_advm OFFLINE OFFLINE rac12cnode1 STABLE OFFLINE OFFLINE rac12cnode2 STABLE -------------------------------------------------------------------------------- Cluster Resources -------------------------------------------------------------------------------- ora.LISTENER_SCAN1.lsnr 1 ONLINE ONLINE rac12cnode2 STABLE ora.LISTENER_SCAN2.lsnr 1 ONLINE ONLINE rac12cnode1 STABLE ora.LISTENER_SCAN3.lsnr 1 ONLINE ONLINE rac12cnode1 STABLE ora.MGMTLSNR 1 ONLINE ONLINE rac12cnode1 169.254.193.228 192. 168.10.210,STABLE ora.asm 1 ONLINE ONLINE rac12cnode1 Started,STABLE 2 ONLINE ONLINE rac12cnode2 Started,STABLE 3 OFFLINE OFFLINE STABLE ora.cvu 1 ONLINE ONLINE rac12cnode1 STABLE ora.mgmtdb 1 ONLINE ONLINE rac12cnode1 Open,STABLE ora.qosmserver 1 ONLINE ONLINE rac12cnode1 STABLE ora.rac12cnode1.vip 1 ONLINE ONLINE rac12cnode1 STABLE ora.rac12cnode2.vip 1 ONLINE ONLINE rac12cnode2 STABLE ora.scan1.vip 1 ONLINE ONLINE rac12cnode2 STABLE ora.scan2.vip 1 ONLINE ONLINE rac12cnode1 STABLE ora.scan3.vip 1 ONLINE ONLINE rac12cnode1 STABLE --------------------------------------------------------------------------------
8. Configure ASM: Create ASM DiskGroup
9. Install Oracle Database Binary and Create Database on RAC:
Below links will show how to install Oracle Software on GI/RAC. This link is for another setup and processes are same. So you may see different host name on this example.
Oracle Database Software Installation on RAC: Installation Processes
Create Database using DBCA on RAC: Create Database
Or,
Follow following steps to install and create oracle database on RAC.
Unzip Oracle Software:
[oracle@rac12cnode1 ~]$ cd /u01/software/ [oracle@rac12cnode1 software]$ ls [oracle@rac12cnode1 software]$ ls -lrt total 3372752 -rw-r--r--. 1 oracle oinstall 3453696911 Jul 20 2018 linuxx64_12201_database.zip [oracle@rac12cnode1 software]$ unzip linuxx64_12201_database.zip [oracle@rac12cnode1 database]$ pwd /u01/software/database [oracle@rac12cnode1 database]$ ./runInstaller Starting Oracle Universal Installer... Checking Temp space: must be greater than 500 MB. Actual 19658 MB Passed Checking swap space: must be greater than 150 MB. Actual 996 MB Passed Checking monitor: must be configured to display at least 256 colors Passed
Trigger runInstaller from GUI.
Uncheck for not receiving update on Oracle Support. Click Next…
Choose “Create and Configure a Database” and Click Next…
Choose “Server class” option.
Choose “Oracle Real Application Clusters database installation” Option.
Choose option based on your requirement.
Select nodes from list and Click on SSH Connectivity for testing or setting up the SSH connection.
Select Install Type option.
Choose Database Edition – Enterprise or Standard Edition based on your license.
Provide Oracle Base and Home location.
Select Configuration Type based on your requirement.
Provide Global database name and SID. If you want to create Container Database with Pluggable then Click on Check box.
Select memory for Target Memory and Checked Enable AMM. Click on Character Sets Tab.
Select ASM for Storage.
You may install OEM agent later.
Select Recovery Option.
Select ASM DiskGroup Name for Data.
Make sure ASM compactivity is set at least 12.2.0.0.
Change the compatibility to 12.2.0.0.0 using asmca or command line.
Once set correct compatibility for ASM Group then you should be good.
Provide password for sys and system user.
Select appropriate OS Group for separation of duties.
Prerequisites check. Click on “Fix & Check Again”
Generated script to fix the prerequisites.
Run the script from root user to all recommended nodes.
[root@rac12cnode1 ~]# /tmp/CVU_12.2.0.1.0_oracle/runfixup.sh All Fix-up operations were completed successfully. [root@rac12cnode2 ~]# /tmp/CVU_12.2.0.1.0_oracle/runfixup.sh All Fix-up operations were completed successfully.
Not recommended to ignore any prerequisites on real life database.
Click Yes to confirm as ignore the prerequisites.
Summary of all selection. Click on Install if you want to continue otherwise click on back if need to change any option.
Installation is progressing.
Run the script from all nodes from root user.
Execute root.sh script:
[root@rac12cnode1 ~]# /u01/app/oracle/product/12.2.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/12.2.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. [root@rac12cnode2 ~]# /u01/app/oracle/product/12.2.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/12.2.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.
Database creation is progressing…
Installation completed successfully.
Database Validation:
[oracle@rac12cnode1 dbhome_1]$ srvctl status database -d orcl Instance orcl1 is running on node rac12cnode1 Instance orcl2 is running on node rac12cnode2 SQL> SELECT NAME, OPEN_MODE, INSTANCE_NAME, HOST_NAME FROM GV$DATABASE D, GV$INSTANCE I WHERE D.INST_ID=I.INST_ID; NAME OPEN_MODE INSTANCE_NAME HOST_NAME --------- -------------------- ---------------- ------------------------- ORCL READ WRITE orcl2 rac12cnode2.localdomain ORCL READ WRITE orcl1 rac12cnode1.localdomain [oracle@rac12cnode1 dbhome_1]$ srvctl config database -d orcl Database unique name: orcl Database name: orcl Oracle home: /u01/app/oracle/product/12.2.0/dbhome_1 Oracle user: oracle Spfile: +DATA/ORCL/PARAMETERFILE/spfile.273.1053980243 Password file: +DATA/ORCL/PASSWORD/pwdorcl.256.1053979731 Domain: localdomain Start options: open Stop options: immediate Database role: PRIMARY Management policy: AUTOMATIC Server pools: Disk Groups: DATA Mount point paths: Services: Type: RAC Start concurrency: Stop concurrency: OSDBA group: dba OSOPER group: oper Database instances: orcl1,orcl2 Configured nodes: rac12cnode1,rac12cnode2 CSS critical: no CPU count: 0 Memory target: 0 Maximum memory: 0 Default network number for database services: Database is administrator managed