Oracle 11gR2 RAC Installation on Oracle Linux 6.5

Oracle 11gR2 RAC Installation on Oracle Linux 6.5

In this article we will be installing 2 node 11gR2 RAC on Oracle Linux 6.5. We will be looking at below steps:

 

Configure VM for Node 1

 
 

Open virtual box and create a new VM for node 1. We will be installing OEL 6.5 on both RAC nodes.

 
 

Create New VM

 
 

Open virtual box and click on New. Create first virtual machine with oraracn1 as the name.

 
Operating systemOperating system
 
 
 

Min RAM allocation should be 4 GB per RAC node.

 
memory sizememory size
 
 
 

Create a virtual disk now

 
virtual diskvirtual disk
 
 
 

Select VDI and click next

 
Select VDISelect VDI
 
 
 

Select Dynamically allocated option and click next

 
Select DynamicallySelect Dynamically
 
 
 

Allocate Min 80 GB HDD to your virtual machine. You can allocate even more if you have good hard disk space. Click on Create

 
File locationFile location
 
 
 

Now your virtual machine should be created. This is how your virtual box will look like

 
 
 
 

Right click on virtual machine and select settings. Under System settings, make sure to set below bootorder

 
SystemSystem
 
 
 

Under storage > Optical Drive > choose OEL 6.5 iso file from your system.

 
OEL 6.5OEL 6.5
 
 
 

Under Network, make sure attached to is set to Bridged Adapter and Enable the Network Adapter

 
NetworkNetwork
 
 
 

In RAC, we need to have two network adapters. So, enable the second adapter same like the first one.

 
Network 2Network 2
 
 
 

Click on OK to complete the RAC node 1 setup.

 
 

Install OEL 6.5 on Node 1

 
 

Now that our virtual machine is ready, go ahead, start the virtual machine and install OEL 6.5

 
 
 
 
Oracle Linux 6Oracle Linux 6
 
 
 

Skip media test

 
 
 
 

Click next to continue

 
 
 
 

Go with default language > click next

 
 
 
 

Go with default keyboard type and click on next

 
 
 
 

Select Basic Storage Devices > Click Next

 
 
 
 

Select Yes, Discard and data

 
 
 
 

Give a hostname to your machine oraracn1.oraclgenesis.com

 
 
 
 

Click on configure network and assign a static IP

 
Static IPStatic IP
 
 
 

Assign public IP to your machine. In my case, I have assigned 192.168.0.101 as the machine IP.

 
IP addressIP address
 
 
 

Select second network card and click on edit

 
second network cardsecond network card
 
 
 

Assign private IP to your node 1 on a different subnet mask. Leave Gateway blank

 
Assign private IPAssign private IP
 
 
 

Click next and select your timezone

 
Select TimezoneSelect Timezone
 
 
 

Give a root password

 
 
 
 

Select create custom layout and click next

 
 
 
 

Select Free disk space and click on create

 
 
 
 

Choose standard partition and click Create

 
 
 
 

Create boot partition with 512 MB size

 
Create boot partition with 512 MB sizeCreate boot partition with 512 MB size
 
 
 

Once again choose free disk space and click on create

 
 
 
 

Select file system type as Swap and give 15 GB size (Approx 15000 MB)

 
 
 
 

Again select free space and click on create

 
 
 
 

Give mount point as root (/) and chose option Fill to maximum allowable size

 
 
 
 

Click next and chose Forma option

 
 
 
 
 

Select Write changes to disk

 
 
 
 

No changes on below screen, just click next

 
 
 
 

Choose customize now and just click next

 
 
 
 

From the list, select packages as below:

 
 

Base System:

 
  • Base

  • Client management tools

  • Compatibility libraries

  • Hardware monitoring utilities

  • Large Systems Performance

  • Network file system client

  • Performance Tools

  • Perl Support

Servers:

 
  • Server Platform

  • System administration tools

  • Desktops

  • Desktop

  • Desktop Platform

  • Fonts

  • General Purpose Desktop

  • Graphical Administration Tools

  • Input Methods

  • X Window System

Development:

 
  • Additional Development

  • Development Tools

Applications:

 
  • Internet Browser

 
 
 

Click next and OEL installation will begin

 
 
 
 

Once done, click on Reboot

 
 
 
 

After reboot, there are few post installation steps. Click on Forward

 
 
 
 

Accept the license and click on Forward

 
 
 
 

Choose No and click on Forward

 
 
 
 

Select No thanks and proceed

 
 
 
 

Click forward

 
 
 
 

Do not create any user at this stage, click forward

 
 
 
 

Choose Yes

 
 
 
 

Check the Date and Time settings and click on forward

 
 
 
 

Nothing to choose under Kdump, click forward

 
 
 
 

OEL 6.5 installation is completed.

 
 

Configure VM for Node 2

 
 

You need to create Node 2 like how you have created Node 1 in virtual box. This will be a separate new virtual machine. I have used below configuration for node 2:

 
 
 
 

Install OEL 6.5 on Node 2

 
 

Now that our virtual machine is ready, go ahead and start the virtual machine.

 
 
 
 

Start virtual machine and install OEL 6.5

 
 
 
 

Skip media test

 
 
 
 

Click next to continue

 
 
 
 

Go with default language > click next

 
 
 
 

Go with default keyboard type and click on next

 
 
 
 

Select Basic Storage Devices > Click Next

 
 
 
 

Select Yes, Discard and data

 
 
 
 

Give a hostname to your machine oraracn2.oraclgenesis.com

 
 
 
 

Click on configure network and assign a static IP

 
 
 
 

Assign public IP to your machine. In my case, I have assigned 192.168.0.102 as the machine IP.

 
 
 
 

Select second network card and click on edit

 
 
 
 

Assign private IP to your node 2 on a different subnet mask. Leave Gateway blank

 
 
 
 

Click next and select your timezone

 
 
 
 

Give a root password

 
 
 
 

Select create custom layout and click next

 
 
 
 

Select Free disk space and click on create

 
 
 
 

Choose standard partition and click Create

 
 
 
 

Create boot partition with 512 MB size

 
 
 
 

Once again choose free disk space and click on create

 
 
 
 

Select file system type as Swap and give 15 GB size (Approx 15000 MB)

 
 
 
 

Again select free space and click on create

 
 
 
 

Give mount point as root (/) and chose option Fill to maximum allowable size

 
 
 
 

Click next and chose Format option

 
 
 
 

Select Write changes to disk

 
 
 
 

No changes on below screen, just click next

 
 
 
 

Choose customize now and just click next

 
 
 
 

From the list, select packages as below:

 
 

Base System:

 
 
 
 
 
 
 
 

Servers:Desktops:

 
 
 
 

Desktops:

 
 
 
 

Applications:

 
 
 
 

Development:

 
 
 
 

Click next and OEL installation will begin

 
 
 
 

Once done, click on Reboot

 
 
 
 

After reboot, there are few post installation steps. Click on Forward

 
 
 
 
 

Accept the license and click on Forward

 
 
 
 

Choose No and click on Forward

 
 
 
 

Select No thanks and proceed

 
 
 
 

Click forward

 
 
 
 

Do not create any user at this stage, click forward

 
 
 
 

Choose Yes

 
 
 
 

Check the Date and Time settings and click on forward

 
 
 
 

Nothing to choose under Kdump, click forward

 
 
 
 

OEL 6.5 installation on Node 2 is completed.

 
 
 
 

OS Prerequisites – All Nodes

 
 

Connect to both RAC nodes via putty and execute all the below commands on both nodes.

 
 

Check if your machine is able to speak to internet. You can ping yahoo.com. Then install below package to perform all oracle installation pre-requisites

 
 

yum -y install oracle-rdbms*

 

Install ASM packages

 

yum -y install oracleasm*
yum -y install kmod-oracleasm

 

Change password for oracle user

 

passwd oracle

 

Disable firewall

 

/etc/rc.d/init.d/iptables status
/etc/rc.d/init.d/iptables stop
service iptables stop
chkconfig iptables off
echo 0 > /selinux/enforce

 

Create directories to install grid and oracle software

 

mkdir -p /u01/app/11.2.0/grid mkdir -p /u01/app/oracle/product/11.2.0/db_1 chown -R oracle:oinstall /u01 chmod -R 775 /u01/

mkdir -p /u02
chown -R oracle:oinstall /u02

 

Download Oracle 11.2.0.4 gird and database binaries. Copy it to /u02 location (Only on Node 1)

 
 
 
 

Setup Public & Private Network

 
 

We have below public and private network configuration for our RAC setup:

 
 
 
 

Also, below are the Virtual IP and Scan IP details:

 
 
 
 

Depending upon your environment, change IP addresses and put below under /etc/hosts file on both oraracn1 and oraracn2 nodes

 

On both nodes:
==============
127.0.0.1 localhost.localdomain localhost

# Public Network	- (eth0)
192.168.0.101	oraracn1.oraclegenesis.com	oraracn1
192.168.0.102	oraracn2.oraclegenesis.com	oraracn2

# Private Interconnect - (eth1)
10.10.10.101	oraracn1-priv.oraclegenesis.com	oraracn1-priv
10.10.10.102	oraracn2-priv.oraclegenesis.com	oraracn2-priv

# Public Virtual	IP (VIP) addresses - (eth0:1)	
192.168.0.105	oraracn1-vip.oraclegenesis.com	oraracn1-vip
192.168.0.106	oraracn2-vip.oraclegenesis.com	oraracn2-vip

# Single Client Access Name (SCAN)	
192.168.0.110	orarac-scan.oraclegenesis.com	orarac-scan

 

Test the network configuration

 

On oraracn1:	
============	
# ping oraracn1          --> use Ctrl+C to exit from ping
# ping oraracn2	
# ping oraracn1-priv	
# ping oraracn2-priv	

On oraracn2:	
============	
# ping oraracn1          --> use Ctrl+C to exit from ping
# ping oraracn2	
# ping oraracn1-priv	
# ping oraracn2-priv	

 
Note: You cannot ping VIP and SCAN IP. Those IPs can only be used by an application and are not ping-able!
 
 

Configure Shared Storage

 
 

At this stage, shutdown both the virtual machines. We will allocate shared disks to RAC nodes. Open oraracn1 virtual machine settings and select storage. Click on Adds Hard Disk button under SATA controller

 
 
 
 

Choose Create new disk

 
 
 
 

Choose VDI and click Next

 
 
 
 

Select Fixed size and click Next

 
 
 
 

Allocate 100 GB of shared storage to your RAC setup

 
 
 
 

This will take some time to add shared disk to Node 1

 
 
 
 

Once disk is added, you can see the disk under Node 1 settings > storage

 
 
 
 

Now our goal is to make newly added disk on node 1 shared with node 2. For this, go to File > Virtual Media Manager

 
 
 
 

Select your shared disk > right click > choose Modify

 
 
 
 

Change the property from Normal to Shareable and click on OK

 
 
 
 

Now we are ready to share the disk with Node 2. Open oraracn2 settings > Storage > Adds hard disk icon

 
 
 
 

Do not create a new disk, Choose existing disk

 
 
 
 

Locate your shared disk at OS level. It must mostly be stored under your Node 1 location

 
 
 
 

The disk must now be shared with node 2 as well. You will see the RAC Shared Storage below

 
 
 
 

Create Shared Partitions

 

 

Now that we have 100 GB of shared storage, we need to create three partitions for the main three ASM disk groups

 
 
 
 

Create three partitions under the newly added 100 GB shared disk via node 1

 

On Node 1:
==========
fdisk /dev/sdb
n
p
1
<enter>
+10G

============ Frist partition is created, create second one ============

n
p
1
<enter>
+45G

============ Second partition is created, create third one =============

n
p
1
<enter>
+45G

======= All partitions are created, now save the partition table ==========

w	 this command will save the partition table

 
 

Configure ASM & ASM Disks

 
 

As we have created 3 partitions, we must allocate each partition to single ASM disks, which will then be allocated to ASM Disk groups

 
 
 
 

Configure ASM on both nodes

 

On Node 1 as root user:
=======================
/usr/sbin/oracleasm configure -i

Default user to own the driver interface []: oracle
Default group to own the driver interface []: dba
Start Oracle ASM library driver on boot (y/n) [n]: y
Scan for Oracle ASM disks on boot (y/n) [y]: y

On Node 2 as root user:
=======================
/usr/sbin/oracleasm configure -i

Default user to own the driver interface []: oracle
Default group to own the driver interface []: dba
Start Oracle ASM library driver on boot (y/n) [n]: y
Scan for Oracle ASM disks on boot (y/n) [y]: y

 

Load oracle-asm kernel module on both nodes. This command Creates the /etc/sysconfig/oracleasm configuration file, creates the /dev/oracleasm mount point and mounts the ASMLib driver file system

 

On Node 1 as root user:
=======================
/usr/sbin/oracleasm init


On Node 2 as root user:
=======================
/usr/sbin/oracleasm init

 

Create ASM disks – Any one Node

 

On Node 1 as root user:
=======================
oracleasm createdisk CRS1 /dev/sdb5
oracleasm createdisk DATA1 /dev/sdb6
oracleasm createdisk FRA1 /dev/sdb7

 

Run below commands on both nodes to scan and list ASM disks

 

oracleasm scandisks
oracleasm listdisks

 

 

Oracle Grid Installation

 
 

Oracle grid software is the one which binds multiple independent servers into a cluster. You can configure ASM only when Oracle grid is installed because ASM is bundled with Oracle Grid Software.

 
 

Configure NTP – All Nodes

 

On Node 1 and Node 2:
=====================
#	yum install ntp
#	service ntpd start
#	chkconfig ntpd on

# vi /etc/sysconfig/ntpd	-> Open file delete all and put below line

OPTIONS="-x -u ntp:ntp -p /var/run/ntpd.pid -g"

#	service ntpd stop
#	ntpdate 1.tw.pool.ntp.org
#	service ntpd start

 

Now its good time to clean-up the YUM repository to release some space from the disk

 

On both nodes as root user:
===========================
# yum clean all

 
 

Set Bash Profile

 
 

Setup oracle user bash profile on node 1

 

#	su - oracle
#	vi .bash_profile

#	Oracle Settings
TMP=/tmp; export TMP
TMPDIR=$TMP; export TMPDIR
ORACLE_HOSTNAME=oraracn1; export ORACLE_HOSTNAME
ORACLE_UNQNAME=RAC; export ORACLE_UNQNAME
ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE
GRID_HOME=/u01/app/11.2.0/grid; export GRID_HOME
DB_HOME=$ORACLE_BASE/product/11.2.0/db_1; export DB_HOME
ORACLE_HOME=$DB_HOME; export ORACLE_HOME
ORACLE_SID=RAC1; export ORACLE_SID
ORACLE_TERM=xterm; export ORACLE_TERM
BASE_PATH=/usr/sbin:$PATH; export BASE_PATH
PATH=$ORACLE_HOME/bin:$BASE_PATH; export PATH

LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib; export LD_LIBRARY_PATH
CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib; export CLASSPAT H

alias grid_env='. /home/oracle/grid_env'
alias db_env='. /home/oracle/db_env'

 

Create a file to set grid variables on node 1. This file will set grid environmental variables making it easy to switch between DB home and grid home.

 

# vi /home/oracle/grid_env

ORACLE_SID=+ASM1; export ORACLE_SID
ORACLE_HOME=$GRID_HOME; export ORACLE_HOME
PATH=$ORACLE_HOME/bin:$BASE_PATH; export PATH

LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib; export LD_LIBRARY_PATH
CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib; export CLASSPAT H

 

Create below file to set database environmental variables on Node 1

 

# vi /home/oracle/db_env

ORACLE_SID=RAC1; export ORACLE_SID
ORACLE_HOME=$DB_HOME; export ORACLE_HOME
PATH=$ORACLE_HOME/bin:$BASE_PATH; export PATH

LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib; export LD_LIBRARY_PATH
CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib; export CLASSPAT H

 

Setup oracle user bash profile on node 2

 

# su - oracle
# vi .bash_profile

# Oracle Settings
TMP=/tmp; export TMP
TMPDIR=$TMP; export TMPDIR

ORACLE_HOSTNAME=oraracn2; export ORACLE_HOSTNAME
ORACLE_UNQNAME=RAC; export ORACLE_UNQNAME
ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE
GRID_HOME=/u01/app/11.2.0/grid; export GRID_HOME
DB_HOME=$ORACLE_BASE/product/11.2.0/db_1; export DB_HOME
ORACLE_HOME=$DB_HOME; export ORACLE_HOME
ORACLE_SID=RAC2; export ORACLE_SID
ORACLE_TERM=xterm; export ORACLE_TERM
BASE_PATH=/usr/sbin:$PATH; export BASE_PATH
PATH=$ORACLE_HOME/bin:$BASE_PATH; export PATH

LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib; export LD_LIBRARY_PATH
CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib; export CLASSPAT H

alias grid_env='. /home/oracle/grid_env'
alias db_env='. /home/oracle/db_env'

 

Create a file to set grid variables on node 2. This file will set grid environmental variables making it easy to switch between DB home and grid home.

 

# vi /home/oracle/grid_env

ORACLE_SID=+ASM2; export ORACLE_SID
ORACLE_HOME=$GRID_HOME; export ORACLE_HOME
PATH=$ORACLE_HOME/bin:$BASE_PATH; export PATH

LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib; export LD_LIBRARY_PATH
CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib; export CLASSPAT H

 

Create below file to set database environmental variables on Node 2

 

# vi /home/oracle/db_env

ORACLE_SID=RAC2; export ORACLE_SID
ORACLE_HOME=$DB_HOME; export ORACLE_HOME
PATH=$ORACLE_HOME/bin:$BASE_PATH; export PATH

LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib; export LD_LIBRARY_PATH
CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib; export CLASSPAT H

 

At this stage, exit as oracle user and the open another terminal with new session OR switch to root user and then back to oracle user. This will make the new environmental variables in effect.

 
 

Now it’s time to test our environment variables and check if they are working fine or not. As oracle user, execute below commands on both nodes to check if environmental variables are set properly

 

Node	1:
-------
su –	oracle
# . grid_env	     --To set grid env variables
# env |grep ORA
ORACLE_UNQNAME=RAC
ORACLE_SID=+ASM1
ORACLE_BASE=/u01/app/oracle
ORACLE_HOSTNAME=oraracn1
ORACLE_TERM=xterm
ORACLE_HOME=/u01/app/11.2.0/grid

# . db_env	     --To set DB env variables
# env |grep ORA
ORACLE_UNQNAME=RAC
ORACLE_SID=RAC1
ORACLE_BASE=/u01/app/oracle
ORACLE_HOSTNAME=oraracn1
ORACLE_TERM=xterm
ORACLE_HOME=/u01/app/oracle/product/11.2.0/db_1

 
 

Node	2:		
-------		
su –	oracle		
# . grid_env	     --To set grid env variables	
# env |grep ORA
ORACLE_UNQNAME=RAC
ORACLE_SID=+ASM2
ORACLE_BASE=/u01/app/oracle
ORACLE_HOSTNAME=oraracn2
ORACLE_TERM=xterm
ORACLE_HOME=/u01/app/11.2.0/grid

# . db_env	     --To set DB env variables
# env |grep ORA
ORACLE_UNQNAME=RAC
ORACLE_SID=RAC2
ORACLE_BASE=/u01/app/oracle
ORACLE_HOSTNAME=oraracn2
ORACLE_TERM=xterm
ORACLE_HOME=/u01/app/oracle/product/11.2.0/db_1

 
 

Configure SSH Between Nodes

 
 

Configure SSH connectivity between the nodes as oracle user. There are two methods to setup SSH connectivity between the nodes is: Manual method and automatic method. The manual method is very long and you might encounter errors while doing it. The easy way is the automatic method via script provided by oracle.

 
 

As you have already copied the grid and database software files under /u02, unzip the grid software file. This will create a new folder name grid under /u02. Oracle provides automatic ssh setup script

 

On node 1 as oracle user:
=========================
cd /u02
unzip <grid_software_file_name>

cd grid/sshsetup

./sshUserSetup.sh -user oracle -hosts "oraracn1 oraracn2" -noPromptPassphrase -confir m -advanced

 
 

Run cluvfy utility

 
 

Oracle provide a pre-installation utility which is called as Cluster Verification Utility (CLUVFY). This utility performs cluster verification before, during and after install of grid software. Let us run CLUVFY utility to check cluster before installation of grid

 

# /u01/softwares/grid
# ./runcluvfy.sh stage -pre crsinst -n oraracn1,oraracn2 -fixup -verbose

 

Below is the sample output:

 
 

[oracle@oraracn1 grid]$ ./runcluvfy.sh stage -pre crsinst -n oraracn1,oraracn2 -fixup -verbose 
 
Performing pre-checks for cluster services setup 
 
Checking node reachability... 
 
Check: Node reachability from node "oraracn1"   
Destination Node                      Reachable?   
------------------------------------  ------------------------   
oraracn2                              yes   
oraracn1                              yes 
Result: Node reachability check passed from node "oraracn1"
 
Checking user equivalence... 
 
Check: User equivalence for user "oracle"   
Node Name                             Comment   
------------------------------------  ------------------------   
oraracn1                              passed   
oraracn2                              passed 
Result: User equivalence check passed for user "oracle" 
 
Checking node connectivity... 
 
Checking hosts config file...   
Node Name     Status                    Comment   
------------  ------------------------  ------------------------   
oraracn1      passed   
oraracn2      passed 
 
Verification of the hosts config file successful

Interface information for node "oraracn1"  
Name   IP Address      Subnet          Gateway         Def. Gateway    HW Address        MTU  
------ --------------- --------------- --------------- --------------- ---------------- ------  
eth0   192.168.0.151   192.168.0.0     0.0.0.0         192.168.0.1     00:0C:29:B6:0 F:87 1500  
eth1   10.10.10.151    10.10.10.0      0.0.0.0         192.168.0.1     00:0C:29:B6:0 F:91 1500 
 
 
Interface information for node "oraracn2"  
Name   IP Address      Subnet          Gateway         Def. Gateway    HW Address        MTU  
------ --------------- --------------- --------------- --------------- ---------------- ------  
eth0   192.168.0.152   192.168.0.0     0.0.0.0         192.168.0.1     00:0C:29:81:9 1:FA 1500  
eth1   10.10.10.152    10.10.10.0      0.0.0.0         192.168.0.1     00:0C:29:81:9 1:04 1500 
 
 
Check: Node connectivity of subnet "192.168.0.0"
Source                          Destination                     Connected?
------------------------------  ------------------------------  ---------
oraracn1:eth0                   oraracn2:eth0                   yes
Result: Node connectivity passed for subnet "192.168.0.0" with node(s) oraracn1,orara cn2
 
 
Check: TCP connectivity of subnet "192.168.0.0"   
Source                          Destination                     Connected?   
--------------------            ------------------------        --------
oraracn1:192.168.0.151          oraracn2:192.168.0.152          passed 
Result: TCP connectivity check passed for subnet "192.168.0.0" 
 
 
Check: Node connectivity of subnet "10.10.10.0"   
Source                          Destination                     Connected?   
------------------------------  -------------------             -----------  
oraracn1:eth1                   oraracn2:eth1                   yes 
Result: Node connectivity passed for subnet "10.10.10.0" with node(s) oraracn1,orarac n2 
 
 
Check: TCP connectivity of subnet "10.10.10.0"   
Source                          Destination                     Connected?   
------------------------------  -------------                   ----------         
oraracn1:10.10.10.151           oraracn2:10.10.10.152           passed 
Result: TCP connectivity check passed for subnet "10.10.10.0" 
 
 
Interfaces found on subnet "192.168.0.0" that are likely candidates for VIP are: oraracn1 eth0:192.168.0.151 
oraracn2 eth0:192.168.0.152

Interfaces found on subnet "10.10.10.0" that are likely candidates for a private inte rconnect are: 
oraracn1 eth1:10.10.10.151 
oraracn2 eth1:10.10.10.152 
 
Result: Node connectivity check passed 
 
 
Check: Total memory   
Node Name     Available                 Required                  Comment   
------------  ------------------------  ------------------------  ----------
oraracn1      2.44GB (2559180.0KB)      1.5GB (1572864.0KB)       passed
oraracn2      2.44GB (2559180.0KB)      1.5GB (1572864.0KB)       passed
Result: Total memory check passed 
 
Check: Available memory   
Node Name     Available                 Required                  Comment   
------------  ------------------------  ------------------------  ----------
oraracn1      2.11GB (2211952.0KB)      50MB (51200.0KB)          passed
oraracn2      2.19GB (2294412.0KB)      50MB (51200.0KB)          passed
Result: Available memory check passed 
 
Check: Swap space   
Node Name     Available                 Required                  Comment   
------------  ------------------------  ------------------------  ----------
oraracn1      4.88GB (5116692.0KB)      2.44GB (2559180.0KB)      passed
oraracn2      4.88GB (5116692.0KB)      2.44GB (2559180.0KB)      passed
Result: Swap space check passed 
 
Check: Free disk space for "oraracn1:/tmp"   
Path              Node Name     Mount point   Available     Required      Comment   
----------------  ------------  ------------  ------------  ------------  --------
/tmp              oraracn1      /             4.94GB        1GB           passed
Result: Free disk space check passed for "oraracn1:/tmp" 
 
Check: Free disk space for "oraracn2:/tmp"   
Path              Node Name     Mount point   Available     Required      Comment   
----------------  ------------  ------------  ------------  ------------  ---------
/tmp              oraracn2      /             4.71GB        1GB           passed
Result: Free disk space check passed for "oraracn2:/tmp" 
 
Check: User existence for "oracle"   
Node Name     Status                    Comment   
------------  ------------------------  ------------------------   
oraracn1      exists                    passed   
oraracn2      exists                    passed 
Result: User existence check passed for "oracle" 
 
Check: Group existence for "oinstall"   
Node Name     Status                    Comment   
------------  ------------------------  ------------------------   
oraracn1      exists                    passed   
oraracn2      exists                    passed 
Result: Group existence check passed for "oinstall"

Check: Group existence for "dba"
Node Name     Status                    Comment
------------  ------------------------  ------------------------
oraracn1      exists                    passed
oraracn2      exists                    passed
Result: Group existence check passed for "dba" 
 
Check: Membership of user "oracle" in group "oinstall" [as Primary]
Node Name    User Exists Group Exists  User in Group  Primary      Comment
-----------  ---------   ---------     ------------   ------------ -------
oraracn1     yes         yes           yes            yes          passed
oraracn2     yes         yes           yes            yes          passed
Result: Membership check for user "oracle" in group "oinstall" [as Primary] passed 
 
Check: Membership of user "oracle" in group "dba"
Node Name         User Exists   Group Exists  User in Group  Comment
----------------  ------------  ------------  ------------  ----------------
oraracn1          yes           yes           yes           passed
oraracn2          yes           yes           yes           passed
Result: Membership check for user "oracle" in group "dba" passed 
 
Check: Run level   
Node Name     run level    Required                Comment
------------  -----------  -----------             -----------
oraracn1      5            3,5                     passed
oraracn2      5            3,5                     passed
Result: Run level check passed 
 
Check: Hard limits for "maximum open file descriptors"
Node Name         Type          Available     Required      Comment
----------------  ------------  ------------  ------------  ----------------
oraracn1          hard          131072        65536         passed
oraracn2          hard          131072        65536         passed
Result: Hard limits check passed for "maximum open file descriptors" 
 
Check: Soft limits for "maximum open file descriptors"
Node Name         Type          Available     Required      Comment
----------------  ------------  ------------  ------------  ----------------
oraracn1          soft          131072        1024          passed
oraracn2          soft          131072        1024          passed
Result: Soft limits check passed for "maximum open file descriptors" 
 
Check: Hard limits for "maximum user processes"
Node Name         Type          Available     Required      Comment
----------------  ------------  ------------  ------------  ----------------
oraracn1          hard          131072        16384         passed
oraracn2          hard          131072        16384         passed
Result: Hard limits check passed for "maximum user processes" 
 
Check: Soft limits for "maximum user processes"
Node Name         Type          Available     Required      Comment
----------------  ------------  ------------  ------------  ----------------
oraracn1          soft          131072        2047          passed
oraracn2          soft          131072        2047          passed
Result: Soft limits check passed for "maximum user processes"

Check: System architecture
Node Name     Available                 Required                  Comment
-----------  ------------------------  ------------------------  ----------
oraracn1     x86_64                    x86_64                    passed
oraracn2     x86_64                    x86_64                    passed
Result: System architecture check passed 
 
Check: Kernel version
Node Name     Available                 Required                  Comment
------------  ------------------------  ------------------------  ----------
oraracn1      2.6.18-164.el5            2.6.18                    passed
oraracn2      2.6.18-164.el5            2.6.18                    passed
Result: Kernel version check passed 
 
Check: Kernel parameter for "semmsl"
Node Name     Configured                Required                  Comment
------------  ------------------------  ------------------------  ----------
oraracn1      250                       250                       passed
oraracn2      250                       250                       passed
Result: Kernel parameter check passed for "semmsl" 
 
Check: Kernel parameter for "semmns"
Node Name     Configured                Required                  Comment
------------  ------------------------  ------------------------  ----------
oraracn1      32000                     32000                     passed
oraracn2      32000                     32000                     passed
Result: Kernel parameter check passed for "semmns" 
 
Check: Kernel parameter for "semopm"
Node Name     Configured                Required                  Comment
------------  ------------------------  ------------------------  ----------
oraracn1      100                       100                       passed
oraracn2      100                       100                       passed
Result: Kernel parameter check passed for "semopm" 
 
Check: Kernel parameter for "semmni"
Node Name     Configured                Required                  Comment
------------  ------------------------  ------------------------  ----------
oraracn1      142                       128                       passed
oraracn2      142                       128                       passed
Result: Kernel parameter check passed for "semmni" 
 
Check: Kernel parameter for "shmmax"
Node Name     Configured                Required                  Comment
------------  ------------------------  ------------------------  ----------
oraracn1      4398046511104             536870912                 passed
oraracn2      4398046511104             536870912                 passed
Result: Kernel parameter check passed for "shmmax" 
 
Check: Kernel parameter for "shmmni"
Node Name     Configured                Required                  Comment
------------  ------------------------  ------------------------  ----------
oraracn1      4096                      4096                      passed
oraracn2      4096                      4096                      passed
Result: Kernel parameter check passed for "shmmni"

Check: Kernel parameter for "shmall"
Node Name     Configured                Required                  Comment
------------  ------------------------  ------------------------  ----------
oraracn1      4294967296                2097152                   passed
oraracn2      4294967296                2097152                   passed
Result: Kernel parameter check passed for "shmall" 
 
Check: Kernel parameter for "file-max"
Node Name     Configured                Required                  Comment
------------  ------------------------  ------------------------  ----------
oraracn1      6815744                   6815744                   passed
oraracn2      6815744                   6815744                   passed
Result: Kernel parameter check passed for "file-max" 
 
Check: Kernel parameter for "ip_local_port_range"
Node Name     Configured                Required                  Comment
------------  ------------------------  ------------------------  ----------
oraracn1      between 9000 & 65500      between 9000 & 65500      passed
oraracn2      between 9000 & 65500      between 9000 & 65500      passed
Result: Kernel parameter check passed for "ip_local_port_range" 
 
Check: Kernel parameter for "rmem_default"
Node Name     Configured                Required                  Comment
------------  ------------------------  ------------------------  ----------
oraracn1      262144                    262144                    passed
oraracn2      262144                    262144                    passed
Result: Kernel parameter check passed for "rmem_default" 
 
Check: Kernel parameter for "rmem_max"
Node Name     Configured                Required                  Comment
------------  ------------------------  ------------------------  ----------
oraracn1      4194304                   4194304                   passed
oraracn2      4194304                   4194304                   passed
Result: Kernel parameter check passed for "rmem_max" 
 
Check: Kernel parameter for "wmem_default"
Node Name     Configured                Required                  Comment
------------  ------------------------  ------------------------  ----------
oraracn1      262144                    262144                    passed
oraracn2      262144                    262144                    passed
Result: Kernel parameter check passed for "wmem_default" 
 
Check: Kernel parameter for "wmem_max"
Node Name     Configured                Required                  Comment
------------  ------------------------  ------------------------  ----------
oraracn1      1048576                   1048576                   passed
oraracn2      1048576                   1048576                   passed
Result: Kernel parameter check passed for "wmem_max" 
 
Check: Kernel parameter for "aio-max-nr"
Node Name     Configured                Required                  Comment
------------  ------------------------  ------------------------  ----------
oraracn1      3145728                   1048576                   passed
oraracn2      3145728                   1048576                   passed
Result: Kernel parameter check passed for "aio-max-nr"


Check: Package existence for "make-3.81"
Node Name     Available                 Required                  Comment
------------  ------------------------  ------------------------  ----------
oraracn1      make-3.81-3.el5           make-3.81                 passed
oraracn2      make-3.81-3.el5           make-3.81                 passed
Result: Package existence check passed for "make-3.81" 
 
Check: Package existence for "binutils-2.17.50.0.6"
Node Name     Available                 Required                  Comment
------------  ------------------------  ------------------------  ----------
oraracn1      binutils-2.17.50.0.6-12.el5  binutils-2.17.50.0.6      passed
oraracn2      binutils-2.17.50.0.6-12.el5  binutils-2.17.50.0.6      passed
Result: Package existence check passed for "binutils-2.17.50.0.6" 
 
Check: Package existence for "gcc-4.1.2"
Node Name     Available                 Required                  Comment
------------  ------------------------  ------------------------  ----------
oraracn1      gcc-4.1.2-46.el5          gcc-4.1.2                 passed
oraracn2      gcc-4.1.2-46.el5          gcc-4.1.2                 passed
Result: Package existence check passed for "gcc-4.1.2" 
 
Check: Package existence for "libaio-0.3.106 (i386)"
Node Name     Available                 Required                  Comment
------------  ------------------------  ------------------------  ----------
oraracn1      libaio-0.3.106-5 (i386)   libaio-0.3.106 (i386)     passed
oraracn2      libaio-0.3.106-5 (i386)   libaio-0.3.106 (i386)     passed
Result: Package existence check passed for "libaio-0.3.106 (i386)" 
 
Check: Package existence for "libaio-0.3.106 (x86_64)"
Node Name     Available                 Required                  Comment
------------  ------------------------  ------------------------  ----------
oraracn1      libaio-0.3.106-5 (x86_64)  libaio-0.3.106 (x86_64)   passed
oraracn2      libaio-0.3.106-5 (x86_64)  libaio-0.3.106 (x86_64)   passed
Result: Package existence check passed for "libaio-0.3.106 (x86_64)" 
 
Check: Package existence for "glibc-2.5-24 (i686)"
Node Name     Available                 Required                  Comment
------------  ------------------------  ------------------------  ----------
oraracn1      glibc-2.5-42 (i686)       glibc-2.5-24 (i686)       passed
oraracn2      glibc-2.5-42 (i686)       glibc-2.5-24 (i686)       passed
Result: Package existence check passed for "glibc-2.5-24 (i686)" 
 
Check: Package existence for "glibc-2.5-24 (x86_64)"
Node Name     Available                 Required                  Comment
------------  ------------------------  ------------------------  ----------
oraracn1      glibc-2.5-42 (x86_64)     glibc-2.5-24 (x86_64)     passed
oraracn2      glibc-2.5-42 (x86_64)     glibc-2.5-24 (x86_64)     passed
Result: Package existence check passed for "glibc-2.5-24 (x86_64)" 
 
Check: Package existence for "compat-libstdc++-33-3.2.3 (i386)"
Node Name     Available                            Required                   Comment  
------------  ------------------------             -----------------------    -------
oraracn1      compat-libstdc++-33-3.2.3-61 (i386)  compat-libstdc++-33-3.2.3 (i386)
passed
oraracn2      compat-libstdc++-33-3.2.3-61 (i386)  compat-libstdc++-33-3.2.3 (i386)
passed
Result: Package existence check passed for "compat-libstdc++-33-3.2.3 (i386)" 


Check: Package existence for "compat-libstdc++-33-3.2.3 (x86_64)"
Node Name     Available                 Required                  Comment
------------  ------------------------  ------------------------  ----------
oraracn1      compat-libstdc++-33-3.2.3-61 (x86_64)  compat-libstdc++-33-3.2.3 (x86 _64)  passed
oraracn2      compat-libstdc++-33-3.2.3-61 (x86_64)  compat-libstdc++-33-3.2.3 (x86 _64)  passed
Result: Package existence check passed for "compat-libstdc++-33-3.2.3 (x86_64)" 
 
Check: Package existence for "elfutils-libelf-0.125 (x86_64)"
Node Name     Available                 Required                  Comment
------------  ------------------------  ------------------------  ----------
oraracn1      elfutils-libelf-0.137-3.el5 (x86_64)  elfutils-libelf-0.125 (x86_64)  passed
oraracn2      elfutils-libelf-0.137-3.el5 (x86_64)  elfutils-libelf-0.125 (x86_64)  passed
Result: Package existence check passed for "elfutils-libelf-0.125 (x86_64)" 
 
Check: Package existence for "elfutils-libelf-devel-0.125"
Node Name     Available                 Required                  Comment
------------  ------------------------  ------------------------  ----------
oraracn1      elfutils-libelf-devel-0.137-3.el5  elfutils-libelf-devel-0.125  passed
oraracn2      elfutils-libelf-devel-0.137-3.el5  elfutils-libelf-devel-0.125  passed Result: Package existence check passed for "elfutils-libelf-devel-0.125" 
 
Check: Package existence for "glibc-common-2.5"
Node Name     Available                 Required                  Comment
------------  ------------------------  ------------------------  ----------
oraracn1      glibc-common-2.5-42       glibc-common-2.5          passed
oraracn2      glibc-common-2.5-42       glibc-common-2.5          passed
Result: Package existence check passed for "glibc-common-2.5" 
 
Check: Package existence for "glibc-devel-2.5 (i386)"
Node Name     Available                 Required                  Comment
------------  ------------------------  ------------------------  ----------
oraracn1      glibc-devel-2.5-42 (i386)  glibc-devel-2.5 (i386)    passed
oraracn2      glibc-devel-2.5-42 (i386)  glibc-devel-2.5 (i386)    passed
Result: Package existence check passed for "glibc-devel-2.5 (i386)" 
 
Check: Package existence for "glibc-devel-2.5 (x86_64)"
Node Name     Available                 Required                  Comment
------------  ------------------------  ------------------------  ----------
oraracn1      glibc-devel-2.5-42 (x86_64)  glibc-devel-2.5 (x86_64)  passed
oraracn2      glibc-devel-2.5-42 (x86_64)  glibc-devel-2.5 (x86_64)  passed
Result: Package existence check passed for "glibc-devel-2.5 (x86_64)" 
 
Check: Package existence for "glibc-headers-2.5"
Node Name     Available                 Required                  Comment
------------  ------------------------  ------------------------  ----------
oraracn1      glibc-headers-2.5-42      glibc-headers-2.5         passed
oraracn2      glibc-headers-2.5-42      glibc-headers-2.5         passed
Result: Package existence check passed for "glibc-headers-2.5"


Check: Package existence for "gcc-c++-4.1.2"
Node Name     Available                 Required                  Comment
------------  ------------------------  ------------------------  ----------
oraracn1      gcc-c++-4.1.2-46.el5      gcc-c++-4.1.2             passed
oraracn2      gcc-c++-4.1.2-46.el5      gcc-c++-4.1.2             passed
Result: Package existence check passed for "gcc-c++-4.1.2" 
 
Check: Package existence for "libaio-devel-0.3.106 (i386)"
Node Name     Available                 Required                  Comment
------------  ------------------------  ------------------------  ----------
oraracn1      libaio-devel-0.3.106-5 (i386)  libaio-devel-0.3.106 (i386)  passed
oraracn2      libaio-devel-0.3.106-5 (i386)  libaio-devel-0.3.106 (i386)  passed
Result: Package existence check passed for "libaio-devel-0.3.106 (i386)" 
 
Check: Package existence for "libaio-devel-0.3.106 (x86_64)"
Node Name     Available                 Required                  Comment
------------  ------------------------  ------------------------  ----------
oraracn1      libaio-devel-0.3.106-5 (x86_64)  libaio-devel-0.3.106 (x86_64)  passed
oraracn2      libaio-devel-0.3.106-5 (x86_64)  libaio-devel-0.3.106 (x86_64)  passed
Result: Package existence check passed for "libaio-devel-0.3.106 (x86_64)" 
 
Check: Package existence for "libgcc-4.1.2 (i386)"
Node Name     Available                 Required                  Comment
------------  ------------------------  ------------------------  ----------
oraracn1      libgcc-4.1.2-46.el5 (i386)  libgcc-4.1.2 (i386)       passed
oraracn2      libgcc-4.1.2-46.el5 (i386)  libgcc-4.1.2 (i386)       passed
Result: Package existence check passed for "libgcc-4.1.2 (i386)" 
 
Check: Package existence for "libgcc-4.1.2 (x86_64)"
Node Name     Available                 Required                  Comment
------------  ------------------------  ------------------------  ----------
oraracn1      libgcc-4.1.2-46.el5 (x86_64)  libgcc-4.1.2 (x86_64)     passed
oraracn2      libgcc-4.1.2-46.el5 (x86_64)  libgcc-4.1.2 (x86_64)     passed
Result: Package existence check passed for "libgcc-4.1.2 (x86_64)" 
 
Check: Package existence for "libstdc++-4.1.2 (i386)"
Node Name     Available                 Required                  Comment
------------  ------------------------  ------------------------  ----------
oraracn1      libstdc++-4.1.2-46.el5 (i386)  libstdc++-4.1.2 (i386)    passed
oraracn2      libstdc++-4.1.2-46.el5 (i386)  libstdc++-4.1.2 (i386)    passed
Result: Package existence check passed for "libstdc++-4.1.2 (i386)" 
 
Check: Package existence for "libstdc++-4.1.2 (x86_64)"
Node Name     Available                 Required                  Comment
------------  ------------------------  ------------------------  ----------
oraracn1      libstdc++-4.1.2-46.el5 (x86_64)  libstdc++-4.1.2 (x86_64)  passed
oraracn2      libstdc++-4.1.2-46.el5 (x86_64)  libstdc++-4.1.2 (x86_64)  passed
Result: Package existence check passed for "libstdc++-4.1.2 (x86_64)" 
 
Check: Package existence for "libstdc++-devel-4.1.2 (x86_64)"
Node Name     Available                 Required                  Comment
------------  ------------------------  ------------------------  ----------
oraracn1      libstdc++-devel-4.1.2-46.el5 (x86_64)  libstdc++-devel-4.1.2 (x86_64)
passed
oraracn2      libstdc++-devel-4.1.2-46.el5 (x86_64)  libstdc++-devel-4.1.2 (x86_64)
passed
Result: Package existence check passed for "libstdc++-devel-4.1.2 (x86_64)"


Check: Package existence for "sysstat-7.0.2"
Node Name     Available                 Required                  Comment
------------  ------------------------  ------------------------  ----------
oraracn1      sysstat-7.0.2-13.0.1.el5  sysstat-7.0.2             passed
oraracn2      sysstat-7.0.2-13.0.1.el5  sysstat-7.0.2             passed
Result: Package existence check passed for "sysstat-7.0.2" 
 
Check: Package existence for "unixODBC-2.2.11 (i386)"
Node Name     Available                 Required                  Comment
------------  ------------------------  ------------------------  ----------
oraracn1      unixODBC-2.2.11-10.el5 (i386)  unixODBC-2.2.11 (i386)    passed
oraracn2      unixODBC-2.2.11-10.el5 (i386)  unixODBC-2.2.11 (i386)    passed
Result: Package existence check passed for "unixODBC-2.2.11 (i386)" 
 
Check: Package existence for "unixODBC-2.2.11 (x86_64)"
Node Name     Available                 Required                  Comment
------------  ------------------------  ------------------------  ----------
oraracn1      unixODBC-2.2.11-10.el5 (x86_64)  unixODBC-2.2.11 (x86_64)  passed
oraracn2      unixODBC-2.2.11-10.el5 (x86_64)  unixODBC-2.2.11 (x86_64)  passed
Result: Package existence check passed for "unixODBC-2.2.11 (x86_64)" 
 
Check: Package existence for "unixODBC-devel-2.2.11 (i386)"
Node Name     Available                 Required                  Comment
------------  ------------------------  ------------------------  ----------
oraracn1      unixODBC-devel-2.2.11-10.el5 (i386)  unixODBC-devel-2.2.11 (i386)  passed
oraracn2      unixODBC-devel-2.2.11-10.el5 (i386)  unixODBC-devel-2.2.11 (i386)  passed
Result: Package existence check passed for "unixODBC-devel-2.2.11 (i386)" 
 
Check: Package existence for "unixODBC-devel-2.2.11 (x86_64)"
Node Name     Available                 Required                  Comment
------------  ------------------------  ------------------------  ----------
oraracn1      unixODBC-devel-2.2.11-10.el5 (x86_64)  unixODBC-devel-2.2.11 (x86_64)  passed
oraracn2      unixODBC-devel-2.2.11-10.el5 (x86_64)  unixODBC-devel-2.2.11 (x86_64)  passed
Result: Package existence check passed for "unixODBC-devel-2.2.11 (x86_64)" 
 
Check: Package existence for "ksh-20060214"
Node Name     Available                 Required                  Comment
------------  ------------------------  ------------------------  ----------
oraracn1      ksh-20080202-14.el5       ksh-20060214              passed
oraracn2      ksh-20080202-14.el5       ksh-20060214              passed
Result: Package existence check passed for "ksh-20060214" 
 
Checking for multiple users with UID value 0 Result: Check for multiple users with UID value 0 passed 
 
Check: Current group ID Result: Current group ID check passed Checking Core file name pattern consistency... Core file name pattern consistency check passed. 
 
Checking to make sure user "oracle" is not in "root" group
Node Name     Status                    Comment
------------  ------------------------  ------------------------
oraracn1      does not exist            passed
oraracn2      does not exist            passed

Result: User "oracle" is not part of "root" group. Check passed 
 
Check default user file creation mask
Node Name     Available                 Required                  Comment
------------  ------------------------  ------------------------  ----------
oraracn1      0022                      0022                      passed
oraracn2      0022                      0022                      passed
Result: Default user file creation mask check passed 
 
Starting Clock synchronization checks using Network Time Protocol(NTP)... 
 
NTP Configuration file check started... Network Time Protocol(NTP) configuration file not found on any of the nodes. Oracle C luster Time Synchronization Service(CTSS) can be used instead of NTP for time synchro nization on the cluster nodes 
 
Result: Clock synchronization check using Network Time Protocol(NTP) passed 
 
 
Pre-check for cluster services setup was successful.
 
 
Note: You must see Pre-check for cluster services setup was successful at the end of the cluvfy output.
 

Install Grid Software

 
 

The following steps will guide you to install Oracle Grid software with Oracle ASM binaries. As oracle user, start the grid runInstaller

 

On Node 1: 
==========
su – oracle 

# cd /u02/grid/ 
# ./runInstaller

 

Note: sometimes there might be display variable error. issues below command as root user to enable GUI

 

# xhost +

 

Under Select Installation Option, choose Install and Configure Grid Infrastructure for a Cluster and Click Next

 
 
 
 

Select Advanced Installation and click Next

 
 
 
 

Select Advanced Installation and click Next

 
 
 
 

Input below details and click Next

 
 
 
 

Below screen will list out the nodes which you want to install and configure as part of Grid

 
 
 
 

Click on Add and enter details of Node 2. Click on OK

 
 
 
 

In case you have more than two nodes, Add each node by clicking on Add. Click Next to proceed

 
 
 
 

Specify network interface by selecting public and private interfaces. Click Next

 
 
 
 

Select storage option as Automatic Storage Management (ASM). Click Next

 
 
 
 

You need to assign a disk where the grid installer will keep OCR and Voting disks. Click on Change Discovery Path, type /dev/oracleasm/disks/* and click OK. Under Add Disks, you must see the three disks which we have created as part of Shard Storage.

 
 

Before you proceed, sometimes you might not see the lists of disks. In such cases, follow below:

 
 

1. Check if /dev/sdb1, /dev/sdc1, /dev/sdd1 had ownership as oracle user. If not then issue below commands as root user on both nodes:

 
 

# chown oracle:oinstall /dev/sdb1
# chown oracle:oinstall /dev/sdc1
# chown oracle:oinstall /dev/sdd1

 

2. Also give full permissions on above disks

 

# chmod 777 /dev/sdb1
# chmod 777 /dev/sdc1
# chmod 777 /dev/sdd1

 

Again go to Change Discovery Path, type /dev/oracleasm/disks/* and click OK. Now all the disks will be listed. Type Disk Group Name as CRS, Redundancy as External and under Disk Path /dev/oracleasm/disks/CRSVOL1

 
 
 
 

Now provide password for sys user and click Next

 
 
 
 

It will prompt you for password standard, just click on Yes

 
 
 
 

Select Do Not Use IPMI and click Next

 
 
 
 

Go with default operating system groups and click Next. If prompted with notification, just click on Yes

 
 
 
 

Provide Oracle Base and Software Installation Location. Click on Next

 
 
 
 

Go with default inventory location. Click Next

 
 
 
 

The run Installer will perform pre-requsites test again. If any step is failed, you must fix it before proceeding ahead

 
 
 
 

The final screen displays installation summary. Important things to note here:

 
  • Oracle Base Location

  • Oracle Home – This should actually be grid home

Click on Finish to start the installation

 
 
 
 

Now the setup will start installing Grid Software on both nodes

 
 
 
 

Now the installer will prompt you for two root.sh scripts to be run on each node. Execute them as root user on both nodes one by one.

 
 

Your grid installation will finish and Cluster Verification Utility Filed error will be displayed. Just ignore the error.

 
 

Oracle RAC Installation

 
 

During the installation of Oracle grid infrastructure, we configured one ASM disk group named +CRS which was used to store the Oracle clusterware files (OCR and voting disk). Now we will configure ASM disk groups for DATA and FRA

 
 

Create DATA & FRA Diskgroups

 
 

Launch asmca form the command prompt as oracle user

 

On node 1:
==========

su – oracle
asmca

 

ASM Configuration Assistant window will launch. From the Disk Groups tab, click on Create.

 
 
 
 

The Create Disk Group window will open and it should show two of the ASMLib volumes we created earlier

 
 

Click on Create. Give a name to your DATA disk group. This disk group will hold database files. Then click on OK

 
 
 
 
 
 
 

Install Oracle RAC Software – Node 1 only

 
 

Unzip the database software files under /u02. There will be two files downloaded. Unzip them as oracle user one by one

 

#	su - oracle
#	cd /u02
#	unzip linux.x64_11gR2_database_1of2.zip
#	unzip linux.x64_11gR2_database_2of2.zip

 

Unzipping files will create a new folder as database under same location

 

# ls -lrt
drwxr-xr-x 8	oracle oinstall	4096	Aug 21	2009	database
-rwxr-xr-x 1	oracle oinstall 1052897657	Nov	2	09:41	linux.x64_11gR2_grid.zip
-rwxr-xr-x 1	oracle oinstall 1239269270	Dec	1	01:00	linux.x64_11gR2_database_1of2.zip
-rwxr-xr-x 1	oracle oinstall	1111416131	Dec	1	01:01	linux.x64_11gR2_database_2of2.zip

 

Go to database folder and start the runInstaller

 

#	cd database
#	./runInstaller

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

 

Create RAC Database

 
 

From node 1, start dbca as oracle user

 

On node 1:
==========
su - oracle
dbca

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Done! Your 2 node RAC database is ready to use!

posted @ 2021-05-18 13:56  耀阳居士  阅读(73)  评论(0编辑  收藏  举报