ORACLE GRID INFRASTRUCTURE 11GR2 (RAC) INSTALLATION ON LINUX 5.4
The document describes the installation of oracle 11gR2 Grid Infrastructure on Linux 5.4(32-bit) on oracle virtualbox-4.2.18 with latest virtualbox extension pack.
The oracle software will be downloaded from MOS using valid CSI. The installation steps mentioned here used for 11.2.0.3 and also valid for 11.2.0.1 to 11.2.0.4. The virtualbox software can be downloaded from www.virtualbox.org,
The virtualbox can provide you with the flexibility to run multiple machines on single physical server. It also allows you to setup, configure and use the virtual shared storage.
Requirement:- Before kicking off the installation, consider the following bullets,
- Be ready with host machine running with two virtual machines on VM.
- Consider you have sufficient memory and CPU available, Minimum requirement are 3G physical memory on each guest machine, but recommendation is to use minimum of 4G on each guest. otherwise system will go crazy.
- Add the 3-SCAN ip's in DNS or GNS, if you have no plan to use the DNS or GNS, than single SCAN ip will be added into /etc/hosts on all the nodes.
- The public and virtual ip must be on same subnet including SCAN. The private ip must be on different network. Do not use 169.254.* series of IP as private or public because the series are reserved for HAIP.
- This installation uses the 32bit Linux guest host with 4G of physical RAM each and 3-shared virtual disk for ASM storage.
Software::
- Download virtualbox with extension pack and install
- Oracle Enterprise Linux 5.4 / REHL
- Oracle Software with Grid Infrastructure (Disk1, Disk2 and Disk3)
Guest Machines setup:- Install the virtualbox with extension pack -> double click and start the virtual box. Once the oracle VM box manager is started. do the following to create the two guest hosts.
Click the "New" button on the toolbar and enter the machine name "RAC01" (whatever you want), select type as "Linux" and version "oracle" or "oracle(64bit)" i am using oracle for 32bit. and then click "Next".
Allocate the physical memory to guest machine by sliding the slider or write into box as "4096" for 4G. then "Next"
The next step is to create the virtual hard disk for OS installation, select the default and "create"
The next window provide you with the disk file type, accept the default selection "VDI(Virtual Box Disk Image)" and press "Next".
The next window will provide you with the option for creating the disk with fixed size of dynamic size. "Accept the default as dynamic", I will prefer the dynamic because it allocates the space as required and is also fast in for creating the disk. Hit the "Next" button,
Moving to next window will give you the opportunity to select the size of disk and the location of the disk by select the folder icon on right hand side (marked in blue). and slide the slider for the desired size. Hit "Create"
Once the disk is created, the guest is visible into VM manager, like wise use the same steps for other machine i.e. RAC02.
select the machine "RAC01" click settings in toolbar - select network - "Adapter1", "Enable Network Adapter", "Bridged Adapter".
select "Adapter2" and select either "Internal Network" or "Bridged Network", both will work.
Now goto "System" on same window and select the "Boot Order" unselect the floppy option and hit "OK". The guest is ready to start-> on VM manager -> hit the "Start" on toolbar to start the machine.
Once the guest is on, select the linux software "ISO" image by clicking on the right hand side folder option and select "Start" button.
Now, here is the boot-loader screen for Linux installation. Repeat the same steps for other machines as well.
Once all the required guest are ready, assign the IP Addresses to the machines (you are free to use as per your convenient but keep the consistency across the nodes).
So my machines IP address as follows in the /etc/hosts file,
Grid Infrastructure Installation Prerequisites: The prereqs can be setup by either manually or automatic. The Oracle Enterprise Linux comes with preinstalled oracle prereqs with oracle-validated packages or 11gR2-preinstall-packages. Selecting these during installation will install all the required packages and setup the kernel parameters and other configuration files. The oracle user are also created by default with oinstall and DBA as group.
other automatic method is to install the oracle-validated packages from ULN. Note the internet connectivity is required for downloading the packages. The instructions are available at http://public-yum.oracle.com to setup the oracle linux repository, and login as root and execute,
[root@RAC01~]#yum install oracle-validated
Manual Method:: if you are not using OEL (Oracle Enterprise Linux) or have any challenge to install the prereqs packages, follow the steps, download and install the below list of packages.
binutils-2.17.50.0.6
compat-libstdc++-33-3.2.3
compat-libstdc++-33-3.2.3 (32 bit)
elfutils-libelf-0.125
elfutils-libelf-devel-0.125
elfutils-libelf-devel-static-0.125
gcc-4.1.2
gcc-c++-4.1.2
glibc-2.5-24
glibc-2.5-24 (32 bit)
glibc-common-2.5
glibc-devel-2.5
glibc-devel-2.5 (32 bit)
glibc-headers-2.5
ksh-20060214
libaio-0.3.106
libaio-0.3.106 (32 bit)
libaio-devel-0.3.106
libaio-devel-0.3.106 (32 bit)
libgcc-4.1.2
libgcc-4.1.2 (32 bit)
libstdc++-4.1.2
libstdc++-4.1.2 (32 bit)
libstdc++-devel 4.1.2
libstdc++-devel 4.1.2 (32 bit)
make-3.81
pdksh-5.2.14
sysstat-7.0.2
unixODBC-2.2.11
unixODBC-2.2.11 (32 bit)
unixODBC-devel-2.2.11
unixODBC-devel-2.2.11 (32 bit)
Add the following lines into "/etc/sysctl.conf" file and execute the following command as root to update the current kernel parameters.
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 1054504960
kernel.shmmni = 4096
# semaphores: semmsl, semmns, semopm, semmni
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=1048586
[root@RAC01~]# sysctl -p
Edit and add the below lines to the "/etc/security/limits.conf" file for both grid and oracle.
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
grid soft nproc 2047
grid hard nproc 16384
grid soft nofile 1024
grid hard nofile 65536
Also add the lines to the "/etc/pam.d/login" file, if it does not exist.
session required pam_limits.so
Create the users and groups as root on both the nodes (separate for grid infrastructure and oracle RDBMS), you can also use the same user for oracle and grid infrastructure. Note:- keep the guid same across all the nodes, otherwise user equivalence check will fail.
[root@RAC01~]#groupadd -g 509 oinstall
[root@RAC01~]#groupadd -g 511 asmadmin
[root@RAC01~]#groupadd -g 513 asmdba
[root@RAC01~]#groupadd -g 511 asmoper
[root@RAC01~]#groupadd -g 510 dba
[root@RAC01~]#useradd -u 509 -g oinstall -G asmadmin,asmoper,asmdba,dba grid
[root@RAC01~]#useradd -u 510 -g oinstall -G dba,asmdba oracle
Create the desired directories and change the ownership to user oracle and grid, here i have created two different file systems for grid software(/oracrs) and oracle software(/orasoft)
[root@RAC01~]#mkdir -p /oracrs/app/11.2.0/grid
[root@RAC01~]#chown -R grid:oinstall /oracrs
[root@RAC01~]#chmod -R 775 /oracrs/
[root@RAC01~]#mkdir -p /orasoft/app/oracle/product/11.2.0/dbhome
[root@RAC01~]#chown -R oracle:oinstall /orasoft
[root@RAC01~]#chmod -R 775 /orasoft/
setup the passwords for grid and oracle user.
[root@RAC01~]#passwd oracle
[root@RAC01~]#passwd grid
setup the ip addresses as mentioned above in "/etc/hosts" and add the single IP for scan into it, if DNS is not available. (copy the same file on other nodes)
#private Address
10.10.0.1 rac01-priv
10.5.0.1 rac01-priv
10.10.0.2 rac02-priv
10.5.0.2 rac02-priv
#public Address
192.168.0.11 rac01
192.168.0.10 rac02
#VIP Address
192.168.0.15 rac01-vip
192.168.0.16 rac02-vip
#SCAN Address
192.168.0.20 rac-scan
Install the clusterware specific package shipped with grid binaries on all the nodes as a root user.
[root@RAC01~]#cd /tmp/grid/rpm
[root@RAC01~]#export CVUQDISK_GRP=oinstall
[root@RAC01~]#rpm -ivh cvuqdisk-1.0.7-1.rpm
Disable the SELINUX by commenting the below parameter into "/etc/selinux/config" file
SELINUX=enforcing to SELINUX=disabled or permissive.
Stop and disable the firewalls between nodes (execute on both the nodes),
[root@RAC01~]#service iptables stop
[root@RAC01~]#chkconfig iptables off
The time synchronization can be done by either NTP or CTSS, if you are not using NTP, then CTSS will synchronize the time between nodes. so stop and remove the NTPD configuration from all the nodes,
[root@RAC01~]# service ntpd stop
Shutting down ntpd: [ OK ]
[root@RAC01~]# chkconfig ntpd off
[root@RAC01~]# mv /etc/ntp.conf /etc/ntp.conf.orig
[root@RAC01~]# rm /var/run/ntpd.pid
or if you are planning to use NTP, then you must add the "-x" option into "/etc/sysconfig/ntpd" file and then restart the service.
OPTIONS="-x -u ntp:ntp -p /var/run/ntpd.pid"
[root@RAC01~]#service ntpd restart
SSH: Configure SSH for user equivalence on both the nodes (grid as well as oracle user), during installation OUI needs to copy files to and execute programs on the other nodes in the cluster. Configuring SSH on both the nodes means copying and executing the program on other nodes without prompting passwords.
Generate RSA/DSA Keys: login as grid and oracle user one by one and generate the keys on each node.
[grid@rac01~]$mkdir .ssh
[grid@rac01~]$chmod -R 700 .ssh
[grid@rac01~]$ssh-keygen -t rsa (press 3-times enter, generates two files)
[grid@rac01~]$ssh-keygen -t dsa (press 3-times enter, generate two files)
Generate authorized_keys: Generate the authorized_keys by copying RSA and DSA public keys from all the nodes.
[grid@rac01~]$ssh rac01 cat /home/grid/.ssh/id_rsa.pub >> authorized_keys
[grid@rac01~]$ssh rac01 cat /home/grid/.ssh/id_dsa.pub >> authorized_keys
[grid@rac01~]$ssh rac02 cat /home/grid/.ssh/id_rsa.pub >> authorized_keys
[grid@rac01~]$ssh rac02 cat /home/grid/.ssh/id_dsa.pub >> authorized_keys
[grid@rac01~]$ssh rac01 cat /home/oracle/.ssh/id_rsa.pub >> authorized_keys
[grid@rac01~]$ssh rac01 cat /home/oracle/.ssh/id_dsa.pub >> authorized_keys
[grid@rac01~]$ssh rac02 cat /home/oracle/.ssh/id_rsa.pub >> authorized_keys
[grid@rac01~]$ssh rac02 cat /home/oracle/.ssh/id_dsa.pub >> authorized_keys
Copy the generated authorized_keys & known_hosts to other nodes:
$scp authorized_keys known_hosts rac02:/home/grid/.ssh
$scp authorized_keys known_hosts rac02:/home/oracle/.ssh
Alternatively you can use the oracle provided utility available in software location e.g. /tmp/1120_grid/grid/sshsetup/sshUserSetup.sh or during installation using GUI prompt you for configuration. Make sure for silent installation, the ssh configured before proceeding for installation.
$/tmp/grid/sshsetup/sshUserSetup.sh -user grid -hosts “rac01 rac02” -advanced -noPromptPassphrase
Adding shared storage:- The shared storage will be either allocated from SAN or NAS, but here we are using VM, follow the steps to create the shared storage.
shutdown the machine and goto "settings" toolbar - select "Storage" - click on add controller button (marked in RED) - select "Add SCSI Controller" from the list
Once the "Controller:SCSI" visible into the "Storage Tree" select SCSI and click on add attachement (marked in RED) and then select "create new disk"
Next window will give you the option to select the size using slider and the location where you want to store the shared disks and select the storage -> "Fixed Size", otherwise sharing will not be allowed. repeat the steps to add more ASM shared disks.
Added three virtual ASM disks. follow the same procedure to add more storage.
Goto Virtual Box Manager and select "File" -> "Virtual Media Manager" ,
Select the ASM disk from the list which you want to share with other nodes and click "Modify" from toolbar and check the "Shareable" and then "OK" repeat the same for other disks as well.
After finishing with one node, select the other node and add the SCSI controller and also add the attachments (explained above) and select the "Choose Existing Disk" from the selection, then browse your above created disk and hit "OK", repeat the same for other disks as well on all the nodes.
once done, the devices will be created and visible into "/dev" directory as,
[root@RAC01~]# cd /dev
[root@RAC01~]# ls sd*
sda sda1 sda2 sdb sdc sdd sde sdf
[root@RAC01~]#
Use the "fdisk" command to partition the disks sdb to sdf by using the below procedure,
[root@RAC01~]# fdisk /dev/sdb
Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
Building a new DOS disklabel. Changes will remain in memory only,
until you decide to write them. After that, of course, the previous
content won't be recoverable.
The number of cylinders for this disk is set to 1305.
There is nothing wrong with that, but this is larger than 1024,
and could in certain setups cause problems with:
1) software that runs at boot time (e.g., old versions of LILO)
2) booting and partitioning software from other OSs
(e.g., DOS FDISK, OS/2 FDISK)
Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)
Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-1305, default 1):
Using default value 1
Last cylinder or +size or +sizeM or +sizeK (1-1305, default 1305):
Using default value 1305
Command (m for help): p
Disk /dev/sdb: 10.7 GB, 10737418240 bytes
255 heads, 63 sectors/track, 1305 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sdb1 1 1305 10482381 83 Linux
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
#
In each case, the sequence of answers is "n", "p", "1", "Return", "Return", "p" and "w".
Once all the disks are partitioned, the results will be as.
[root@RAC01~]# cd /dev
[root@RAC01~]# ls sd*
sda sda1 sda2 sdb sdb1 sdc sdc1 sdd sdd1 sde sde1 sdf sdf1
[root@RAC01~]#
Configure ASMLIB:- for OEL the ASMLIB will be by default installed if not then download the appropriate ASMLIB from ULN/OL and install the same. Note:- ASMLIB not available for RHEL6.0 and above versions. in this case, use the UDEV. Execute the below on all the nodes.
[root@RAC01~]# 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 []: grid
Default group to own the driver interface []: asmadmin
Start Oracle ASM library driver on boot (y/n) [n]: y
Scan for Oracle ASM disks on boot (y/n) [y]:
Writing Oracle ASM library driver configuration: done
[root@RAC01~]#
Load the Kernel Modules by executing,
[root@RAC01~]# /usr/sbin/oracleasm init
Loading module "oracleasm": oracleasm
Mounting ASMlib driver filesystem: /dev/oracleasm
[root@RAC01~]#
Create the shared disks using oracleasm on one node and scan the disks on this and other nodes,
[root@RAC01~]# oracleasm createdisk DISK1 /dev/sdb1
Writing disk header: done
Instantiating disk: done
[root@RAC01~]# oracleasm createdisk DISK2 /dev/sdc1
Writing disk header: done
Instantiating disk: done
[root@RAC01~]# oracleasm createdisk DISK3 /dev/sdd1
Writing disk header: done
Instantiating disk: done
[root@RAC01~]#oracleasm scandisks
Reloading disk partitions: done
Cleaning any stale ASM disks...
Scanning system for ASM disks...
[root@RAC01~]#
[root@RAC01~]#oracleasm listdisks --> verify that all the disks visible from other nodes as well.
DISK1
DISK2
DISK3
[root@RAC01~]#
------------------------------------Reboot all the machines-----------------------------------------------
Installation of Grid Infrastructure: Make sure all the machines are up and pingable from each other (RAC01 and RAC02). goto the software location and unzip the disk3, change the ownership of the software to grid:oinstall
[grid@RAC01~]$ cd /tmp/grid
[grid@RAC01~]$ ./runInstaller
select "Skip software updates" if you do not have MOS login credentials or internet connectivity. - Next
Select "Install and Configure Grid Infrastructure for a Cluster" option, then click the "Next" button.
Select "Typical Installation" option, then click the "Next" button.
Enter the SCAN name and click the "Add" button.
Enter the details of the second node in the cluster, then click the "OK" button.
Click the "SSH Connectivity...and enter the "oracle" os user password. Click the "Setup" button to to configure SSH connectivity between nodes, if the ssh already established then click "Test" button to test the connectivity.
Click on "Identify network interfaces" button and select the correct public and private and do not use if you are not using any network subnet. and hit the "Next"
In next window, Enter the "Oracle Base" "/oracrs/app/grid" and "/oracrs/app/11.2.0/grid" as the software location. select the "Automatic Storage Manager" for "cluster registry storage type" and enter the ASM password. Hit "Next" button.
Give the diskgroup name "DATA" or anyother (choice yours), Set the redundancy to "Normal". if the ASM disks are not displayed, click the "Change Discovery Path" button and enter "/dev/oracleasm/disks/*" and click the "OK" button. Select all 3 disks and click the "Next" button.
Accept the default oraInventory location and hit "Next" button. The next window will do the prereqs checks and display the messages for any failures.
CVUQDISK is not installed and prereqs check failed, install the cvuqdisk and explained above by login as root on all the nodes and click "Check Again", If "device Checks for ASM" failed, check the "Ignore All"
The next, window will have the summary of, and if you are like the summary, hit the "Install" button.
The progressing window will be displayed and the installation take few minutes..wait
During installation, prompted for the scripts to run as root, follow the sequence while executing the root.sh and oraInstroot.sh scripts(only first time installation). Once done on all the nodes, hit "OK"
oraInstroot.sh script:- Execute on both the nodes(prompt only, if you are installing first time)
[root@RAC01~]## cd /oracrs/app/oraInventory
[root@RAC01~]# ./orainstRoot.sh
Changing permissions of /oracrs/app/oraInventory.
Adding read,write permissions for group.
Removing read,write,execute permissions for world.
Changing groupname of /oracrs/app/oraInventory to oinstall.
The execution of the script is complete.
[root@RAC01~]#
root.sh execution logs on RAC01,
[root@RAC01~]# hostname
RAC01
[root@RAC01~]# /oracrs/app/11.2.0/grid/root.sh
Performing root user operation for Oracle 11g
The following environment variables are set as:
ORACLE_OWNER= grid
ORACLE_HOME= /oracrs/app/11.2.0/grid
Enter the full pathname of the local bin directory: [/usr/local/bin]:
The contents of "dbhome" have not changed. No need to overwrite.
The contents of "oraenv" have not changed. No need to overwrite.
The contents of "coraenv" have not changed. No need to overwrite.
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.
Using configuration parameter file: /oracrs/app/11.2.0/grid/crs/install/crsconfig_params
Creating trace directory
User ignored Prerequisites during installation
OLR initialization - successful
root wallet
root wallet cert
root cert export
peer wallet
profile reader wallet
pa wallet
peer wallet keys
pa wallet keys
peer cert request
pa cert request
peer cert
pa cert
peer root cert TP
profile reader root cert TP
pa root cert TP
peer pa cert TP
pa peer cert TP
profile reader pa cert TP
profile reader peer cert TP
peer user cert
pa user cert
Adding Clusterware entries to inittab
CRS-2672: Attempting to start 'ora.mdnsd' on 'rac01'
CRS-2676: Start of 'ora.mdnsd' on 'rac01' succeeded
CRS-2672: Attempting to start 'ora.gpnpd' on 'rac01'
CRS-2676: Start of 'ora.gpnpd' on 'rac01' succeeded
CRS-2672: Attempting to start 'ora.cssdmonitor' on 'rac01'
CRS-2672: Attempting to start 'ora.gipcd' on 'rac01'
CRS-2676: Start of 'ora.cssdmonitor' on 'rac01' succeeded
CRS-2676: Start of 'ora.gipcd' on 'rac01' succeeded
CRS-2672: Attempting to start 'ora.cssd' on 'rac01'
CRS-2672: Attempting to start 'ora.diskmon' on 'rac01'
CRS-2676: Start of 'ora.diskmon' on 'rac01' succeeded
CRS-2676: Start of 'ora.cssd' on 'rac01' succeeded
ASM created and started successfully.
Disk Group DATA created successfully.
clscfg: -install mode specified
Successfully accumulated necessary OCR keys.
Creating OCR keys for user 'root', privgrp 'root'..
Operation successful.
CRS-4256: Updating the profile
Successful addition of voting disk a9c76262f6634fb0bf3a8c1f5f2acc6f.
Successful addition of voting disk 42a663207a034fd5bf6874bc1b290eec.
Successful addition of voting disk a59592a3cf794fa0bf834920ba3ef83a.
Successfully replaced voting disk group with +DATA.
CRS-4256: Updating the profile
CRS-4266: Voting file(s) successfully replaced
## STATE File Universal Id File Name Disk group
-- ----- ----------------- --------- ---------
1. ONLINE a9c76262f6634fb0bf3a8c1f5f2acc6f (/dev/oracleasm/disks/DISK1) [DATA]
2. ONLINE 42a663207a034fd5bf6874bc1b290eec (/dev/oracleasm/disks/DISK2) [DATA]
3. ONLINE a59592a3cf794fa0bf834920ba3ef83a (/dev/oracleasm/disks/DISK3) [DATA]
Located 3 voting disk(s).
CRS-2672: Attempting to start 'ora.asm' on 'rac01'
CRS-2676: Start of 'ora.asm' on 'rac01' succeeded
CRS-2672: Attempting to start 'ora.DATA.dg' on 'rac01'
CRS-2676: Start of 'ora.DATA.dg' on 'rac01' succeeded
CRS-2672: Attempting to start 'ora.registry.acfs' on 'rac01'
CRS-2676: Start of 'ora.registry.acfs' on 'rac01' succeeded
Configure Oracle Grid Infrastructure for a Cluster ... succeeded
[root@RAC01~]#
root.sh execution logs on RAC02.
[root@RAC02~]# /oracrs/app/11.2.0/grid/root.sh
Performing root user operation for Oracle 11g
The following environment variables are set as:
ORACLE_OWNER= grid
ORACLE_HOME= /oracrs/app/11.2.0/grid
Enter the full pathname of the local bin directory: [/usr/local/bin]:
The contents of "dbhome" have not changed. No need to overwrite.
The contents of "oraenv" have not changed. No need to overwrite.
The contents of "coraenv" have not changed. No need to overwrite.
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.
Using configuration parameter file: /oracrs/app/11.2.0/grid/crs/install/crsconfig_params
Creating trace directory
User ignored Prerequisites during installation
OLR initialization - successful
Adding Clusterware entries to inittab
CRS-4402: The CSS daemon was started in exclusive mode but found an active CSS daemon on node rac01, number 1, and is terminating
An active cluster was found during exclusive startup, restarting to join the cluster
Configure Oracle Grid Infrastructure for a Cluster ... succeeded
[root@RAC02~]#
If you have any failure as mentioned below during "oracle Cluster Verification Utility" safe to skip, because the DNS is not configured for SCAN. "Skip" and hit "Next"
INFO: Checking Single Client Access Name (SCAN)...
INFO: Checking name resolution setup for "rac-scan"...
INFO: ERROR:
INFO: PRVF-4664 : Found inconsistent name resolution entries for SCAN name "rac-scan"
INFO: ERROR:
INFO: PRVF-4657 : Name resolution setup check for "rac-scan" (IP address: 192.168.0.20) failed
INFO: ERROR:
INFO: PRVF-4664 : Found inconsistent name resolution entries for SCAN name "rac-scan"
INFO: Verification of SCAN VIP and Listener setup failed
and finally, hit the "Close". (you have successfully installed the grid infrastructure 11gR2(11.2.0.3.0).
Finally, check the services status registered with cluster.
[grid@RAC01 grid]$ crsctl stat res -t
--------------------------------------------------------------------------------
NAME TARGET STATE SERVER STATE_DETAILS
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.DATA.dg
ONLINE ONLINE rac01
ONLINE ONLINE rac02
ora.LISTENER.lsnr
ONLINE ONLINE rac01
ONLINE ONLINE rac02
ora.asm
ONLINE ONLINE rac01 Started
ONLINE ONLINE rac02 Started
ora.gsd
OFFLINE OFFLINE rac01
OFFLINE OFFLINE rac02
ora.net1.network
ONLINE ONLINE rac01
ONLINE ONLINE rac02
ora.ons
ONLINE ONLINE rac01
ONLINE ONLINE rac02
ora.registry.acfs
ONLINE ONLINE rac01
ONLINE ONLINE rac02
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.LISTENER_SCAN1.lsnr
1 ONLINE ONLINE rac01
ora.cvu
1 ONLINE ONLINE rac01
ora.oc4j
1 ONLINE ONLINE rac01
ora.rac01.vip
1 ONLINE ONLINE rac01
ora.rac02.vip
1 ONLINE ONLINE rac02
ora.scan1.vip
1 ONLINE ONLINE rac01
[grid@RAC01 grid]$
RAC DATABASE INSTALLATION
We have finished the grid infrastructure installation part and now moving to RAC RDBMS installation. Make sure all the clustered machines are up and running. Unzip the Disk1 and Disk2 in same directory and change the ownership of software to "oracle" user.
login as "oracle" OS user and start the runInstaller as,
uncheck the "security updates checkbox" as checked by default and hit "Next"
Select "Skip software updates" and hit the "Next" button,
Select "create and configure database" and hit "Next" button, you can also use "install database software only" if you wish to create the database later.
select the server class as database installation and creation. and hit "Next" button
Select the "Oracle Real Application Clusters Database Installations" and hit "Next" button,
If you getting the below error, after hitting "next" do the following to fix this,
The issue is because installation of grid infrastructure inventory.xml contains the CRS flag to false in central oraInventory. When the runInstaller invokes for RAC RDBMS binaries installation, It will look for inventory.xml for CRS flag and fails.
Solution:- )cat the oraInst.loc and look for inventory location
-------------------------------------------------------
Linux:
[grid@rac01 ~]$ cat /etc/oraInst.loc
inventory_loc=/oracrs/app/oraInventory
inst_group=oinstall
----------------------------------------------------------------------
b.) Check the inventro.xml in your oraInventry and look for CRS=true
(donot edit gthis file manually) if not present proceed to next step,
-----------------------------------------------------------------------
[grid@rac01 ContentsXML]$ pwd
/oracrs/app/oraInventory/ContentsXML
[grid@rac01 ContentsXML]$ ls
comps.xml inventory.xml libs.xml
[grid@rac01 ContentsXML]$ cat inventory.xml
<?xml version="1.0" standalone="yes" ?>
<!-- Copyright (c) 1999, 2011, Oracle. All rights reserved. -->
<!-- Do not modify the contents of this file by hand. -->
<INVENTORY>
<VERSION_INFO>
<SAVED_WITH>11.2.0.3.0</SAVED_WITH>
<MINIMUM_VER>2.1.0.6.0</MINIMUM_VER>
</VERSION_INFO>
<HOME_LIST>
<HOME NAME="Ora11g_gridinfrahome1" LOC="/oracrs/app/11.2.0/grid" TYPE="O" IDX="1">
<NODE_LIST>
<NODE NAME="rac01"/>
<NODE NAME="rac02"/>
</NODE_LIST>
</HOME>
</HOME_LIST>
<COMPOSITEHOME_LIST>
</COMPOSITEHOME_LIST>
</INVENTORY>
[grid@rac01 ContentsXML]$
------------------------------------------------------------------------------------------------------------------
b.1) Do this on all the nodes in grid infrastructure (if not automatically updated by runInstaller on all the nodes)
------------------------------------------------------------------------------------------------------------------
$GRID_HOME/oui/bin/runInstaller -updateNodeList ORACLE_HOME="<GIRD HOME>" CRS=true.
[grid@rac01bin]$./runInstaller -updateNodeList ORACLE_HOME="/oracrs/app/11.2.0/grid" CRS=true
Starting Oracle Universal Installer...
Checking swap space: must be greater than 500 MB. Actual 34271 MB Passed
The inventory pointer is located at /etc/oraInst.loc
The inventory is located at /oracrs/app/oraInventory
'UpdateNodeList' was successful.
Fixed, move to "Next" window, make sure both the nodes select (rac01, rac02), option to setup the SSH, if not already done as explained above. hit "Next" button.
Select "Typical Installation" and hit "Next" button.
Option to select the correct directory for software installation, provide the oracle base and software location. select Storage Type "Oracle Automatic Storage Management" and provide the diskgroup name which you want to use to store the database files. pass the Global database name and supply the passwords. hit "Next" button once done with this window.
The next window will do the prereqs checks and report any prereqs not met, fix them and proceed for next and if any prereqs are not mandatory, you can check the "Ignore All" and proceed with "Next" button.
Now, next windows will be summary where you have the opportunity to revalidate and if you are happy with the summary, hit "Install" button to proceed for installation.
The next will be the progressing window and wait here because the installation take while, enjoy and relax (coffee break)
As soon as the oracle RAC software installation finished, the database configuration Assistant(DBCA) will invoke automatically,
When prompted, execute the root.sh script as root user in sequence,
root.sh script execution and output log.
once the root.sh script execution finished on all the node, back to node1 and hit "OK" and "Next"
The last window will give you the OEM link, which can be used to monitor and administration task as well. finally hit "Close" to finish the RAC database installation and creation.
Database Verification:- There are multiple ways to verify or check the database, use crsctl command as explained in part -I. you can also verify from OS using ps -ef command, login to database or using srvctl as below,
[oracle@RAC01~]$ srvctl config database -d orcl
Database unique name: orcl
Database name: orcl
Oracle home: /orasoft/app/oracle/product/11.2.0/dbhome
Oracle user: oracle
Spfile: +EXT/RAC/spfileorcl.ora
Domain: localdomain
Start options: open
Stop options: immediate
Database role: PRIMARY
Management policy: AUTOMATIC
Server pools: RAC
Database instances: orcl1,orcl2
Disk Groups: EXT
Services:
Database is administrator managed
[oracle@RAC01~]$
[oracle@RAC01~]$ srvctl status database -d orcl
Instance RAC1 is running on node rac01
Instance RAC2 is running on node rac02
[oracle@RAC01~]$
You are done with database installation and configuration. enjoy the readings and post questions if you have any.
********************END************************


















pictures are not visible
ReplyDelete