0% found this document useful (0 votes)
3 views62 pages

Oracle Rac Installatio

The document outlines the installation process for Oracle RAC, including hardware and OS configuration, IP address requirements, and the creation of necessary OS groups and users. It details the configuration of kernel parameters, TCP/UDP settings, and the creation of required directories for Oracle software. The document serves as a comprehensive guide for setting up an Oracle RAC environment on Solaris 11, ensuring all prerequisites and configurations are met.

Uploaded by

Nidip Adhikari
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
3 views62 pages

Oracle Rac Installatio

The document outlines the installation process for Oracle RAC, including hardware and OS configuration, IP address requirements, and the creation of necessary OS groups and users. It details the configuration of kernel parameters, TCP/UDP settings, and the creation of required directories for Oracle software. The document serves as a comprehensive guide for setting up an Oracle RAC environment on Solaris 11, ensuring all prerequisites and configurations are met.

Uploaded by

Nidip Adhikari
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd

ORACLE RAC INSTALLATION

[Link] Configuration
1.1 Hardware Requirement Check
root@node1:~# prtconf | grep "Memory size"
Memory size: 32768 Megabytes
root@node2:~# prtconf | grep "Memory size"
Memory size: 32768 Megabytes
Note1: Oracle 19c Minimum RAM Requirement: 8 GB / Our Environment: 32 GB

prtconf – Displays the system hardware and configuration information.


| (Pipe) – Passes the output of one command to another command.
grep "Memory size" – Filters the output to display only the line containing "Memory size".

Note2: Checks the total physical RAM installed on the server to verify it meets Oracle RAC
installation requirements.

1.2 OS Requirement
root@node1:~# uname -p -r
5.11 sparc
root@node2:~# uname -p -r
5.11 sparc

Command Explanation:
uname – Displays system information.
-r – Displays the operating system kernel release version.
-p – Displays the processor (CPU) architecture.

Note:
Checks the operating system kernel version and processor architecture to verify Oracle RAC
compatibility and ensure the correct Oracle software (SPARC or x86) is installed.

1.3 IP Address Requirement

Public IP: Used by users, applications, and administrators to connect to each RAC node.
Private IP: Used only for communication between RAC nodes (heartbeat and Cache Fusion).
VIP (Virtual IP): A floating IP managed by Oracle Clusterware that automatically moves to
another node during a node failure.
SCAN (Single Client Access Name): A single hostname that allows clients to connect to the
RAC cluster without specifying individual node addresses.
root@node1:~# cat /etc/hosts

# Copyright 2009 Sun Microsystems, Inc. All rights reserved.


# Use is subject to license terms.
#
# Internet host table
#
# Internet host table
#Configured by:Nidip Adhikari
#/etc/hosts - Oracle RAC 19c on Solaris 11
#Oracle Version:19c([Link])
::1 localhost
[Link] localhost loghost
#PUBLIC IP - Client connection and SSH access (net0)
[Link] node1 node1.
[Link] node2 node2.

#PRIVATE INTERCONNECT IPs-Heartbeat and Cache Fusion (net1)


[Link] node1-priv node1-priv.
[Link] node2-priv node2-priv.

#VIRTUAL IPs-Oracle creates these during Grid installation


[Link] node1-vip node1-vip.
[Link] node2-vip node2-vip.

#SCAN IPs-Single Client Access Name(3 IPs, 1 hostname)


[Link] node-scan node-scan.
[Link] node-scan node-scan.
[Link] node-scan node-scan.

Verify:
getent hosts node1
getent hosts node2
getent hosts node1-priv
getent hosts node2-priv
getent hosts node1-vip
getent hosts node2-vip
getent hosts node-scan

Output:
[Link] node1 node1.
[Link] node2 node2.
[Link] node1-priv node2-priv.
[Link] node2-priv node2-priv.
[Link] node1-vip node1-vip.
[Link] node2-vip node2-vip.
[Link] node-scan node-scan. node-scan. node-scan.
[Link] node-scan node-scan. node-scan. node-scan.
[Link] node-scan node-scan. node-scan. node-scan.

1.4 Verify both nodes have the same configuration.


root@node1:~# hostname
node1

root@node1:~# id
uid=0(root) gid=0(root)

root@node2:~# hostname
node2

root@node2:~# id
uid=0(root) gid=0(root)

Note: This confirms we're logged in as root on the correct node before making system changes.

1.5 Create OS Groups


root@node1:~# groupadd -g 500 oinstall
root@node1:~# groupadd -g 501 dba
root@node1:~# groupadd -g 502 oper
root@node1:~# groupadd -g 503 asmadmin
root@node1:~# groupadd -g 504 asmdba
root@node1:~# groupadd -g 505 asmoper
root@node1:~# groupadd -g 506 bkpdba
root@node1:~# groupadd -g 507 dgdba
root@node1:~# groupadd -g 508 kmdba
root@node1:~# groupadd -g 509 racdba

Note: Run on: Both Node 1 and Node 2

Command Explanation:
groupadd – Creates a new operating system group.
-g 500 – Assigns Group ID (GID) 500.
oinstall – Oracle Inventory group.

Note:
oinstall-Creates the primary group that owns Oracle software.
dba-Creates the group for Oracle database administrators.
oper- Creates the group for Oracle database operators.
asmadmin- Creates the group with full ASM administration privileges.
asmdba- Creates the group that allows database instances to access ASM storage.
asmoper- Creates the group for limited ASM operational tasks.
bkpdba- Creates the group for Oracle backup administration.
dgdba-Creates the group for Oracle Data Guard administration.
kmdba-Creates the group for Oracle.
racdba-Creates the group for Oracle RAC database administration.

1.6 Create the Grid and Oracle User


root@node1:~# useradd -u 501 -g oinstall -G asmdba,asmoper,asmadmin -d /export/home/grid -m grid
root@node2:~# useradd -u 501 -g oinstall -G asmdba,asmoper,asmadmin -d /export/home/grid -m grid

Command Explanation:
useradd – Creates a new operating system user.
-u 501 – Assigns User ID (UID) 501.
-g oinstall – Sets the primary group.
-G asmdba,asmoper,asmadmin – Adds supplementary groups.
-d /export/home/grid – Sets the home directory.
-m – Creates the home directory if it does not exist.
grid – Username.

Note:Creates the Grid Infrastructure owner with ASM administration


privileges.

root@node1:~# useradd -u 502 -g oinstall -G dba,oper,asmdba,racdba,kmdba,dgdba,bkpdba -d


/export/home/oracle -m oracle
root@node2:~# useradd -u 502 -g oinstall -G dba,oper,asmdba,racdba,kmdba,dgdba,bkpdba, -d
/export/home/oracle -m oracle

root@node1:~# passwd grid


New Password:
Re-enter new Password:
passwd: password successfully changed for grid
root@node1:~#
root@node1:~# passwd oracle
New Password:
Re-enter new Password:
passwd: password successfully changed for oracle
root@node1:~#

root@node2:~# passwd grid


New Password:
Re-enter new Password:
passwd: password successfully changed for grid
root@node2:~# passwd oracle
New Password:
Re-enter new Password:
passwd: password successfully changed for oracle
root@node2:~#

Command Explanation:
useradd – Creates a new operating system user.
-u 502 – Assigns User ID (UID) 502.
-g oinstall – Sets the primary group.
-G dba,oper,asmdba,racdba,kmdba,dgdba,bkpdba – Assigns additional Oracle groups.
-d /export/home/oracle – Sets the user's home directory.
-m – Creates the home directory.
oracle – Username.

Note: Creates the Oracle Database software owner with the required administrative privileges.

1.7 Configuring Kernel Parameters on Solaris 11


Concept: Solaris Projects allocate the system resources required by Oracle Grid Infrastructure and
Oracle Database.

Run As: root & Run On: Both Nodes

Note: Check Existing Project

Command: projects -l | grep [Link]

Command Explanation

projects – Displays Solaris projects.

-l – Shows detailed project information.

grep [Link] – Searches for the Oracle project.

Note: Checks whether the Oracle project already exists.

If no output appears →Create it.

root@node1:~# projadd -c "Oracle dba Group for CRS and RDBMS" [Link]

Create Project

Command Explanation :

projadd – Creates a Solaris project.

-c – Adds a description.

[Link] – Project name.

Note: Creates the Oracle resource management project.

root@node1:~# projmod -s -K "[Link]-sem-ids=(priv,256,deny)" [Link]


Command Explanation:

projmod – Modifies an existing Solaris project.

-s – Saves the project after modification.

-K – Sets a project resource attribute.

[Link]-sem-ids – Maximum semaphore identifiers.

(priv,256,deny) – Sets the privileged limit to 256.

[Link] – Project name.

Note: Sets the maximum semaphore identifiers Oracle can use.

Why Oracle needs it: Oracle uses semaphores to synchronize multiple background and user processes.

root@node1:~# projmod -s -K "[Link]-sem-nsems=(priv,256,deny)" [Link]

Command Explanation:

projmod – Modifies an existing Solaris project.

-s – Saves the changes.

-K – Sets a resource attribute.

[Link]-sem-nsems – Maximum semaphores in one semaphore set.

(priv,256,deny) – Sets the privileged limit to 256.

[Link] – Project name.

Note: Sets the maximum number of semaphores in each semaphore set.

Why Oracle needs it: Oracle uses semaphore sets for process synchronization and resource
management.

root@node1:~# projmod -s -K "[Link]-shm-memory=(priv,24G,deny)" [Link]

Command Explanation:

projmod – Modifies an existing Solaris project.

-s – Saves the changes.

-K – Sets a resource attribute.

[Link]-shm-memory – Maximum shared memory available.

(priv,24G,deny) – Sets the shared memory limit to 24 GB.

[Link] – Project name.

Note:Sets the maximum shared memory Oracle can use.


Why Oracle needs it: Oracle stores the SGA (System Global Area) in shared memory for fast access by
database processes.

root@node1:~# projmod -s -K "[Link]-stack-size=(basic,10240kb,deny)" [Link]

Command Explanation:

projmod – Modifies an existing Solaris project.

-s – Saves the changes.

-K – Sets a resource attribute.

[Link]-stack-size – Maximum stack size for a process.

(basic,10240kb,deny) – Sets the stack size to 10 MB.

[Link] – Project name.

Note:Sets the maximum stack memory for Oracle processes.

Why Oracle needs it: Prevents Oracle processes from running out of stack memory.

root@node1:~# projmod -s -K "[Link]-file-descriptor=(priv,65536,deny)" [Link]

Command Explanation:

projmod – Modifies an existing Solaris project.

-s – Saves the changes.

-K – Sets a resource attribute.

[Link]-file-descriptor – Maximum open file descriptors.

(priv,65536,deny) – Sets the limit to 65,536.

[Link] – Project name.

Note:Sets the maximum number of files Oracle processes can open.

Why Oracle needs it: Oracle keeps many database files, redo logs, control files, and sockets open
simultaneously.

Verify Project:
root@node1:~# projects -l [Link]
Apply the same on node 2:

1.8 Assigning the resource group to Grid and Oracle User


root@node1:~# usermod -K project=[Link] grid
root@node1:~# usermod -K project=[Link] oracle

root@node2:~# usermod -K project=[Link] grid


root@node2:~# usermod -K project=[Link] oracle

Command Explanation:

usermod – Modifies an existing user.

-K – Sets a user attribute.

project=[Link] – Assigns the Solaris project.

oracle – Username.

Note:Assigns the Oracle project to the oracle user.

Why Oracle needs it: Ensures the Oracle Database processes inherit the configured resource limits.
Verify Projects Assigned:

1.9 Set and Verify TCP and UDP Kernel Parameters


Concept: Oracle RAC uses TCP and UDP for communication between cluster nodes and client
connections. Configuring the ephemeral (anonymous) port range ensures enough ports are available for
Oracle services and cluster communication.

Run As: root & Run On: Both Node 1 and Node 2

ipadm show-prop -p smallest_anon_port tcp


ipadm show-prop -p largest_anon_port tcp
ipadm show-prop -p smallest_anon_port udp
ipadm show-prop -p largest_anon_port udp

Command Explanation:

ipadm – Manages IP network configuration.

show-prop – Displays network properties.

-p – Specifies which properties to display.

smallest_anon_port – Lowest ephemeral (anonymous) TCP port.

largest_anon_port – Highest ephemeral (anonymous) TCP port.

tcp – TCP protocol.

Note: Displays the current TCP ephemeral port range.

ipadm set-prop -p smallest_anon_port=9000 tcp


ipadm set-prop -p smallest_anon_port=9000 udp
ipadm set-prop -p largest_anon_port=65500 tcp
ipadm set-prop -p largest_anon_port=65500 udp

Command Explanation:

ipadm – Manages IP network configuration.

set-prop – Modifies a network property.

-p – Specifies the property to change.

smallest_anon_port=9000 – Sets the starting TCP ephemeral (anonymous) port to 9000.

largest_anon_port=65500 – Sets the ending TCP ephemeral (anonymous) port to 65500.


tcp – Applies the settings to the TCP protocol.

Note: Configures the TCP ephemeral (anonymous) port range from 9000 to 65500. This range is
commonly recommended for Oracle Grid Infrastructure and RAC to provide enough dynamic ports and
help avoid port conflicts.

1.10 Create Required Directories


Concept: Oracle stores different components in separate directories to keep Grid Infrastructure,
Database software, and Oracle Inventory organized and easy to manage.

Think of it like this:

Directory Purpose

Oracle Inventory Keeps track of all Oracle software installed on the server.

Grid Base Base directory for Grid Infrastructure files.

Grid Home Location where Oracle Grid Infrastructure software is installed.

Oracle Base Base directory for Oracle Database software.

Oracle Home Location where Oracle Database software is installed.

Check /u01: Before creating anything, verify that the filesystem exists.

Command: df -h /u01

Command Explanation:

df – Displays filesystem disk usage.

-h – Displays sizes in human-readable format.

/u01 – Filesystem to check.

Note

Verifies that the Oracle installation filesystem is available.

1.10.1 Creating Oracle Inventory Directory and assigning permissions


mkdir -p /u01/app/oraInventory
chown -R grid:oinstall /u01/app/oraInventory
chmod -R 775 /u01/app/oraInventory

1.10.2 Creating Grid Infrastructure Directory and assigning permissions


mkdir -p /u01/app/[Link]/grid
mkdir -p /u01/app/grid
chown -R grid:oinstall /u01/app/[Link]/grid
chown -R grid:oinstall /u01/app/grid
chmod -R 775 /u01/app/[Link]/grid
chmod -R 775 /u01/app/grid
1.10.3 Creating Oracle Database Directory and assigning permissions
mkdir -p /u01/app/oracle/product/[Link]/dbhome_1
chown -R oracle:oinstall /u01/app/oracle/
chmod -R 775 /u01/app/oracle/

1.10.4 Create User profile for Grid user


Switch to Grid user:
root@node1:~# su – grid

Note: Before doing anything check hostname & echo $SHELL, because:

hostname determines what ORACLE_HOSTNAME should resolve to.

echo $SHELL tells us whether you're using the Bourne shell (sh/ksh) or another shell, so we
configure the profile correctly.
grid@node1:~$ vi ~/.profile

Note: Opens the Grid user's environment configuration file.

########################################################################

# Oracle Grid Infrastructure Environment

########################################################################

# Set default permissions for newly created files and directories.

# Files: 644 Directories: 755


umask 022

# Hostname of the current RAC node.


# Clusterware uses it to identify the local node during installation and cluster operations.
export ORACLE_HOSTNAME=node1

# Oracle Grid Base directory.


# Stores diagnostic files, logs, trace files, and administrative data.
export ORACLE_BASE=/u01/app/grid

# Oracle Grid Home (Grid Infrastructure installation directory).


# Stores diagnostic files, logs, trace files, and administrative data.
export ORACLE_HOME=/u01/app/[Link]/grid

# ASM instance running on Node 1.


# Oracle convention:
# Node 1 = +ASM1
# Node 2 = +ASM2
export ORACLE_SID=+ASM1

# Oracle shared library location.


# Required for Oracle executables to load the correct runtime libraries.
export LD_LIBRARY_PATH=$ORACLE_HOME/lib

# Add Oracle executables and OPatch to the system PATH.


# Why Oracle needs it, Allows us to run commands like: #sqlplus/srvctl/crsctl/asmcmd/opatch without typing
their full name.
export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/OPatch:$PATH

# Temporary directories used by Oracle utilities and installer.


# Oracle Universal Installer and OPatch create temporary files during installation and patching.
export TMP=/tmp
export TMPDIR=/tmp

# Required by Oracle Universal Installer (GUI mode).


export AWT_TOOLKIT=XToolkit

Save the File:


Esc
:wq!
source ~/.profile

grid@node2:~$ cat ~/.profile

########################################################################

# Oracle Grid Infrastructure Environment

########################################################################

# Set default permissions for newly created files and directories.


# Files: 644 Directories: 755
umask 022

# Hostname of the current RAC node.


# Clusterware uses it to identify the local node during installation and cluster operations.
export ORACLE_HOSTNAME=node2

# Oracle Grid Base directory.


# Stores diagnostic files, logs, trace files, and administrative data.
export ORACLE_BASE=/u01/app/grid
# Oracle Grid Home (Grid Infrastructure installation directory).
# Stores diagnostic files, logs, trace files, and administrative data.
export ORACLE_HOME=/u01/app/[Link]/grid

# ASM instance running on Node 2.


# Oracle convention:
# Node 1 = +ASM1
# Node 2 = +ASM2
export ORACLE_SID=+ASM2

# Oracle shared library location.


# Required for Oracle executables to load the correct runtime libraries.
export LD_LIBRARY_PATH=$ORACLE_HOME/lib

# Add Oracle executables and OPatch to the system PATH.


# Why Oracle needs it, Allows us to run commands like: #sqlplus/srvctl/crsctl/asmcmd/opatch without
typing their full name.
export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/OPatch:$PATH

# Temporary directories used by Oracle utilities and installer.


# Oracle Universal Installer and OPatch create temporary files during installation and patching.
export TMP=/tmp
export TMPDIR=/tmp

# Required by Oracle Universal Installer (GUI mode).


export AWT_TOOLKIT=XToolkit

Save the File:


Esc
:wq!
source ~/.profile

1.10.5 Create User profile for Oracle user


Switch to Oracle user:
root@node1:~# su – oracle

vi ~/.profile

########################################################################
# Oracle Database Environment
########################################################################

# Sets default permissions for newly created files and directories.


# Files: 644 Directories: 755
umask 022

# Hostname of the current RAC node.


# Used by Oracle Clusterware and Database services.
export ORACLE_HOSTNAME=node1

# Oracle Base directory.


# Stores Oracle administrative files, logs, trace files and diagnostics.
export ORACLE_BASE=/u01/app/oracle

# Oracle Database Home.


# Stores Oracle Database software binaries, libraries and utilities.
export ORACLE_HOME=/u01/app/oracle/product/[Link]/dbhome_1

# Database Instance Name running on Node 1.


# Oracle RAC convention:
# Node1 = ORCL1
# Node2 = ORCL2
export ORACLE_SID=ORCL1

# Unique database name shared by all RAC instances.


export ORACLE_UNQNAME=ORCL

# Oracle shared library location.


export LD_LIBRARY_PATH=$ORACLE_HOME/lib

# Oracle executable search path.


export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/OPatch:$PATH

# Temporary directories used by Oracle Installer and OPatch.


export TMP=/tmp
export TMPDIR=/tmp

# Required for Oracle Universal Installer (GUI mode).


export AWT_TOOLKIT=XToolkit

Save the File:


Esc
:wq!
source ~/.profile

root@node2:~# su - oracle

########################################################################
# Oracle Database Environment
########################################################################

# Sets default permissions for newly created files and directories.


# Files: 644 Directories: 755
umask 022

# Hostname of the current RAC node.


# Used by Oracle Clusterware and Database services.
export ORACLE_HOSTNAME=node2

# Oracle Base directory.


# Stores Oracle administrative files, logs, trace files and diagnostics.
export ORACLE_BASE=/u01/app/oracle

# Oracle Database Home.


# Stores Oracle Database software binaries, libraries and utilities.
export ORACLE_HOME=/u01/app/oracle/product/[Link]/dbhome_1

# Database Instance Name running on Node 2.


# Oracle RAC convention:
# Node1 = ORCL1
# Node2 = ORCL2
export ORACLE_SID=ORCL2

# Unique database name shared by all RAC instances.


export ORACLE_UNQNAME=ORCL

# Oracle shared library location.


export LD_LIBRARY_PATH=$ORACLE_HOME/lib

# Oracle executable search path.


export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/OPatch:$PATH

# Temporary directories used by Oracle Installer and OPatch.


export TMP=/tmp
export TMPDIR=/tmp

# Required for Oracle Universal Installer (GUI mode).


export AWT_TOOLKIT=XToolkit

Save the File:


Esc
:wq!
source ~/.profile
2. Installation of Grid Infrastructure (Clusterware)
2.1 Initializing the Installer
#####################################################################################
Before everything else configure Passwordless SSH for ORACLE RAC Installation

Note: Configuring Passwordless SSH for Oracle RAC Installation

During the Oracle RAC Grid Infrastructure installation, the installer validates passwordless SSH
communication between all cluster nodes. If this prerequisite is not met, the installer reports SSH
validation errors and cannot continue. To resolve this issue, first verify that both nodes can
communicate using ping <hostname> and ensure the SSH service is running with svcs ssh. Next, log in as
the grid user on each node and confirm that SSH keys exist by running ls ~/.ssh. Display the public key
using cat ~/.ssh/id_rsa.pub and verify the trusted keys with cat ~/.ssh/authorized_keys. If passwordless SSH
fails, copy the missing public key from one node into the authorized_keys file of the other node using vi
~/.ssh/authorized_keys. After updating the file, apply the correct permissions using chmod 700 ~/.ssh and
chmod 600 ~/.ssh/authorized_keys. Finally, validate the configuration by executing remote commands such
as ssh <remote_node> hostname and ssh <remote_node> date. If these commands execute without
prompting for a password, passwordless SSH has been successfully configured, satisfying the Oracle RAC
Grid Infrastructure SSH prerequisite and allowing the installation to proceed.

Configuring Passwordless SSH Between RAC Nodes


Note: Recreate new key in both the nodes:
grid@node1:rm -rf ~/.ssh
grid@node1:mkdir ~/.ssh
grid@node1:chmod 700 ~/.ssh
grid@node1:ssh-keygen -t rsa

grid@node2:rm -rf ~/.ssh


grid@node2:mkdir ~/.ssh
grid@node2:chmod 700 ~/.ssh
grid@node2:ssh-keygen -t rsa

grid@node1:ssh-keygen -t rsa
grid@node2:ssh-keygen -t rsa

Enter
Enter
Enter

Note: Now, we’ll exchange the key manually.


On node 1: cat ~/.ssh/id_rsa.pub
On node 2: cat ~/.ssh/id_rsa.pub

vi ~/.ssh/authorized_keys
Note: Paste both keys in node 1 and node 2, vice versa.
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
chmod 600 ~/.ssh/id_rsa
chmod 644 ~/.ssh/id_rsa.pub

Test from both the nodes:


grid@node1: ssh node2 hostname
Expected: node2
grid@node1: ssh node2 date

grid@node2: ssh node1 hostname


Expected: node2
grid@node2:ssh node1 date
#####################################################################################
Initializing the Installer:
grid@node1: cd /u01/app/[Link]/grid$

Note: Copy the ZIP into the Grid Home / SOLARIS.SPARC64_193000_grid_home.zip into
SOLARIS.SPARC64_193000_grid_home.zip

grid@node1:/u01/app/[Link]/grid$ unzip SOLARIS.SPARC64_193000_grid_home.zip

grid@node1:/u01/app/[Link]/grid$ ./[Link]

Apply Patch:
Note: Create a new directory and upload patches.
grid@node1: mkdir /u01/app/patches
grid@node1:cd /u01/app/patches$

chown -R grid:oinstall /u01/app/patches


chmod -R 775 /u01/app/patches

Note: 19.3 is the original 19c Grid software, RU is the collection of fixes, and OPatch is the tool
used to apply those fixes. The OPatch utility ZIP and Grid Infrastructure Release Update (RU) ZIP
were placed in /u01/app/patches.

Note: First, back up the existing OPatch directory from the Grid Home:
mv /u01/app/[Link]/grid/OPatch /u01/app/[Link]/grid/OPatch_old

Extract the new OPatch utility:


unzip p6880880_190000_SOLARIS64.zip

Note: Copy the new OPatch utility to the Grid Home:


cp -R OPatch /u01/app/[Link]/grid/

Extract the Grid Infrastructure RU patch:


unzip p33803476_190000_SOLARIS64.zip

cd /u01/app/[Link]/grid
./[Link] -applyRU /u01/app/patches/33803476
Note: The -applyRU option applies the Release Update during the initial Grid Infrastructure installation.
This ensures that Grid Infrastructure is installed with the required fixes and updates instead of installing
the original [Link] base software first.
Note: Next & Add
Note: Ignore all and Install
3. Installation of Oracle database
Upload the Database Installation file and execute the Database installer along with the latest available
patch.

oracle@node1:/u01/app/oracle/product/[Link]/dbhome_1$

unload the file and unzip it.

Note: Set the required permissions on the Oracle Database Home:


chmod -R 755 /u01/app/oracle/product/[Link]/dbhome_1
cd /u01/app/oracle/product/[Link]/dbhome_1

mv OPatch OPatch_old

cp -R /u01/app/patches/OPatch .

./runInstaller -applyRU /u01/app/patches/33803476


4. Database Creation
Initialize Database Configuration Assistant Run the Database Configuration Assistant using the below
command after Database Software Installation is completed.

oracle@node1:~ DBCA

You might also like