February 12, 2009

Ignore pre-requisites and the Silent Install

14th February 2009
Ignore pre-requisites check in Oracle Universal Installer
If you're 100% sure that your system fits all the operating system prerequisites prior to start an Oracle installation but the Oracle Universal Installer (OUI) keeps bugging you (attention that OUI prerequisite check is a "friend"!) and you want to move on with you installation just call the runinstaller without that check (in Linux) just type in (as "oracle" user):
./runinstaller -ignoreSysPrereqs

A situation where you might want to do this is when you want to trick a Oracle 10g installer to believe that your Linux 5 is actually from version 4 (and you even twicked the release file for instance: /etc/redhat-release) but the installer keeps bugging you - a common situation where this happens its when you install a patchset.

12th February 2009

Who's afraid of Silent Install?
Almost every Oracle Configuration Assistant and installer has a silent or non-graphical version. When you get used to it, you will feel that the classical "NEXT-NEXT-NEXT..." is a waste of time.

Here's an example of a situation where you will have to use silent install or otherwise you'll get mad:

Remote installations often use a Windows PC to connect to the database server, through an SSH client like puTTY. When you want to install or configure something through a graphical tool, you must export the DISPLAY environment variable to the PC's IP address where you have a X Server installed.

Let's imagine that your remote connection to the Windows PC fails and after a minute or two you're back. The X Server might blank out you Oracle Installer or Configuration java windows and you are left in the middle of nowhere. Not knowing where you're at you will have to resume installation and if (God forbids!) you happened to be in the middle of a Clusterware installation you have to unwind your installation, delete a bunch of files and get back to the install process again.

The solution to this scenario: silent install.

The syntax it's very straingh forward:
./runInstaller -silent -responseFile  my_parameters_for_db_install.rsp

The last part of the command is called "Response File" and you can find a sample one at every installation media inside the "response" folder. There are sample response files for every graphical tool like netca or dbca and installation types like standard, enterprise, personal, custom and even patchset response files or clusterware.

To call a configuration assistant in silent mode here's an example for the VIPCA (Virtual IP Configuration Assistan):
./vipca -silent -nodelist node1,node2 -vipfile /opt/oracle/crs/bin/vipfile -orahome /opt/oracle/crs

Where VIPFILE is:
node1-vip=192.20.150.68/192.20.0.0/eth0
node2-vip=192.20.150.69/192.20.0.0/eth0

You can also do de-installations with silent install.

Here's another example of a simple response file for an Oracle 10g clusterware installation (comments begin with "#"):
RESPONSEFILE_VERSION=2.2.1.0.0
#------------------------------------------------------------------------------
UNIX_GROUP_NAME=oinstall
#------------------------------------------------------------------------------
FROM_LOCATION="../stage/products.xml"
ORACLE_HOME="/opt/oracle/crs"
ORACLE_HOME_NAME="OraClusterware10ghome1"
TOPLEVEL_COMPONENT={"oracle.crs","10.2.0.1.0"}
SHOW_SPLASH_SCREEN=false
SHOW_WELCOME_PAGE=false
SHOW_NODE_SELECTION_PAGE=false
SHOW_SUMMARY_PAGE=false
SHOW_INSTALL_PROGRESS_PAGE=false
SHOW_CONFIG_TOOL_PAGE=false
SHOW_XML_PREREQ_PAGE=false
SHOW_ROOTSH_CONFIRMATION=true
SHOW_END_SESSION_PAGE=false
SHOW_EXIT_CONFIRMATION=false
NEXT_SESSION=false
NEXT_SESSION_ON_FAIL=false
SHOW_DEINSTALL_CONFIRMATION=false
SHOW_DEINSTALL_PROGRESS=false
RESTART_SYSTEM=false
RESTART_REMOTE_SYSTEM=false
SHOW_END_OF_INSTALL_MSGS=false

#------------------------------------------------------------------------------
#Name       : COMPONENT_LANGUAGES
#------------------------------------------------------------------------------
COMPONENT_LANGUAGES={"en"}

#------------------------------------------------------------------------------
#Name       : s_clustername
#------------------------------------------------------------------------------
s_clustername="crs"

#------------------------------------------------------------------------------
#Name       : sl_tableList
#Description: Contains a list of public node names, private node names, and
#             virtual hostnames to be part of the cluster.
#
#             The list is a comma-separated list of nodes.  Each entry in the
#             list should be a colon-separated string that contains 5 fields.
#             The fields should be ordered as follows:
#             1. The first field is for public node name.
#             2. The 2nd field is for private node name,
#             3. The 3rd field is for virtual host name
#             4. The 4th & 5th fields should not be modified, and should remain
#                as "N:Y"
#
#Example    : {"n1:n1-priv:n1-vip:N:Y","n2:n2-priv:n2-vip:N:Y"}
#------------------------------------------------------------------------------
sl_tableList={"node1:node1-priv:node1-vip:N:Y","node2:node2-priv:node2-vip:N:Y"}

#------------------------------------------------------------------------------
#Name       : ret_PrivIntrList
#Description: Contains information about the network interfaces and a
#             designation of how the Oracle Clusterware should use each
#             interface.
#                a. 1 = Public
#                b. 2 = Private
#                c. 3 = Do Not Use
#------------------------------------------------------------------------------
ret_PrivIntrList={"eth0:172.18.0.0:1","eth1:191.138.147.0:2")

#------------------------------------------------------------------------------
#Name       : n_storageTypeOCR
#Description: Represents the redundancy characteristics of the disk used for
#             storing the OCR.
#
#             This entry is a number that can take on the values of 1 or 2.
#             These values have the following meaning:
#             a. 1 = Not Redundant.  In this case, you should specify two disks
#                for the OCR - one for the primary and one for the OCR Mirror.
#             b. 2 = Externally Redundant.  This disk you are placing the OCR
#                on already has some form of external redundancy solution. In
#                this case, you need not specify an OCR mirror.
#Example    : n_storageTypeOCR = 1
#------------------------------------------------------------------------------
n_storageTypeOCR=2

#------------------------------------------------------------------------------
#Description: The location of the OCR.
#------------------------------------------------------------------------------

s_ocrpartitionlocation="/OCFS2_mountpoint/oracrs/ocrfile"

#------------------------------------------------------------------------------
#Description: The location of the OCR Mirror.
#------------------------------------------------------------------------------
s_ocrMirrorLocation=""

#------------------------------------------------------------------------------
#Description: Represents the redundancy characteristics of the disk used for
#             storing the voting disk(s).
#
#             This entry is a number that can take on the values of 1 or 2.
#             These values have the following meaning:
#             a. 1 = Not Redundant.  In this case, you should specify three
#                voting disks to eliminate the possibility of a single point
#                of failure.
#             b. 2 = Externally Redundant.  This disk you are placing the
#                voting disk on already has some form of external redundancy
#                solution. In this case, you need only use one voting disk.
#Example    : n_storageTypeVDSK = 1
#------------------------------------------------------------------------------
n_storageTypeVDSK=2

#------------------------------------------------------------------------------
#Description: The location of your first voting disk.

s_votingdisklocation="/OCFS2_mountpoint/oracrs/votingdisk"

1 comment: