Install

11gR2 Silent Install errors with [SEVERE] – Invalid My Oracle Support credentials

While performing  11gR2 RAC Database Software installation with response file (silent mode), I got this error.

[SEVERE] - Invalid My Oracle Support credentials

I was using default response files for performing this installation. Searching on MOS (My Oracle Support ), I got a note indicating that following parameter need’s to be specified

MYORACLESUPPORT_USERNAME = 

MYORACLESUPPORT_PASSWORD =

I provided a dummy value for these two paramters but the installation again failed with same errors. Then I gave correct credentials and tried again, this time installation was succesful. My initial thought was ” Is Oracle forcing people to have valid MOS account for performing installation” But this couldn’t be true as I had earlier done GUI installation without providing these credentials. It was clear that there was some other parameter which controlled this behavior. So as to diagnose it , I created a response file using GUI (Un checking the check box for my oracle support credentials) . This time response file had two additional parameters

#------------------------------------------------------------------------------
# Specify whether to enable the user to set the password for
# My Oracle Support credentials. The value can be either true or false.
# If left blank it will be assumed to be false.
#
# Example    : SECURITY_UPDATES_VIA_MYORACLESUPPORT=true
#------------------------------------------------------------------------------
SECURITY_UPDATES_VIA_MYORACLESUPPORT=false

#------------------------------------------------------------------------------
# Specify whether user wants to give any proxy details for connection.
# The value can be either true or false. If left blank it will be assumed
# to be false.
#
# Example    : DECLINE_SECURITY_UPDATES=false
#------------------------------------------------------------------------------
DECLINE_SECURITY_UPDATES=true

We can see that DECLINE_SECUIRTY_UPDATES value is changed from default value of false to true.  From 11.2 docs

DECLINE_SECURITY_UPDATES
If the direct connection is unavailable, set this parameter to false if you do not want to configure Oracle Configuration Manager, or do not want to provide any proxy details for the connection. The default is False.

If you do not set MYORACLESUPPORT_USERNAME to any value and you set this parameter to true, the Oracle Configuration Manager is not configured.

So to workaround this problem, we need to set DECLINE_SECURITY_UPDATES=true

11gR2: CVU needs SCAN Listeners’ Manual Startup During Grid-Infrastructure Configuration

During configuration phase of Grid Infrastructure for cluster, CVU failed while performing post-checks.
Following message is displaced in the Installation Log file:

<span style="font-size: small;"><span style="font-family: arial,helvetica,sans-serif;">Checking Single Client Access Name (SCAN)...</span></span>

<span style="font-size: small;"><span style="font-family: arial,helvetica,sans-serif;">WARNING:
<strong>PRVF-5056</strong> : Scan Listener "LISTENER" not running</span></span>

<span style="font-size: small;"><span style="font-family: arial,helvetica,sans-serif;">Checking name resolution setup for "scan-test.abc.com"...</span></span>

<span style="font-size: small;"><span style="font-family: arial,helvetica,sans-serif;">Verification of SCAN VIP and Listener setup failed</span></span>

The LISTENER from Grid Infrastructure home is running fine:

$ ps -eaf | grep tns

<span style="font-size: small;"><span style="font-family: arial,helvetica,sans-serif;">/u01/app/grid_11.2/GridInfra/bin/tnslsnr LISTENER -inherit</span></span>

Same error is observerd by manually runnig CVU as:

$ cluvfy comp scan

<span style="font-size: small;"><span style="font-family: arial,helvetica,sans-serif;">Verifying scan
Checking Single Client Access Name (SCAN)...</span></span>

<span style="font-size: small;"><span style="font-family: arial,helvetica,sans-serif;">WARNING:
<strong>PRVF-5056 </strong>: Scan Listener "LISTENER" not running</span></span>

<span style="font-size: small;"><span style="font-family: arial,helvetica,sans-serif;">Checking name resolution setup for "scan-test.abc.com"...
Verification of SCAN VIP and Listener setup failed
Verification of scan was unsuccessful on all the specified nodes.</span></span>

Checking the status of SCAN using SRVCTL gives correct results:

$ srvctl config scan

SCAN name: scan-test.abc.com, Network: 1/165.101.124.0/255.255.254.0/eth0
<span style="font-size: small;">SCAN VIP name: scan1, IP: /scan-test.abc.com/165.101.125.204
SCAN VIP name: scan2, IP: /scan-test.abc.com/165.101.125.235
SCAN VIP name: scan3, IP: /scan-test.abc.com/165.101.125.180</span>

Which shows that the SCAN is configured properly.

When I tried to start the SCAN Listener manually as:

$ srvctl start scan_listener

It showed the following results:

node1:
====

<span style="font-size: small;">oracle 379 1 0 07:53 ? 00:00:00 /u01/app/grid_11.2/GridInfra/bin/tnslsnr LISTENER_SCAN1 -inherit
oracle 401 1 0 07:53 ? 00:00:00 /u01/app/grid_11.2/GridInfra/bin/tnslsnr LISTENER_SCAN3 -inherit</span>

node2:
====

<span style="font-size: small;"><span style="font-family: arial,helvetica,sans-serif;">oracle 11726 1 0 07:53 ? 00:00:00 /u01/app/grid_11.2/GridInfra/bin/tnslsnr LISTENER_SCAN2 -inherit</span></span>

$ srvctl config scan_listener

<span style="font-size: small;">SCAN Listener LISTENER_SCAN1 exists. Port: TCP:1521
SCAN Listener LISTENER_SCAN2 exists. Port: TCP:1521
SCAN Listener LISTENER_SCAN3 exists. Port: TCP:1521</span>

After this, I clicked at the retry button for the CVU post checks and this time it succeeded.
Though it worked fine after this, but still not sure why I have to manually start the SCAN-Listeners !!!!!

Cheers!!!!

Link:11gR2 RAC installation steps on OEL4

If you are looking for steps for 11gR2 RAC installation, you can refer to this article by Rajeev Ramdas at Dbastreet.com. Article lists down steps for installing 11gR2 RAC on 64 bit Oracle Enterprise Linux 4 (OEL4) using ASM for storage. As Raw devices are no longer supported, OCR and Voting Disks are also stored on ASM. Yes, this is one more cool New Feature available in 11gR2.

11gR2 Database Installation with ASM on OEL5

I will be listing down steps for 11g Release 2 installation on Linux x86. There has been few changes incorporated in 11gR2 which must be given due consideration before starting installation. ASM instance now runs from new Oracle Home called Grid Infrastructure.

If you wish to use ASM for storing database files, then you should install first Oracle grid infrastructure for a standalone server. It is also required if you wish to use Oracle Restart feature (Provides for automatic restart of DB and other components after a hardware or software failure or whenever your database host computer restarts) for single instance.

Environment used for this setup
Operating System – Oracle Enterprise Linux Release 5(OEL5) on Vmware
Physical Ram – 1Gb

Asmlib for labeling ASM Disks.Refer to following OTN article for configuring asmlib and creating disks.

Software can be downloaded from OTN at following link

Oracle Database 11g Release 2 Grid Infrastructure (11.2.0.1.0) for Linux x86

Oracle Database 11g Release 2 (11.2.0.1.0) for Linux x86

All the pre-requisites for installation can be found here
http://download.oracle.com/docs/cd/E11882_01/install.112/e10840/pre_install.htm

I have tried to shorten it by keeping things which are relevant to our setup.

Check Packages

binutils-2.17.50.0.6
compat-libstdc++-33-3.2.3
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-common-2.5
glibc-devel-2.5
glibc-headers-2.5
kernel-headers-2.6.18
ksh-20060214
libaio-0.3.106
libaio-devel-0.3.106
libgcc-4.1.2
libgomp-4.1.2
libstdc++-4.1.2
libstdc++-devel-4.1.2
make-3.81
sysstat-7.0.2
unixODBC-2.2.11
unixODBC-devel-2.2.11

If you have yum installed on your machine, then it is very easy to install the packages. You can copy the list of packages in a text file and insert ‘yum install ‘ in beginning and execute it as root. This will install any missing packages. To know more about setting up yum, refer to my previous post

If Kernel parameters are not setup correctly, Oracle 11g OUI provides you  a fixup script and also ability to resume the installation process without need to re-run the earlier steps. Please refer to article here

Users,Roles and Groups for Installation

osdba group for ASM – Membership in the OSDBA group allows access to the files managed by Automatic Storage Management. It can be same as database osdba group. We will be using group dba in our setup.
OSASM group – Members of the OSASM group can use SQL to connect to an Automatic Storage Management instance as SYSASM using operating system authentication. The SYSASM privileges permit mounting and dismounting disk groups, and other storage administration tasks. SYSASM privileges provide no access privileges on an RDBMS instance. We will use asmadmin

OSOPER group – Similar to SYSOPER privilege in RDBMS, this is used for limited privileges like starting up and stopping the Oracle ASM instance. We will not be using separate group for it, will be selecting dba in our setup

oinstall – This is similar to previous releases, and used for Oracle Inventory group

I am using oracle user for installing Grid Infrastructure and Oracle Database Software. You can have a separate user say oragrid with oinstall membership and permission on oracle inventory directory.

Create Base directory where software will be installed. I used /u02/app/oracle

Add users and groups

/usr/sbin/groupadd -g 501 dba
/usr/sbin/groupadd -g 504 asmadmin
/usr/sbin/groupadd oinstall

/usr/sbin/useradd -u 502 -g oinstall -G dba,asmadmin oracle

Add following entries to /etc/security/limits.conf

oracle              soft    nproc   2047
oracle              hard    nproc   16384
oracle              soft    nofile  1024
oracle              hard    nofile  65536

Add or edit the following line in the /etc/pam.d/login file, if it does not already exist:

session    required     pam_limits.so

Add/replace following entries in /etc/sysctl.conf

fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 536870912
kernel.shmmni = 4096
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

Execute following command as root to change the current kernel parameters:

/sbin/sysctl -p

Copy following in your login profile.

if [ $USER = "oracle" ]; then
        if [ $SHELL = "/bin/ksh" ]; then
              ulimit -p 16384
              ulimit -n 65536
        else
              ulimit -u 16384 -n 65536
        fi
umask 022
fi

We need to start with Grid Infrastructure installation. Unzip the contents and execute  runInstaller . This would require 2.8Gb of disk space.

$./runInstaller

Please click on image below for  displaying screenshots for 11gR2 Grid Infrastructure installation

Grid_infra_install

Execute root.sh from Grid ORACLE_HOME as root user

The following environment variables are set as:
    ORACLE_OWNER= oracle
    ORACLE_HOME=  /u02/app/oracle/product/11.2.0/grid

Enter the full pathname of the local bin directory: [/usr/local/bin]:
The file "dbhome" already exists in /usr/local/bin.  Overwrite it? (y/n)
[n]: y
   Copying dbhome to /usr/local/bin ...
The file "oraenv" already exists in /usr/local/bin.  Overwrite it? (y/n)
[n]: y
   Copying oraenv to /usr/local/bin ...
The file "coraenv" already exists in /usr/local/bin.  Overwrite it? (y/n)
[n]: y
   Copying coraenv to /usr/local/bin ...

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.sh script.
Now product-specific root actions will be performed.
2009-09-02 05:07:26: Checking for super user privileges
2009-09-02 05:07:26: User has super user privileges
2009-09-02 05:07:26: Parsing the host name
Using configuration parameter file: /u02/app/oracle/product/11.2.0/grid/crs/install/crsconfig_params
Creating trace directory
LOCAL ADD MODE
Creating OCR keys for user 'oracle', privgrp 'oinstall'..
Operation successful.
CRS-4664: Node db11g successfully pinned.
Adding daemon to inittab
CRS-4123: Oracle High Availability Services has been started.
ohasd is starting

db11g     2009/09/02 05:09:24     /u02/app/oracle/product/11.2.0/grid/cdata/db11g/backup_20090902_050924.olr
Successfully configured Oracle Grid Infrastructure for a Standalone Server
Updating inventory properties for clusterware
Starting Oracle Universal Installer...

Checking swap space: must be greater than 500 MB.   Actual 2399 MB    Passed
The inventory pointer is located at /etc/oraInst.loc
The inventory is located at /u01/app/oraInventory
'UpdateNodeList' was successful.

To install Database software, Unzip the contents of both the zip files and execute runInstaller . Ensure you have 3.95Gb of free disk space

$./runInstaller

Please click on image for  displaying screenshots for 11gR2 Database installation .

11g_db_install

You are done 🙂

Component

Value /Commands to Check

Physical RAM >1 Gb

1Gb
grep MemTotal /proc/meminfo

Swap should be 1.5 times the RAM.

In our case it will be 1.5G
grep SwapTotal /proc/meminfo

/dev/shm to be configured to use MEMORY_TARGET

# df -h /dev/shm/

1Gb of /tmp space

df -h /tmp

Disk space Requirement for Grid Infrastructure Software (Enterprise edition)

2.95 Gb

Disk space Requirement for Database Software (Enterprise edition)

3.95 Gb

Packages for OEL5

binutils-2.17.50.0.6
compat-libstdc++-33-3.2.3
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-common-2.5
glibc-devel-2.5
glibc-headers-2.5
kernel-headers-2.6.18
ksh-20060214
libaio-0.3.106
libaio-devel-0.3.106
libgcc-4.1.2
libgomp-4.1.2
libstdc++-4.1.2
libstdc++-devel-4.1.2
make-3.81
sysstat-7.0.2
unixODBC-2.2.11
unixODBC-devel-2.2.11

11gR2:What if Oracle gives you Kernel parameter fixup script

11gR2 database installation comes up with new  feature known as Installation Fixup scripts which aids you during Installation phase.  If a pre-requisite check fails, then it provides a click and generate fixup script option and then points you to script location which then need’s to be executed  with root permission. As per doc’s , it takes care of following things

– Checks and sets kernel parameters to values required for successful installation, including:Shared memory parameters,Semaphore parameters and Open file descriptor and UDP send/receive parameters

– Sets permissions on the Oracle Inventory directory.

– Reconfigures primary and secondary group memberships for the installation owner, if necessary, for the Oracle Inventory directory, and for the operating system privileges groups.

– Sets up virtual IP and private IP addresses in /etc/hosts.

– Sets shell limits to required values, if necessary.

– Installs the Cluster Verification Utility packages (cvuqdisk rpm).

Below are screenshot for error’s encountered as a result of missing kernel settings in sysctl.conf file

11g_install_fixup1

11g_install_fixup2

Below is output of running the script as root

cat orarun.log
This is the log file for orarun script
Timestamp: 090109150435
Response file being used is :/tmp/CVU_11.2.0.1.0_oracle/fixup.response
Enable file being used is :/tmp/CVU_11.2.0.1.0_oracle/fixup.enable
Setting Kernel Parameters...
file-max in response file:6815744
file-max in /etc/sysctl.conf:6815744
The value for file-max in response file is not greater than value for file-max in /etc/sysctl.conf file. Hence not changing it.
file-max for current session:6553600
ip_local_port_range in response file:9000 65500
ip_local_port_range in /etc/sysctl.conf:9000 65000
ip_local_port_range for current session:1024 65000
aio-max-nr in response file:1048576
aio-max-nr in /etc/sysctl.conf:1048576
The value for aio-max-nr in response file is not greater than value for aio-max-nr in /etc/sysctl.conf file. Hence not changing it.
aio-max-nr for current session:65536

Before running the script, I had modified the file without executing sysctl -p to implement the changes.  Fixup script log  shows that it checks the file again and replaces parameter if required and then executes sysctl command to  make changes persistent.

Failed dependencies error: lib* needed by unixODBC-devel-2.2.11-7.1.i386

While trying to install 11gR1 on Oracle Enterprise Linux (OEL5), runInstaller failed for unixODBC* packages. To solve the issue , I started following OTN article

http://www.oracle.com/technology/pub/articles/smiley-11gr1-install.html

When trying to install RPM from CD3, faced following errors for unixODBC* rpm

#rpm -ivh compat-libstdc++-33* libaio-devel* sysstat* unixODBC*
warning: compat-libstdc++-33-3.2.3-61.i386.rpm: Header V3 DSA signature: NOKEY, key ID 1e5e0159
error: Failed dependencies:
libboundparam.so.1 is needed by unixODBC-devel-2.2.11-7.1.i386
libesoobS.so.1 is needed by unixODBC-devel-2.2.11-7.1.i386
libgtrtst.so.1 is needed by unixODBC-devel-2.2.11-7.1.i386
libmimerS.so.1 is needed by unixODBC-devel-2.2.11-7.1.i386
libnn.so.1 is needed by unixODBC-devel-2.2.11-7.1.i386
libodbccr.so.1 is needed by unixODBC-devel-2.2.11-7.1.i386
libodbcdrvcfg1S.so.1 is needed by unixODBC-devel-2.2.11-7.1.i386
libodbcdrvcfg2S.so.1 is needed by unixODBC-devel-2.2.11-7.1.i386
libodbcinst.so.1 is needed by unixODBC-devel-2.2.11-7.1.i386
libodbcminiS.so.1 is needed by unixODBC-devel-2.2.11-7.1.i386
libodbcnnS.so.1 is needed by unixODBC-devel-2.2.11-7.1.i386
libodbctxtS.so.1 is needed by unixODBC-devel-2.2.11-7.1.i386
liboplodbcS.so.1 is needed by unixODBC-devel-2.2.11-7.1.i386
liboraodbcS.so.1 is needed by unixODBC-devel-2.2.11-7.1.i386
libsapdbS.so.1 is needed by unixODBC-devel-2.2.11-7.1.i386
libtdsS.so.1 is needed by unixODBC-devel-2.2.11-7.1.i386
libtemplate.so.1 is needed by unixODBC-devel-2.2.11-7.1.i386
unixODBC = 2.2.11-7.1 is needed by unixODBC-devel-2.2.11-7.1.i386
libodbc.so.1 is needed by unixODBC-kde-2.2.11-7.1.i386
libodbcinst.so.1 is needed by unixODBC-kde-2.2.11-7.1.i386
unixODBC = 2.2.11-7.1 is needed by unixODBC-kde-2.2.11-7.1.i386

Issue is because of missing rpm unixODBC-2.2.11-7.1.i386.rpm which is present in CD2 . Install it first and then the other RPM i.e
unixODBC-devel-2.2.11-7.1.i386 and unixODBC-kde-2.2.11-7.1.i386
can be installed without errors

Mount CD2
#cd /media/E*/Server
#rpm -ivh unixODBC-2.2.11-7.1.i386.rpm

Once rpm is successfully installed, mount CD3 and install unixODBC* rpm

Mount CD3
#cd /media/E*/Server
#rpm -ivh unixODBC*

Update
=====

Frits Hoogland commented on the post and pointed me to Oracle yum (Yellowdog updater modified) for taking care of dependencies. I had heard of yum but I had never tried it earlier. But as I checked today, it is very easy to setup. Process is listed at http://public-yum.oracle.com/
I am documenting the steps for setting it up on OEL5

<span style="font-family: arial, helvetica, sans-serif;">#</span> cd /etc/yum.repos.d
# wget http://public-yum.oracle.com/public-yum-el5.repo

Edit the copied file based on your OEL5 release and set enabled=1. e.g

cat /etc/enterprise-release
Enterprise Linux Enterprise Linux Server release 5.3 (Carthage)

[el5_u3_base]
name=Enterprise Linux $releasever U3 - $basearch - base
baseurl=http://public-yum.oracle.com/repo/EnterpriseLinux/EL5/3/base/$basearch/
gpgkey=http://public-yum.oracle.com/RPM-GPG-KEY-oracle-el5
gpgcheck=1
enabled=1

To check

[rroot@db11g ~]# yum list ocfs2
Loaded plugins: security
Error: No matching Packages to list

ocfs2 packages are not available. Let’s install it now

[root@db11g ~]# yum install ocfs2
Loaded plugins: security
Setting up Install Process
Parsing package install arguments
Resolving Dependencies
--> Running transaction check
---> Package ocfs2-2.6.18-128.el5.i686 0:1.2.9-1.el5 set to be updated
--> Processing Dependency: ocfs2-tools >= 1.2.6 for package: ocfs2-2.6.18-128.el5
--> Running transaction check
---> Package ocfs2-tools.i386 0:1.2.7-1.el5 set to be updated
--> Finished Dependency Resolution

Dependencies Resolved

================================================================================
 Package                   Arch      Version             Repository        Size
================================================================================
Installing:
 ocfs2-2.6.18-128.el5      i686      1.2.9-1.el5         el5_u3_base      272 k
Installing for dependencies:
 ocfs2-tools               i386      1.2.7-1.el5         el5_u3_base      1.1 M

Transaction Summary
================================================================================
Install      2 Package(s)
Update       0 Package(s)
Remove       0 Package(s)         

Total download size: 1.4 M
Is this ok [y/N]: y
Downloading Packages:
(1/2): ocfs2-2.6.18-128.el5-1.2.9-1.el5.i686.rpm         | 272 kB     00:03
(2/2): ocfs2-tools-1.2.7-1.el5.i386.rpm                  | 1.1 MB     00:08
--------------------------------------------------------------------------------
Total                                           102 kB/s | 1.4 MB     00:13
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing     : ocfs2-tools                                       [1/2]
  Installing     : ocfs2-2.6.18-128.el5                              [2/2] 

Installed: ocfs2-2.6.18-128.el5.i686 0:1.2.9-1.el5
Dependency Installed: ocfs2-tools.i386 0:1.2.7-1.el5
Complete!

It’s cool..:)
There is one more method using which all the validated oracle packages can be installed during OEL5 installation.This also creates the oracle user/groups, sets up sysctl.conf, limits.conf, etc. Check out the article
here