First, download and apply the patch patch: 6880880 from support.oracle.com or from https://updates.oracle.com/download/6880880.html

Download the latest PSU from Doc ID 756671.1. Unzip the PSU, cd to the directory, and check for one-off patch conflict detection and resolution.

[oracle@dal66a 20299023]$ opatch prereq CheckConflictAgainstOHWithDetail -ph ./
Oracle Interim Patch Installer version 12.1.0.1.7
Copyright (c) 2015, Oracle Corporation.  All rights reserved.

PREREQ session

Oracle Home       : /u01/app/oracle/product/12.1.0/dbhome_2
Central Inventory : /u01/app/oraInventory
   from           : /u01/app/oracle/product/12.1.0/dbhome_2/oraInst.loc
OPatch version    : 12.1.0.1.7
OUI version       : 12.1.0.2.0
Log file location : /u01/app/oracle/product/12.1.0/dbhome_2/cfgtoollogs/opatch/opatch2015-05-16_17-46-46PM_1.log

Invoking prereq "checkconflictagainstohwithdetail"

Prereq "checkConflictAgainstOHWithDetail" passed.

OPatch succeeded.
[oracle@dal66a 20299023]$ opatch lsinv
Oracle Interim Patch Installer version 12.1.0.1.7
Copyright (c) 2015, Oracle Corporation.  All rights reserved.


Oracle Home       : /u01/app/oracle/product/12.1.0/dbhome_2
Central Inventory : /u01/app/oraInventory
   from           : /u01/app/oracle/product/12.1.0/dbhome_2/oraInst.loc
OPatch version    : 12.1.0.1.7
OUI version       : 12.1.0.2.0
Log file location : /u01/app/oracle/product/12.1.0/dbhome_2/cfgtoollogs/opatch/opatch2015-05-16_17-46-58PM_1.log

Lsinventory Output file location : /u01/app/oracle/product/12.1.0/dbhome_2/cfgtoollogs/opatch/lsinv/lsinventory2015-05-16_17-46-58PM.txt

--------------------------------------------------------------------------------
Local Machine Information::
Hostname: dal66a
ARU platform id: 226
ARU platform description:: Linux x86-64

Installed Top-level Products (1): 

Oracle Database 12c                                                  12.1.0.2.0
There are 1 products installed in this Oracle Home.


There are no Interim patches installed in this Oracle Home.


--------------------------------------------------------------------------------

OPatch succeeded.

Make sure that all databases are down from the Oracle Home that you are patching. Also, ensure that the database listeners are down from the same Oracle Home; otherwise, you will encounter the following error from opatch as you attempt to apply the PSU:

Prerequisite check "CheckActiveFilesAndExecutables" failed.
The details are:


Following executables are active :
/u01/app/oracle/product/12.1.0/dbhome_2/bin/oracle
/u01/app/oracle/product/12.1.0/dbhome_2/lib/libclntsh.so.12.1
UtilSession failed: Prerequisite check "CheckActiveFilesAndExecutables" failed.
Log file location: /u01/app/oracle/product/12.1.0/dbhome_2/cfgtoollogs/opatch/opatch2015-05-16_17-47-06PM_1.log

OPatch failed with error code 73

Shutdown all databases and listeners that you are applying the patch for

SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> exit
Disconnected from Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production
With the Partitioning, OLAP, Advanced Analytics and Real Application Testing options
[oracle@dal66a 20299023]$ ps -ef |grep -i tns
root        15     2  0 14:31 ?        00:00:00 [netns]
oracle    4067     1  0 16:45 ?        00:00:00 /u01/app/oracle/product/12.1.0/dbhome_2/bin/tnslsnr LISTENER -inherit
oracle    4074     1  0 16:45 ?        00:00:00 /u01/app/oracle/product/12.1.0/dbhome_2/bin/tnslsnr DBATOOLS -inherit
oracle    6046  3362  0 17:48 pts/0    00:00:00 grep -i tns
[oracle@dal66a 20299023]$ lsnrctl stop dbatools

LSNRCTL for Linux: Version 12.1.0.2.0 - Production on 16-MAY-2015 17:48:12

Copyright (c) 1991, 2014, Oracle.  All rights reserved.

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=dal66a)(PORT=1522)))
The command completed successfully


[oracle@dal66a 20299023]$ lsnrctl stop listener

LSNRCTL for Linux: Version 12.1.0.2.0 - Production on 16-MAY-2015 17:48:22

Copyright (c) 1991, 2014, Oracle.  All rights reserved.

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=dal66a)(PORT=1521)))
The command completed successfully

Now we can apply the latest PSU

[oracle@dal66a 20299023]$ opatch apply
Oracle Interim Patch Installer version 12.1.0.1.7
Copyright (c) 2015, Oracle Corporation.  All rights reserved.


Oracle Home       : /u01/app/oracle/product/12.1.0/dbhome_2
Central Inventory : /u01/app/oraInventory
   from           : /u01/app/oracle/product/12.1.0/dbhome_2/oraInst.loc
OPatch version    : 12.1.0.1.7
OUI version       : 12.1.0.2.0
Log file location : /u01/app/oracle/product/12.1.0/dbhome_2/cfgtoollogs/opatch/opatch2015-05-16_17-48-29PM_1.log

Verifying environment and performing prerequisite checks...
OPatch continues with these patches:   19769480  20299023  

Do you want to proceed? [y|n]
y
User Responded with: Y
All checks passed.
Provide your email address to be informed of security issues, install and
initiate Oracle Configuration Manager. Easier for you if you use your My
Oracle Support Email address/User Name.
Visit http://www.oracle.com/support/policies.html for details.
Email address/User Name: 

You have not provided an email address for notification of security issues.
Do you wish to remain uninformed of security issues ([Y]es, [N]o) [N]:  Y



Please shutdown Oracle instances running out of this ORACLE_HOME on the local system.
(Oracle Home = '/u01/app/oracle/product/12.1.0/dbhome_2')


Is the local system ready for patching? [y|n]
y
User Responded with: Y
Backing up files...
Applying sub-patch '19769480' to OH '/u01/app/oracle/product/12.1.0/dbhome_2'

Patching component oracle.rdbms.deconfig, 12.1.0.2.0...

Patching component oracle.xdk, 12.1.0.2.0...

Patching component oracle.tfa, 12.1.0.2.0...

Patching component oracle.rdbms.util, 12.1.0.2.0...

Patching component oracle.rdbms, 12.1.0.2.0...

Patching component oracle.rdbms.dbscripts, 12.1.0.2.0...

Patching component oracle.xdk.parser.java, 12.1.0.2.0...

Patching component oracle.oraolap, 12.1.0.2.0...

Patching component oracle.xdk.rsf, 12.1.0.2.0...

Patching component oracle.rdbms.rsf, 12.1.0.2.0...

Patching component oracle.rdbms.rman, 12.1.0.2.0...

Patching component oracle.ldap.rsf, 12.1.0.2.0...

Patching component oracle.ldap.rsf.ic, 12.1.0.2.0...

Verifying the update...
Applying sub-patch '20299023' to OH '/u01/app/oracle/product/12.1.0/dbhome_2'
ApplySession: Optional component(s) [ oracle.has.crs, 12.1.0.2.0 ]  not present in the Oracle Home or a higher version is found.

Patching component oracle.tfa, 12.1.0.2.0...

Patching component oracle.rdbms.deconfig, 12.1.0.2.0...

Patching component oracle.rdbms.rsf, 12.1.0.2.0...

Patching component oracle.rdbms, 12.1.0.2.0...

Patching component oracle.rdbms.dbscripts, 12.1.0.2.0...

Patching component oracle.rdbms.rsf.ic, 12.1.0.2.0...

Patching component oracle.ldap.rsf, 12.1.0.2.0...

Patching component oracle.ldap.rsf.ic, 12.1.0.2.0...

Verifying the update...
Composite patch 20299023 successfully applied.
Log file location: /u01/app/oracle/product/12.1.0/dbhome_2/cfgtoollogs/opatch/opatch2015-05-16_17-48-29PM_1.log

OPatch succeeded.

Let’s confirm that the PSU was successfully applied

[oracle@dal66a 20299023]$ opatch lsinventory |grep ^Patch
Patch  20299023     : applied on Sat May 16 17:49:12 CDT 2015
Patch description:  "Database Patch Set Update : 12.1.0.2.3 (20299023)"

Now let’s load the modified SQL files into the database. We need to execute Datapatch to complete the post-install SQL deployment portion of the PSU

[oracle@dal66a OPatch]$ ./datapatch -verbose
SQL Patching tool version 12.1.0.2.0 on Sat May 16 17:56:55 2015
Copyright (c) 2015, Oracle.  All rights reserved.

Log file for this invocation: /u01/app/oracle/cfgtoollogs/sqlpatch/sqlpatch_7734_2015_05_16_17_56_55/sqlpatch_invocation.log

Connecting to database...OK
Bootstrapping registry and package to current versions...done
Determining current state...done

Current state of SQL patches:
Bundle series PSU:
  ID 3 in the binary registry and not installed in the SQL registry

Adding patches to installation queue and performing prereq checks...
Installation queue:
  Nothing to roll back
  The following patches will be applied:
    20299023 (Database Patch Set Update : 12.1.0.2.3 (20299023))

Installing patches...
Patch installation complete.  Total patches installed: 1

Validating logfiles...
Patch 20299023 apply: SUCCESS
  logfile: /u01/app/oracle/cfgtoollogs/sqlpatch/20299023/18703022/20299023_apply_TOOLSDEV_2015May16_17_57_25.log (no errors)
SQL Patching tool complete on Sat May 16 17:57:31 2015

Look for future blog post on applying the same patch against the Oracle Grid Home. This is where the fun really begins as we will be leveraging opatchauto instead of opatch.


Oracle PreInstall RPM for Oracle Linux is one the biggest benefits of adopting Oracle Linux. With a single command, you can pre-configure the Oracle Linux environment for OEM 12c Agent, EBS R12, and Oracle Database 11gR2/12c installations. Not only does Oracle configure the Linux environment, but many of the best practices are incorporated in the process.

Oracle provides the PreInstall RPMs for the database on different channels from the EBS R12 or OEM 12c Agent PreInstall RPMs. For EBS and OEM 12c Agent PreInstall RPMs, you can download the PreInstall RPMs from the addons channel from the public-yum repository. Oracle provides a separate RPM for each release of OEM 12c.

http://public-yum.oracle.com/repo/OracleLinux/OL6/addons/x86_64/

2014 10 12 11 41 25

For Oracle Database PreInstall RPMs for Oracle Database 11g Release 2 and Oracle Database 12c Release 1, you can download them from the RPM from the latest channel from the public-yum repository. You will have to scroll down quite a bit; the RPMs that start with capital letters are listed above RPMs that have lower case letters.

http://public-yum.oracle.com/repo/OracleLinux/OL6/latest/x86_64/

2014 10 12 11 46 06

The location of the source RPM (.src.rpm) can be especially important for Red Hat customers who want to leverage all the hard work that Oracle has put in. Red Hat customers can download the source RPM and build their own RPM package that will work on Red Hat with the rpmbuild command.


Lot of our customers seem to be confused about the licensing of Oracle management packs. As we install and configure OEM for our customers, we tell them to be careful to leverage only the features that they are licensed for. To clarify for our customers and others, I decided to detail out when you need to pay for certain licenses and what you are allowed to execute for free if you do not want to pay (or cannot afford to pay) for licenses of Oracle management packs. To start, here’s what you are allowed to monitor without paying for licenses:

• Histograms
• Metrics
• OS statistics
• Optimizer statistics
• SQL Traces
• SQL statistics
• Service statistics
• Statspack
• System statistics
• Time model
• Wait model

Starting in Oracle Database 11g, you can cautiously leverage the CONTROL_MANAGEMENT_PACK_ACCESS initialization parameter to control access or disable the packs. This parameters accepts the following parameters:

• NONE
• DIAGNOSTIC
• DIAGNOSTIC+TUNING

In Oracle 12c Release 1 (12.1), the default value for the CONTROL_MANAGEMENT_PACK_ACCESS parameter for Oracle Enterprise Edition is “DIAGNOSTIC+TUNING”. For Standard edition, the default value is set to NONE.

Nowadays, most of Oracle Sales folks are trained to sell the Diagnostic and Tuning pack as part of every database. You should expect this from experienced Oracle Sales folks. You may even get a response for a sales person indicating how can you successfully support or maintain a business critical database without leveraging these features.

Let’s continue our discussion to talk about the Database Diagnostic Pack. Usage of the following feature require licensing the Database Diagnostics Pack:

• Active Session History (ASH)
• Automatic Database Diagnostic Monitor (ADDM)
• Automatic Workload Repository
• Blackouts
• Dynamic metric baselines
• Event history and metric history (database and host)
• Event notifications: notification methods, rules, and schedules
• Monitoring templates
• Performance monitoring (database and host)

You will also have to pay for the database diagnostic pack if you leverage any of the following database stored procedures and packages:

• DBMS_ADDM
• DBMS_ADVISOR
• DBMS_WORKLOAD_REPOSITORY

If you leverage the following view, you will also end up paying for the diagnostic pack:

• V$ACTIVE_SESSION_HISTORY view
• Views with DBA_ADVISOR_ prefix
• Views with DBA_ADDM_ prefix
• Views with DBA_HIST_ prefix

If you leverage any of the SQL scripts from the $ORACLE_HOME/rdbms/admin directory, you will be liable for the diagnostic pack:

• aawrload.sql
• addmrpti.sql
• addmrtp.sql
• ashrpt.sql
• ashrpti.sql
• awrddrpi.sql
• awrddrpt.sql
• awrextr.sql
• awrextr.sql
• awrinfo.sql
• awrload.sql
• awrrpt.sql
• awrrpti.sql
• awrsqrpi.sql
• awrsqrpt.sql
• spawrrac.sql

Usage of the following feature require the Database Tuning Pack:

• Automatic Plan Evolution of SQL Plan Management
• Automatic SQL Tuning
• Reorganize objects
• SQL Access Advisor
• SQL Monitoring
• SQL Profiles
• SQL Tuning Advisor
• SQL Tuning Sets

The Tuning Pack has a direct dependency on the Diagnostic Pack. Stated in another way, if you license the Tuning Pack, you will have to also license the Diagnostic Pack.

Similarly, the usage of any of the stored procedures or packages, views or SQL scripts will incur license of the Database Tuning Pack:

• DBMS_ADVISOR package
• DBMS_SQLTUNE package
• V$SQL_MONITOR view
• V$SQL_PLAN_MONITOR view
• sqltrpt.sql report found in the $ORACLE_HOME/rdbms/admin/ directory

Usage of the following feature require the Database Configuration Management Pack:

• Clone Database
• Clone Oracle Home
• Compare configuration
• Database and Host Configuration
• Deployments
• Patch Database and View Patch Cache
• Patch staging
• Policies
• Search configuration

If you are concerned about a potential Oracle license violation or wandering if you may be using a feature/option that you should not be, you can execute the following SQL code against your database and confirm that you have or have not used licensable features or options:


col name for a45
col description for a40 word wrapped
col feature_info for a35
set lines 266
set pages 66
select name, description, version, detected_usages,
       currently_used, first_usage_date, last_usage_date,
       feature_info
from DBA_FEATURE_USAGE_STATISTICS
where detected_usages > 0
/


Download the following RPMS:
1. openmotif21-2.1.30-11.EL5.i386.rpm –> for OEL 5 customers
openmotif21-2.1.30-11.EL6.i686.rpm –> for OEL 6 customers
2. xorg-x11-libs-compat-6.8.2-1.EL.33.0.1.i386.rpm

From:
http://oss.oracle.com/projects/compat-oracle/files/Enterprise_Linux/

The openmotif package version must be 2.1.30 (for example, openmotif-2.2.3-10.RHEL4.5 is not supported).

========================================================================================================================

1.
First install the openmotif21 RPM. openmotif21 has a dependency on the libXp rpm so do a yum install of it first. Then use the traditional rpm -ihv command to install openmotif21 RPM.

[root@ebs1 ~]# rpm -ihv openmotif21-2.1.30-11.EL5.i386.rpm
error: Failed dependencies:
     libXp.so.6 is needed by openmotif21-2.1.30-11.EL5.i386
[root@ebs1 ~]# yum install libXp
Loaded plugins: rhnplugin, security
This system is not registered with ULN.
You can use up2date --register to register.
ULN support will be disabled.
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package libXp.i386 0:1.0.0-8.1.el5 set to be updated
---> Package libXp.x86_64 0:1.0.0-8.1.el5 set to be updated
--> Finished Dependency Resolution

Dependencies Resolved

========================================================================================================================
 Package                 Arch                     Version                            Repository                    Size
========================================================================================================================
Installing:
 libXp                   i386                     1.0.0-8.1.el5                      el5_latest                    22 k
 libXp                   x86_64                   1.0.0-8.1.el5                      el5_latest                    23 k

Transaction Summary
========================================================================================================================
Install       2 Package(s)
Upgrade       0 Package(s)

Total download size: 45 k
Is this ok [y/N]: y
Downloading Packages:
(1/2): libXp-1.0.0-8.1.el5.i386.rpm                                                              |  22 kB     00:00    
(2/2): libXp-1.0.0-8.1.el5.x86_64.rpm                                                            |  23 kB     00:00    
------------------------------------------------------------------------------------------------------------------------
Total                                                                                   321 kB/s |  45 kB     00:00    
warning: rpmts_HdrFromFdno: Header V3 DSA signature: NOKEY, key ID 1e5e0159
el5_latest/gpgkey                                                                                | 1.4 kB     00:00    
Importing GPG key 0x1E5E0159 "Oracle OSS group (Open Source Software group) <build@oss.oracle.com>" from http://public-yum.oracle.com/RPM-GPG-KEY-oracle-el5
Is this ok [y/N]: y
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing     : libXp                                                                                            1/2
  Installing     : libXp                                                                                            2/2

Installed:
  libXp.i386 0:1.0.0-8.1.el5                                libXp.x86_64 0:1.0.0-8.1.el5                              

Complete!
[root@ebs1 ~]# rpm -ihv openmotif21-2.1.30-11.EL5.i386.rpm
Preparing...                ########################################### [100%]
   1:openmotif21            ########################################### [100%]

========================================================================================================================

2.
Install the xorg-x11-libs-compat RPM

[root@ebs1 ~]# rpm -ihv xorg-x11-libs-compat-6.8.2-1.EL.33.0.1.i386.rpm
Preparing...                ########################################### [100%]
   1:xorg-x11-libs-compat   ########################################### [100%]

========================================================================================================================

3.
The Linux Pre-Install RPM for Oracle E-Business Suite R12 on Oracle Linux 5 and 6 is now available for use by customers.

The package (oracle-ebs-server-R12-preinstall) is now available from the Oracle public yum repository. We recommended that you leverage the Pre-Install RPM on top of a ‘minimal’ RPM installation to run Oracle E-Business Suite Release 12. This RPM provides all required RPM packages for both the EBS application and database tier. You can significantly reduce your provisioning time of the Linux environment to install, upgrade or clone EBS R12 node. This RPM is applicable for both EBS 12.1 and 12.2 versions

[root@ebs1 ~]# yum install oracle-ebs-server-R12-preinstall-1.0.0-4.el5.x86_64.rpm
Loaded plugins: rhnplugin, security
This system is not registered with ULN.
You can use up2date --register to register.
ULN support will be disabled.
Setting up Install Process
Examining oracle-ebs-server-R12-preinstall-1.0.0-4.el5.x86_64.rpm: oracle-ebs-server-R12-preinstall-1.0.0-4.el5.x86_64
Marking oracle-ebs-server-R12-preinstall-1.0.0-4.el5.x86_64.rpm to be installed
Resolving Dependencies
--> Running transaction check
---> Package oracle-ebs-server-R12-preinstall.x86_64 0:1.0.0-4.el5 set to be updated
--> Processing Dependency: /usr/bin/odbcinst for package: oracle-ebs-server-R12-preinstall
--> Processing Dependency: /usr/lib/gcc/i386-redhat-linux/4.1.1/libstdc++.a for package: oracle-ebs-server-R12-preinstall
Importing additional filelist information
--> Processing Dependency: /usr/lib/libaio.so for package: oracle-ebs-server-R12-preinstall
--> Processing Dependency: /usr/lib/libc.so for package: oracle-ebs-server-R12-preinstall
--> Processing Dependency: /usr/lib/libodbccr.so for package: oracle-ebs-server-R12-preinstall
--> Processing Dependency: /usr/lib64/libodbccr.so for package: oracle-ebs-server-R12-preinstall
--> Processing Dependency: elfutils-libelf-devel for package: oracle-ebs-server-R12-preinstall
--> Processing Dependency: elfutils-libelf-devel-static for package: oracle-ebs-server-R12-preinstall
--> Processing Dependency: gcc for package: oracle-ebs-server-R12-preinstall
--> Processing Dependency: gcc-c++ for package: oracle-ebs-server-R12-preinstall
--> Processing Dependency: glibc-devel for package: oracle-ebs-server-R12-preinstall
--> Processing Dependency: glibc-headers for package: oracle-ebs-server-R12-preinstall
--> Processing Dependency: libaio-devel for package: oracle-ebs-server-R12-preinstall
--> Processing Dependency: libgdbm.so.2 for package: oracle-ebs-server-R12-preinstall
--> Processing Dependency: libstdc++-devel for package: oracle-ebs-server-R12-preinstall
--> Processing Dependency: sysstat for package: oracle-ebs-server-R12-preinstall
--> Running transaction check
---> Package elfutils-libelf-devel.x86_64 0:0.137-3.el5 set to be updated
---> Package elfutils-libelf-devel-static.x86_64 0:0.137-3.el5 set to be updated
---> Package gcc.x86_64 0:4.1.2-54.el5 set to be updated
---> Package gcc-c++.x86_64 0:4.1.2-54.el5 set to be updated
---> Package gdbm.i386 0:1.8.0-28.el5 set to be updated
---> Package glibc-devel.i386 0:2.5-118.el5_10.2 set to be updated
--> Processing Dependency: glibc = 2.5-118.el5_10.2 for package: glibc-devel
---> Package glibc-headers.x86_64 0:2.5-118.el5_10.2 set to be updated
--> Processing Dependency: kernel-headers >= 2.2.1 for package: glibc-headers
--> Processing Dependency: kernel-headers for package: glibc-headers
---> Package libaio-devel.i386 0:0.3.106-5 set to be updated
---> Package libstdc++-devel.i386 0:4.1.2-54.el5 set to be updated
---> Package sysstat.x86_64 0:7.0.2-12.0.1.el5 set to be updated
---> Package unixODBC.x86_64 0:2.2.11-10.el5 set to be updated
--> Processing Dependency: unixODBC-libs = 2.2.11-10.el5 for package: unixODBC
--> Processing Dependency: libodbc.so.1()(64bit) for package: unixODBC
--> Processing Dependency: libodbcinst.so.1()(64bit) for package: unixODBC
---> Package unixODBC-devel.i386 0:2.2.11-10.el5 set to be updated
--> Processing Dependency: libtemplate.so.1 for package: unixODBC-devel
--> Processing Dependency: libesoobS.so.1 for package: unixODBC-devel
--> Processing Dependency: libodbcinst.so.1 for package: unixODBC-devel
--> Processing Dependency: libtdsS.so.1 for package: unixODBC-devel
--> Processing Dependency: libodbccr.so.1 for package: unixODBC-devel
--> Processing Dependency: libodbcdrvcfg2S.so.1 for package: unixODBC-devel
--> Processing Dependency: libgtrtst.so.1 for package: unixODBC-devel
--> Processing Dependency: libsapdbS.so.1 for package: unixODBC-devel
--> Processing Dependency: libnn.so.1 for package: unixODBC-devel
--> Processing Dependency: libodbcnnS.so.1 for package: unixODBC-devel
--> Processing Dependency: libodbctxtS.so.1 for package: unixODBC-devel
--> Processing Dependency: liboplodbcS.so.1 for package: unixODBC-devel
--> Processing Dependency: libodbcdrvcfg1S.so.1 for package: unixODBC-devel
--> Processing Dependency: libboundparam.so.1 for package: unixODBC-devel
--> Processing Dependency: libmimerS.so.1 for package: unixODBC-devel
--> Processing Dependency: libodbcminiS.so.1 for package: unixODBC-devel
--> Processing Dependency: liboraodbcS.so.1 for package: unixODBC-devel
---> Package unixODBC-devel.x86_64 0:2.2.11-10.el5 set to be updated
--> Running transaction check
--> Processing Dependency: glibc = 2.5-118 for package: nscd
---> Package glibc.i686 0:2.5-118.el5_10.2 set to be updated
--> Processing Dependency: glibc-common = 2.5-118.el5_10.2 for package: glibc
---> Package glibc.x86_64 0:2.5-118.el5_10.2 set to be updated
---> Package kernel-headers.x86_64 0:2.6.18-371.8.1.0.1.el5 set to be updated
---> Package unixODBC-libs.i386 0:2.2.11-10.el5 set to be updated
---> Package unixODBC-libs.x86_64 0:2.2.11-10.el5 set to be updated
--> Running transaction check
---> Package glibc-common.x86_64 0:2.5-118.el5_10.2 set to be updated
---> Package nscd.x86_64 0:2.5-118.el5_10.2 set to be updated
--> Finished Dependency Resolution

Dependencies Resolved

========================================================================================================================
 Package                      Arch   Version                 Repository                                            Size
========================================================================================================================
Installing:
 oracle-ebs-server-R12-preinstall
                              x86_64 1.0.0-4.el5             /oracle-ebs-server-R12-preinstall-1.0.0-4.el5.x86_64  63 k
Installing for dependencies:
 elfutils-libelf-devel        x86_64 0.137-3.el5             ol5_u10_base                                          24 k
 elfutils-libelf-devel-static x86_64 0.137-3.el5             ol5_u10_base                                          64 k
 gcc                          x86_64 4.1.2-54.el5            ol5_u10_base                                         5.3 M
 gcc-c++                      x86_64 4.1.2-54.el5            ol5_u10_base                                         3.8 M
 gdbm                         i386   1.8.0-28.el5            ol5_u10_base                                          28 k
 glibc-devel                  i386   2.5-118.el5_10.2        el5_latest                                           2.1 M
 glibc-headers                x86_64 2.5-118.el5_10.2        el5_latest                                           601 k
 kernel-headers               x86_64 2.6.18-371.8.1.0.1.el5  el5_latest                                           1.5 M
 libaio-devel                 i386   0.3.106-5               ol5_u10_base                                          12 k
 libstdc++-devel              i386   4.1.2-54.el5            ol5_u10_base                                         2.8 M
 sysstat                      x86_64 7.0.2-12.0.1.el5        ol5_u10_base                                         188 k
 unixODBC                     x86_64 2.2.11-10.el5           ol5_u10_base                                         291 k
 unixODBC-devel               i386   2.2.11-10.el5           ol5_u10_base                                         738 k
 unixODBC-devel               x86_64 2.2.11-10.el5           ol5_u10_base                                         793 k
 unixODBC-libs                i386   2.2.11-10.el5           ol5_u10_base                                         551 k
 unixODBC-libs                x86_64 2.2.11-10.el5           ol5_u10_base                                         554 k
Updating for dependencies:
 glibc                        i686   2.5-118.el5_10.2        el5_latest                                           5.4 M
 glibc                        x86_64 2.5-118.el5_10.2        el5_latest                                           4.8 M
 glibc-common                 x86_64 2.5-118.el5_10.2        el5_latest                                            16 M
 nscd                         x86_64 2.5-118.el5_10.2        el5_latest                                           177 k

Transaction Summary
========================================================================================================================
Install      17 Package(s)
Upgrade       4 Package(s)

Total size: 46 M
Total download size: 46 M
Is this ok [y/N]: y
Downloading Packages:
(1/20): libaio-devel-0.3.106-5.i386.rpm                                                          |  12 kB     00:00    
(2/20): elfutils-libelf-devel-0.137-3.el5.x86_64.rpm                                             |  24 kB     00:00    
(3/20): gdbm-1.8.0-28.el5.i386.rpm                                                               |  28 kB     00:00    
(4/20): elfutils-libelf-devel-static-0.137-3.el5.x86_64.rpm                                      |  64 kB     00:00    
(5/20): nscd-2.5-118.el5_10.2.x86_64.rpm                                                         | 177 kB     00:00    
(6/20): sysstat-7.0.2-12.0.1.el5.x86_64.rpm                                                      | 188 kB     00:00    
(7/20): unixODBC-2.2.11-10.el5.x86_64.rpm                                                        | 291 kB     00:00    
(8/20): unixODBC-libs-2.2.11-10.el5.i386.rpm                                                     | 551 kB     00:00    
(9/20): unixODBC-libs-2.2.11-10.el5.x86_64.rpm                                                   | 554 kB     00:00    
(10/20): glibc-headers-2.5-118.el5_10.2.x86_64.rpm                                               | 601 kB     00:00    
(11/20): unixODBC-devel-2.2.11-10.el5.i386.rpm                                                   | 738 kB     00:00    
(12/20): unixODBC-devel-2.2.11-10.el5.x86_64.rpm                                                 | 793 kB     00:00    
(13/20): kernel-headers-2.6.18-371.8.1.0.1.el5.x86_64.rpm                                        | 1.5 MB     00:00    
(14/20): glibc-devel-2.5-118.el5_10.2.i386.rpm                                                   | 2.1 MB     00:01    
(15/20): libstdc++-devel-4.1.2-54.el5.i386.rpm                                                   | 2.8 MB     00:01    
(16/20): gcc-c++-4.1.2-54.el5.x86_64.rpm                                                         | 3.8 MB     00:02    
(17/20): glibc-2.5-118.el5_10.2.x86_64.rpm                                                       | 4.8 MB     00:02    
(18/20): gcc-4.1.2-54.el5.x86_64.rpm                                                             | 5.3 MB     00:03    
(19/20): glibc-2.5-118.el5_10.2.i686.rpm                                                         | 5.4 MB     00:03    
(20/20): glibc-common-2.5-118.el5_10.2.x86_64.rpm                                                |  16 MB     00:08    
------------------------------------------------------------------------------------------------------------------------
Total                                                                                   1.3 MB/s |  46 MB     00:34    
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
  Updating       : glibc-common                                                                                    1/25
  Updating       : glibc                                                                                           2/25
  Installing     : unixODBC-libs                                                                                   3/25
  Installing     : unixODBC                                                                                        4/25
  Installing     : libstdc++-devel                                                                                 5/25
  Installing     : sysstat                                                                                         6/25
  Installing     : unixODBC-devel                                                                                  7/25
  Installing     : libaio-devel                                                                                    8/25
  Installing     : kernel-headers                                                                                  9/25
  Updating       : nscd                                                                                           10/25
  Installing     : glibc-headers                                                                                  11/25
  Updating       : glibc                                                                                          12/25
  Installing     : unixODBC-libs                                                                                  13/25
  Installing     : gdbm                                                                                           14/25
  Installing     : glibc-devel                                                                                    15/25
  Installing     : unixODBC-devel                                                                                 16/25
  Installing     : gcc                                                                                            17/25
  Installing     : gcc-c++                                                                                        18/25
  Installing     : elfutils-libelf-devel-static                                                                   19/25
  Installing     : elfutils-libelf-devel                                                                          20/25
  Installing     : oracle-ebs-server-R12-preinstall                                                               21/25
  Cleanup        : nscd                                                                                           22/25
  Cleanup        : glibc                                                                                          23/25
  Cleanup        : glibc                                                                                          24/25
  Cleanup        : glibc-common                                                                                   25/25

Installed:
  oracle-ebs-server-R12-preinstall.x86_64 0:1.0.0-4.el5                                                                

Dependency Installed:
  elfutils-libelf-devel.x86_64 0:0.137-3.el5              elfutils-libelf-devel-static.x86_64 0:0.137-3.el5            
  gcc.x86_64 0:4.1.2-54.el5                               gcc-c++.x86_64 0:4.1.2-54.el5                                
  gdbm.i386 0:1.8.0-28.el5                                glibc-devel.i386 0:2.5-118.el5_10.2                          
  glibc-headers.x86_64 0:2.5-118.el5_10.2                 kernel-headers.x86_64 0:2.6.18-371.8.1.0.1.el5               
  libaio-devel.i386 0:0.3.106-5                           libstdc++-devel.i386 0:4.1.2-54.el5                          
  sysstat.x86_64 0:7.0.2-12.0.1.el5                       unixODBC.x86_64 0:2.2.11-10.el5                              
  unixODBC-devel.i386 0:2.2.11-10.el5                     unixODBC-devel.x86_64 0:2.2.11-10.el5                        
  unixODBC-libs.i386 0:2.2.11-10.el5                      unixODBC-libs.x86_64 0:2.2.11-10.el5                         

Dependency Updated:
  glibc.i686 0:2.5-118.el5_10.2       glibc.x86_64 0:2.5-118.el5_10.2      glibc-common.x86_64 0:2.5-118.el5_10.2    
  nscd.x86_64 0:2.5-118.el5_10.2    

Complete!
[root@ebs1

========================================================================================================================

The oracle-ebs-server-R12-preinstall RPM creates the oracle and applmgr unix accounts. oracle will be if you configure the node to include the the database and application tiers.

[root@ebs1 ~]# cat /etc/passwd |tail -5
avahi-autoipd:x:100:101:avahi-autoipd:/var/lib/avahi-autoipd:/sbin/nologin
gdm:x:42:42::/var/gdm:/sbin/nologin
sabayon:x:86:86:Sabayon user:/home/sabayon:/sbin/nologin
oracle:x:54321:54321::/home/oracle:/bin/bash
applmgr:x:54322:54321::/home/applmgr:/bin/bash

========================================================================================================================

The oracle-ebs-server-R12-preinstall RPM sets the hard and soft shell resource limits according to Oracle’s recommended values in /etc/security/limits.conf in Oracle Linux 5 and /etc/security/limits.d/ in Oracle Linux 6:

# oracle-ebs-server-R12-preinstall setting for nofile soft limit is 4096
oracle   soft   nofile    4096
applmgr   soft   nofile    4096

# oracle-ebs-server-R12-preinstall setting for nofile hard limit is 65536
oracle   hard   nofile    65536
applmgr   hard   nofile    65536

# oracle-ebs-server-R12-preinstall setting for nproc soft limit is 16384
oracle   soft   nproc    16384
applmgr   soft   nproc    16384

# oracle-ebs-server-R12-preinstall setting for nproc hard limit is 16384
oracle   hard   nproc    16384
applmgr   hard   nproc    16384

# oracle-ebs-server-R12-preinstall setting for core soft limit is unlimited
oracle   soft   core    unlimited
applmgr   soft   core    unlimited

# oracle-ebs-server-R12-preinstall setting for core hard limit is unlimited
oracle   hard   core    unlimited
applmgr   hard   core    unlimited

# oracle-ebs-server-R12-preinstall setting for memlock soft limit is 50000000
oracle   soft   memlock    50000000
applmgr   soft   memlock    50000000

# oracle-ebs-server-R12-preinstall setting for memlock hard limit is 50000000
oracle   hard   memlock    50000000
applmgr   hard   memlock    50000000

# oracle-ebs-server-R12-preinstall setting for stack soft limit is 10240
oracle   soft   stack    10240
applmgr   soft   stack    10240

# oracle-ebs-server-R12-preinstall setting for stack hard limit is 32768
oracle   hard   stack    32768
applmgr   hard   stack    32768

========================================================================================================================

Most importantly, the EBS preinstall RPM updates the kernel parameters in /etc/sysctl.conf to Oracle recommended values:

# oracle-ebs-server-R12-preinstall setting for fs.file-max is 6815744
fs.file-max = 6815744

# oracle-ebs-server-R12-preinstall setting for kernel.msgmni is 2878
kernel.msgmni = 2878

# oracle-ebs-server-R12-preinstall setting for kernel.msgmax is 8192

# oracle-ebs-server-R12-preinstall setting for kernel.msgmnb is 65536
kernel.msgmnb = 65536

# oracle-ebs-server-R12-preinstall setting for kernel.sem is '256 32000 100 142'
kernel.sem = 256 32000 100 142

# oracle-ebs-server-R12-preinstall setting for kernel.shmmni is 4096
kernel.shmmni = 4096

# oracle-ebs-server-R12-preinstall setting for kernel.shmall is 1073741824

# oracle-ebs-server-R12-preinstall setting for kernel.shmmax is 4398046511104 on x86_64 and 4294967295 on i386 architecture.
# Refer Note id 567506.1
kernel.shmmax = 4398046511104

# oracle-ebs-server-R12-preinstall setting for kernel.sysrq is 1
kernel.sysrq = 1

# oracle-ebs-server-R12-preinstall setting for net.core.rmem_default is 262144
net.core.rmem_default = 262144

# oracle-ebs-server-R12-preinstall setting for net.core.rmem_max is 4194304
net.core.rmem_max = 4194304

# oracle-ebs-server-R12-preinstall setting for net.core.wmem_default is 262144
net.core.wmem_default = 262144

# oracle-ebs-server-R12-preinstall setting for net.core.wmem_max is 1048576
net.core.wmem_max = 1048576

# oracle-ebs-server-R12-preinstall setting for fs.aio-max-nr is 3145728
fs.aio-max-nr = 3145728

# oracle-ebs-server-R12-preinstall setting for net.ipv4.ip_local_port_range is 9000 65500
net.ipv4.ip_local_port_range = 9000 65500

========================================================================================================================

The DNS resolver parameters are updated in /etc/resolv.conf to the minimum recommended values. You may need to re-visit these values based on your corporate environment:

[root@ebs1 ~]# cat /etc/resolv.conf
search viscosity.com
nameserver 192.168.1.1
#oracle-ebs-server-R12-preinstall setting for attempts is 5
options attempts:5
#oracle-ebs-server-R12-preinstall setting for timeout is 15
options timeout:15

========================================================================================================================

The EBS preinstall RPM also disables numa in the /etc/grub.conf kernel commandline:

[root@ebs1 ~]# cat /etc/grub.conf
# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE:  You have a /boot partition.  This means that
#          all kernel and initrd paths are relative to /boot/, eg.
#          root (hd0,0)
#          kernel /vmlinuz-version ro root=/dev/VolGroup00/LogVol00
#          initrd /initrd-version.img
#boot=/dev/sda
default=1
timeout=5
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
title Oracle Linux Server (2.6.39-400.209.1.el5uek)
     root (hd0,0)
     kernel /vmlinuz-2.6.39-400.209.1.el5uek ro root=/dev/VolGroup00/LogVol00 rhgb quiet numa=off
     initrd /initrd-2.6.39-400.209.1.el5uek.img
title Oracle Linux Server-base (2.6.18-371.el5)
     root (hd0,0)
     kernel /vmlinuz-2.6.18-371.el5 ro root=/dev/VolGroup00/LogVol00 rhgb quiet numa=off
     initrd /initrd-2.6.18-371.el5.img

========================================================================================================================

If you are running Oracle Linux 6, it disables Transparent Huge Pages (THP). THP is not quite ready for prime time yet.



As an Oracle RAC environment increases in size, complexity and importance the more important it is to achieve high levels of automation and standardization.  Increased levels of automation and standardization creates high reliability and allows production DBAs to focus on improvements in the infrastructure and proactive performance tuning. In this blog post, I am going to share with you how I deal with rotating various log files that have the tendency to grow and grow in the Oracle environment. I do not use “cp /dev/null” commands to the log files.

The following script will generate the scripts necessary to rotate all the database alert logs, ASM alert log, listener log and scan listener log(s) for the RAC node.

The script has a dependence on the SH environment variable script being set. The SH environment variable will simple be the location where you store all your shell scripts. This script will create a sub-directory called logrotate. In the logrotate directory, it will create 2 files for each database alert logs, ASM alert log, listener log and scan listener log(s). The first file is the logrotate state file. The second file is the actual log rotate directives. For the database instance and scan listener, this script will perform a “ps -ef” command and look for actively running occurrence of the scan listener and database instance.

In the very end of the script, we will generate the logrotate script for you to put into your weekly master cleanup script. We promote 2 sets of cleanup scripts: a daily cleanup script to handle things like audit log purges and a weekly cleanup scripts to address all the growing log file required by Oracle. We no longer have to deal with the Oracle cluster services log files as Oracle started to rotate the logs for us automatically starting in Oracle Database 11g Release 2.

function log_rotate {
export SQLP="sqlplus -s / as sysdba"
export SET="set pages 0 trims on lines 2000 echo off ver off head off feed off"


export ASM_RUNNING=$(ps -ef |grep -i asm_pmon |awk {'print $8'} |sed "s/asm_pmon_//g" |egrep -v "sed|grep")
[ "$ASM_RUNNING" != "" ] && ASM_INSTANCE=$(echo $ASM_RUNNING |sed '$s/.$//')

LISTENER_LOG=$ORACLE_BASE/diag/tnslsnr/$(hostname -s)/listener/trace/listener.log

function diag {
export DIAG_DEST=$(
echo "
$SET
select value from v\$diag_info where name='Diag Trace';" |$SQLP )
}

# -- Determine ASM Log
export ORACLE_SID=$ASM_RUNNING
export ORAENV_ASK=NO
. oraenv -s
export GRID_HOME=$ORACLE_HOME
diag;

ASM_LOG=$DIAG_DEST/alert_${ORACLE_SID}.log

ls -l  $ASM_LOG
ls -l  $LISTENER_LOG

function rotate {
export LOGFILE=$1
export CONFIG_FILE=$2
export PATH=$PATH:/usr/sbin
export CONF_DIR=$SH/logrotate
[ ! -d "$CONF_DIR" ] && ( echo $CONF_DIR does not exist .. issuing mkdir; mkdir -p $CONF_DIR )

export CONF=$CONF_DIR/$CONFIG_FILE

cat <<!! >$CONF
$LOGFILE {
weekly
copytruncate
rotate 2
compress
}
!!

echo logrotate -s $CONF_DIR/log_rotate_status.$CONFIG_FILE -f $CONF
}

for DATABASES in $(ps -ef |grep -i pmon |grep -v ASM |awk {'print $8'} |sed "s/ora_pmon_//g" |egrep -v "sed|grep")
do
  export DB=$(echo $DATABASES |sed '$s/.$//')
  export ORACLE_SID=$DATABASES
  export ORAENV_ASK=NO
  . oraenv -s
  diag;
  export DB_LOG=$DIAG_DEST/alert_${ORACLE_SID}.log
  ls -l $DB_LOG

  rotate $DB_LOG $DATABASES
done

for SCAN in $(ps -ef |grep -i tns |grep SCAN |awk {'print $9'})
do
export LOWER_SCAN_LISTENER=$(echo $SCAN |tr '[A-Z]' '[a-z]')
SCAN_LISTENER_LOG=$GRID_HOME/log/diag/tnslsnr/$(hostname -s)/$LOWER_SCAN_LISTENER/trace/$LOWER_SCAN_LISTENER.log
ls -l  $SCAN_LISTENER_LOG
done

rotate $LISTENER_LOG listener
rotate $SCAN_LISTENER_LOG $LOWER_SCAN_LISTENER
rotate $ASM_LOG $ASM_RUNNING
}

Here’s a sample output of the log rotation script:

logrotate -s /u01/app/oracle/general/sh/scripts/logrotate/log_rotate_status.test1 -f /u01/app/oracle/general/sh/scripts/logrotate/test1
logrotate -s /u01/app/oracle/general/sh/scripts/logrotate/log_rotate_status.erpqa1 -f /u01/app/oracle/general/sh/scripts/logrotate/erpqa1
logrotate -s /u01/app/oracle/general/sh/scripts/logrotate/log_rotate_status.listener -f /u01/app/oracle/general/sh/scripts/logrotate/listener
logrotate -s /u01/app/oracle/general/sh/scripts/logrotate/log_rotate_status.listener_scan1 -f /u01/app/oracle/general/sh/scripts/logrotate/listener_scan1
logrotate -s /u01/app/oracle/general/sh/scripts/logrotate/log_rotate_status.+ASM1 -f /u01/app/oracle/general/sh/scripts/logrotate/+ASM1

Note the -s option is to specify an alternate state file. Since we are executing logrotate as the oracle or grid user, we must specify the -s option. The default state file is /var/lib/logrotate/status.

As you can see, it create a logrotate script for 2 of our databases, the local ASM instance, database listener and the scan listener. If you drill down into the actual logrotate script, you will notice that it is designed to rotate on a weekly basis, copy the file, truncate the original file, keep 2 copies and compress the copies. Here’s a sample logrotate script:

cat logrotate/listener_scan1
/u01/app/grid/11203/log/diag/tnslsnr/dallinux01/listener_scan1/trace/listener_scan1.log {
weekly
copytruncate
rotate 2
compress
}

Here’s a super easy and fast way of setting up a Yum Repository for all your Linux based infrastructure. You can leverage NFS and effectively have a Yum Repository in matter of minutes.

First, mount the Red Hat 6 media distribution from an ISO or from the DVD media. Next, copy the the entire contents of the DVD to a location on the NAS or a local file system that you wish to be exported to other servers.

On the Red Hat media, look for a file called .discinfo on the root directory of the media. In my example, here’s what the contents of .discinfo looks like:

[root@rh64a yum.repos.d]# cat "/media/RHEL_6.4 x86_64 Disc 1"/.discinfo
1359576196.686790
Red Hat Enterprise Linux 6.4
x86_64
1

The line that you are interested in is the first line with all the numbers: 1359576196.686790

We will need that number to build our repository definition file: /etc/yum.repos.d/viscosity.repo
In this file, we will add the full numeric value for our mediaaid line. The other tidbit of information that you need to provide is the root file system location for the Red Hat media where you copied everything to. In our example, we copied the entire media to the /shared/rhel64.dvd directory. We will fill out the baseurl value with this location.

# cat /etc/yum.repos.d/viscosity.repo
[viscosity]
mediaid=1359576196.686790
name=Local Viscosity Repo
baseurl=file:///nfs/rhel64.dvd/
enabled=1
gpgcheck=no

From the server that will act as our Yum Repository, add the entries to /etc/exports:

[root@rh64b yum.repos.d]# cat /etc/exports
/nfs *(rw,sync) 

You can selective qualify the list of servers that you want to present the share to for added security. You may need to start the NFS service with the “service hfs start” or restart the NFS service with the “service nfs restart” command.

On the target server where you wish to mount the /nfs share, you will issue the mount command with the -nfs option. In this example, we will mount the share from the rh64b server on the rh64a server. rh64b will serve as our utility server that will house the Yum Repository, DNS server, etc.

mount -t nfs rh64b:/nfs /nfs

The yum package manager does not discriminate between a network or local file system. From rh64a server, let’s take a test drive and install the screen RPM over NFS.

[root@rh64a Server]# yum install screen
Loaded plugins: product-id, refresh-packagekit, security, subscription-manager
This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
viscosity                                                                                  | 3.9 kB     00:00 ... 
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package screen.x86_64 0:4.0.3-16.el6 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

==================================================================================================================
 Package                 Arch                    Version                         Repository                  Size
==================================================================================================================
Installing:
 screen                  x86_64                  4.0.3-16.el6                    viscosity                  494 k

Transaction Summary
==================================================================================================================
Install       1 Package(s)

Total download size: 494 k
Installed size: 795 k
Is this ok [y/N]: y
Downloading Packages:
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing : screen-4.0.3-16.el6.x86_64                                                                     1/1 
  Verifying  : screen-4.0.3-16.el6.x86_64                                                                     1/1 

Installed:
  screen.x86_64 0:4.0.3-16.el6                                                                                    

Complete!

Automation is what we our end goal is. We want to automate RPM package installations. To automatically answer “Y” to the “Is this ok [y/N]:” question, we can pass the -y flag to our yum install command:

[root@rh64d ~]# yum -y install ksh
Loaded plugins: product-id, refresh-packagekit, security, subscription-manager
This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
viscosity                                                                                               | 3.9 kB     00:00 ... 
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package ksh.x86_64 0:20100621-19.el6 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

===============================================================================================================================
 Package                 Arch                       Version                                Repository                     Size
===============================================================================================================================
Installing:
 ksh                     x86_64                     20100621-19.el6                        viscosity                     686 k

Transaction Summary
===============================================================================================================================
Install       1 Package(s)

Total download size: 686 k
Installed size: 1.5 M
Downloading Packages:
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing : ksh-20100621-19.el6.x86_64                                                                                  1/1 
  Verifying  : ksh-20100621-19.el6.x86_64                                                                                  1/1 

Installed:
  ksh.x86_64 0:20100621-19.el6                                                                                                 

Complete!

At Viscosity, I heavily promote automation our database builds for our clients. It allows our consultants to create databases that are consistent and reliable every time we build them.

In this example, I will walk you through the command line options of the database configuration assistant (dbca) for Oracle Database 12c.

$ cat dbca.sh
cd /u01/app/oracle/product/12.1.0/dbhome_1/bin
./dbca -silent \
 -createDatabase \
 -templateName General_Purpose.dbc \
 -gdbName TEST \
 -sid TEST     \
 -SysPassword oracle123 \
 -createAsContainerDatabase true \
    -numberofPDBs 2 \
    -pdbName VNA \
 -SystemPassword oracle123 \
 -emConfiguration DBEXPRESS  \
 -redoLogFileSize 100   \
 -recoveryAreaDestination FRA \
 -storageType ASM             \
   -asmsnmpPassword oracle123 \
   -asmSysPassword oracle123  \
   -diskGroupName DATA \
 -listeners LISTENER   \
 -registerWithDirService false \
 -characterSet AL32UTF8 \
 -nationalCharacterSet AL16UTF16 \
 -databaseType MULTIPURPOSE \
 -nodelist ol59a,ol59b \
 -initparams audit_file_dest='/u01/app/oracle/admin/TEST/adump' \
     -initparams compatible='12.1.0.0' \
     -initparams db_create_file_dest='+DATA' \
     -initparams db_create_online_log_dest_1='+DATA' \
     -initparams db_create_online_log_dest_2='+FRA' \
     -initparams db_recovery_file_dest='+FRA' \
     -initparams pga_aggregate_target=100M \
     -initparams diagnostic_dest='/u01/app/oracle' \
     -initparams parallel_max_servers=8 \
     -initparams processes=400 \
     -initparams sga_target=524288000 \
     -initparams db_recovery_file_dest_size=4322230272

Unfortunately, the parameter for the PDBAdmin password does not exist in the dbca -silent option. This will make automation of this part little more difficult. Additional parameters such as createAsContainerDatabase, numberofPDBs, pdbName, and registerWithService are new to Oracle Database 12c. Additional option for emConfiguation for DBEXPRESS is also new to Oracle Database 12c.

In this database creation script, I also embedded relevant initialization parameters. You can opt to include additional parameters that are enterprise standards for your corporation.

$ ./dbca.sh
Enter PDBADMIN User Password:

Copying database files
1% complete
2% complete
23% complete
Creating and starting Oracle instance
24% complete
27% complete
28% complete
29% complete
32% complete
35% complete
36% complete
38% complete
Creating cluster database views
40% complete
54% complete
Completing Database Creation
56% complete
58% complete
65% complete
67% complete
74% complete
77% complete
Creating Pluggable Databases
81% complete
86% complete
100% complete
Look at the log file "/u01/app/oracle/cfgtoollogs/dbca/TEST/TEST1.log" for further details.

We should always review the log file generated from dbca to confirm there are no relevant warning or error messages. As you can see from the example output below, the cluster verification utility was executed against novelist defined in our dbca database creation script.

$ cat /u01/app/oracle/cfgtoollogs/dbca/TEST/TEST1.log

Cluster Verification check "Node Connectivity" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether connectivity exists amongst all the nodes. The connectivity is being tested for the subnets "192.168.1.0,10.0.0.0"
Cluster Verification check "Multicast check" succeeded on nodes: ol59a,ol59b.
This task checks that network interfaces in subnet are able to communicate over multicast IP address
Cluster Verification Check "Physical Memory" succeeded on node "ol59a", expected value: 1GB (1048576.0KB) actual value: 2.9461GB (3089208.0KB).
Cluster Verification Check "Physical Memory" succeeded on node "ol59b", expected value: 1GB (1048576.0KB) actual value: 2.9461GB (3089208.0KB).
Cluster Verification check "Physical Memory" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the system has at least 1GB (1048576.0KB) of total physical memory.
Cluster Verification Check "Available Physical Memory" succeeded on node "ol59a", expected value: 50MB (51200.0KB) actual value: 2.3107GB (2422936.0KB).
Cluster Verification Check "Available Physical Memory" succeeded on node "ol59b", expected value: 50MB (51200.0KB) actual value: 2.3824GB (2498168.0KB).
Cluster Verification check "Available Physical Memory" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the system has at least 50MB (51200.0KB) of available physical memory.
Cluster Verification Check "Swap Size" succeeded on node "ol59b", expected value: 2.9461GB (3089208.0KB) actual value: 3.9062GB (4095996.0KB).
Cluster Verification Check "Swap Size" failed on node "ol59a", expected value: 2.9461GB (3089208.0KB) actual value: 1.9687GB (2064380.0KB).
PRVF-7573 : Sufficient swap size is not available on node "ol59a" [Required = 2.9461GB (3089208.0KB) ; Found = 1.9687GB (2064380.0KB)]
Cluster Verification check failed on nodes: ol59a.
This is a prerequisite condition to test whether sufficient total swap space is available on the system.
Cluster Verification Check "Free Space: ol59b:/tmp" succeeded on node "ol59b", expected value: 1GB  actual value: 2.4834GB .
Cluster Verification check "Free Space: ol59b:/tmp" succeeded on nodes: ol59b.
This is a prerequisite condition to test whether sufficient free space is available in the file system.
Cluster Verification Check "Free Space: ol59a:/tmp" succeeded on node "ol59a", expected value: 1GB  actual value: 3.9453GB .
Cluster Verification check "Free Space: ol59a:/tmp" succeeded on nodes: ol59a.
This is a prerequisite condition to test whether sufficient free space is available in the file system.
Cluster Verification check "User Existence: oracle" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether user "oracle" exists on the system.
Cluster Verification Check "Run Level" succeeded on node "ol59a", expected value: 3,5 actual value: 5.
Cluster Verification Check "Run Level" succeeded on node "ol59b", expected value: 3,5 actual value: 5.
Cluster Verification check "Run Level" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the system is running with proper run level.
Cluster Verification Check "Hard Limit: maximum open file descriptors" succeeded on node "ol59a", expected value: 65536 actual value: 131072.
Cluster Verification Check "Hard Limit: maximum open file descriptors" succeeded on node "ol59b", expected value: 65536 actual value: 65536.
Cluster Verification check "Hard Limit: maximum open file descriptors" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the hard limit for "maximum open file descriptors" is set correctly.
Cluster Verification Check "Soft Limit: maximum open file descriptors" succeeded on node "ol59a", expected value: 1024 actual value: 131072.
Cluster Verification Check "Soft Limit: maximum open file descriptors" succeeded on node "ol59b", expected value: 1024 actual value: 1024.
Cluster Verification check "Soft Limit: maximum open file descriptors" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the soft limit for "maximum open file descriptors" is set correctly.
Cluster Verification Check "Hard Limit: maximum user processes" succeeded on node "ol59a", expected value: 16384 actual value: 131072.
Cluster Verification Check "Hard Limit: maximum user processes" succeeded on node "ol59b", expected value: 16384 actual value: 16384.
Cluster Verification check "Hard Limit: maximum user processes" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the hard limit for "maximum user processes" is set correctly.
Cluster Verification Check "Soft Limit: maximum user processes" succeeded on node "ol59a", expected value: 2047 actual value: 131072.
Cluster Verification Check "Soft Limit: maximum user processes" succeeded on node "ol59b", expected value: 2047 actual value: 16384.
Cluster Verification check "Soft Limit: maximum user processes" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the soft limit for "maximum user processes" is set correctly.
Cluster Verification Check "Architecture" succeeded on node "ol59a", expected value: x86_64 actual value: x86_64.
Cluster Verification Check "Architecture" succeeded on node "ol59b", expected value: x86_64 actual value: x86_64.
Cluster Verification check "Architecture" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the system has a certified architecture.
Cluster Verification Check "OS Kernel Version" succeeded on node "ol59a", expected value: 2.6.18 actual value: 2.6.39-400.109.4.el5uek.
Cluster Verification Check "OS Kernel Version" succeeded on node "ol59b", expected value: 2.6.18 actual value: 2.6.39-400.109.4.el5uek.
Cluster Verification check "OS Kernel Version" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the system kernel version is at least "2.6.18".
Cluster Verification Check "OS Kernel Parameter: semmsl" succeeded on node "ol59a", expected value: 250 actual value: Current=250; Configured=250.
Cluster Verification Check "OS Kernel Parameter: semmsl" succeeded on node "ol59b", expected value: 250 actual value: Current=250; Configured=250.
Cluster Verification check "OS Kernel Parameter: semmsl" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the OS kernel parameter "semmsl" is properly set.
Cluster Verification Check "OS Kernel Parameter: semmns" succeeded on node "ol59a", expected value: 32000 actual value: Current=32000; Configured=32000.
Cluster Verification Check "OS Kernel Parameter: semmns" succeeded on node "ol59b", expected value: 32000 actual value: Current=32000; Configured=32000.
Cluster Verification check "OS Kernel Parameter: semmns" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the OS kernel parameter "semmns" is properly set.
Cluster Verification Check "OS Kernel Parameter: semopm" succeeded on node "ol59a", expected value: 100 actual value: Current=100; Configured=100.
Cluster Verification Check "OS Kernel Parameter: semopm" succeeded on node "ol59b", expected value: 100 actual value: Current=100; Configured=100.
Cluster Verification check "OS Kernel Parameter: semopm" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the OS kernel parameter "semopm" is properly set.
Cluster Verification Check "OS Kernel Parameter: semmni" succeeded on node "ol59a", expected value: 128 actual value: Current=142; Configured=142.
Cluster Verification Check "OS Kernel Parameter: semmni" succeeded on node "ol59b", expected value: 128 actual value: Current=128; Configured=128.
Cluster Verification check "OS Kernel Parameter: semmni" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the OS kernel parameter "semmni" is properly set.
Cluster Verification Check "OS Kernel Parameter: shmmax" succeeded on node "ol59a", expected value: 1581674496 actual value: Current=4398046511104; Configured=4398046511104.
Cluster Verification Check "OS Kernel Parameter: shmmax" succeeded on node "ol59b", expected value: 1581674496 actual value: Current=68719476736; Configured=68719476736.
Cluster Verification check "OS Kernel Parameter: shmmax" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the OS kernel parameter "shmmax" is properly set.
Cluster Verification Check "OS Kernel Parameter: shmmni" succeeded on node "ol59a", expected value: 4096 actual value: Current=4096; Configured=4096.
Cluster Verification Check "OS Kernel Parameter: shmmni" succeeded on node "ol59b", expected value: 4096 actual value: Current=4096; Configured=4096.
Cluster Verification check "OS Kernel Parameter: shmmni" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the OS kernel parameter "shmmni" is properly set.
Cluster Verification Check "OS Kernel Parameter: shmall" succeeded on node "ol59a", expected value: 308920 actual value: Current=1073741824; Configured=1073741824.
Cluster Verification Check "OS Kernel Parameter: shmall" succeeded on node "ol59b", expected value: 308920 actual value: Current=4294967296; Configured=4294967296.
Cluster Verification check "OS Kernel Parameter: shmall" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the OS kernel parameter "shmall" is properly set.
Cluster Verification Check "OS Kernel Parameter: file-max" succeeded on node "ol59a", expected value: 6815744 actual value: Current=6815744; Configured=6815744.
Cluster Verification Check "OS Kernel Parameter: file-max" succeeded on node "ol59b", expected value: 6815744 actual value: Current=6815744; Configured=6815744.
Cluster Verification check "OS Kernel Parameter: file-max" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the OS kernel parameter "file-max" is properly set.
Cluster Verification Check "OS Kernel Parameter: ip_local_port_range" succeeded on node "ol59a", expected value: between 9000 & 65535 actual value: Current=between 9000 & 65500; Configured=between 9000 & 65500.
Cluster Verification Check "OS Kernel Parameter: ip_local_port_range" succeeded on node "ol59b", expected value: between 9000 & 65535 actual value: Current=between 9000 & 65535; Configured=between 9000 & 65535.
Cluster Verification check "OS Kernel Parameter: ip_local_port_range" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the OS kernel parameter "ip_local_port_range" is properly set.
Cluster Verification Check "OS Kernel Parameter: rmem_default" succeeded on node "ol59a", expected value: 262144 actual value: Current=262144; Configured=262144.
Cluster Verification Check "OS Kernel Parameter: rmem_default" succeeded on node "ol59b", expected value: 262144 actual value: Current=262144; Configured=262144.
Cluster Verification check "OS Kernel Parameter: rmem_default" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the OS kernel parameter "rmem_default" is properly set.
Cluster Verification Check "OS Kernel Parameter: rmem_max" succeeded on node "ol59a", expected value: 4194304 actual value: Current=4194304; Configured=4194304.
Cluster Verification Check "OS Kernel Parameter: rmem_max" succeeded on node "ol59b", expected value: 4194304 actual value: Current=4194304; Configured=4194304.
Cluster Verification check "OS Kernel Parameter: rmem_max" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the OS kernel parameter "rmem_max" is properly set.
Cluster Verification Check "OS Kernel Parameter: wmem_default" succeeded on node "ol59a", expected value: 262144 actual value: Current=262144; Configured=262144.
Cluster Verification Check "OS Kernel Parameter: wmem_default" succeeded on node "ol59b", expected value: 262144 actual value: Current=262144; Configured=262144.
Cluster Verification check "OS Kernel Parameter: wmem_default" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the OS kernel parameter "wmem_default" is properly set.
Cluster Verification Check "OS Kernel Parameter: wmem_max" succeeded on node "ol59a", expected value: 1048576 actual value: Current=1048576; Configured=1048576.
Cluster Verification Check "OS Kernel Parameter: wmem_max" succeeded on node "ol59b", expected value: 1048576 actual value: Current=1048576; Configured=1048576.
Cluster Verification check "OS Kernel Parameter: wmem_max" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the OS kernel parameter "wmem_max" is properly set.
Cluster Verification Check "OS Kernel Parameter: aio-max-nr" succeeded on node "ol59a", expected value: 1048576 actual value: Current=3145728; Configured=3145728.
Cluster Verification Check "OS Kernel Parameter: aio-max-nr" succeeded on node "ol59b", expected value: 1048576 actual value: Current=1048576; Configured=1048576.
Cluster Verification check "OS Kernel Parameter: aio-max-nr" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the OS kernel parameter "aio-max-nr" is properly set.
Cluster Verification Check "Package: make-3.81" succeeded on node "ol59a", expected value: make-3.81 actual value: make-3.81-3.el5.
Cluster Verification Check "Package: make-3.81" succeeded on node "ol59b", expected value: make-3.81 actual value: make-3.81-3.el5.
Cluster Verification check "Package: make-3.81" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the package "make-3.81" is available on the system.
Cluster Verification Check "Package: binutils-2.17.50.0.6" succeeded on node "ol59a", expected value: binutils-2.17.50.0.6 actual value: binutils-2.17.50.0.6-20.el5_8.3.
Cluster Verification Check "Package: binutils-2.17.50.0.6" succeeded on node "ol59b", expected value: binutils-2.17.50.0.6 actual value: binutils-2.17.50.0.6-20.el5_8.3.
Cluster Verification check "Package: binutils-2.17.50.0.6" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the package "binutils-2.17.50.0.6" is available on the system.
Cluster Verification Check "Package: gcc-4.1.2 (x86_64)" succeeded on node "ol59a", expected value: gcc(x86_64)-4.1.2 actual value: gcc(x86_64)-4.1.2-54.el5.
Cluster Verification Check "Package: gcc-4.1.2 (x86_64)" succeeded on node "ol59b", expected value: gcc(x86_64)-4.1.2 actual value: gcc(x86_64)-4.1.2-54.el5.
Cluster Verification check "Package: gcc-4.1.2 (x86_64)" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the package "gcc-4.1.2 (x86_64)" is available on the system.
Cluster Verification Check "Package: libaio-0.3.106 (x86_64)" succeeded on node "ol59a", expected value: libaio(x86_64)-0.3.106 actual value: libaio(x86_64)-0.3.106-5.
Cluster Verification Check "Package: libaio-0.3.106 (x86_64)" succeeded on node "ol59b", expected value: libaio(x86_64)-0.3.106 actual value: libaio(x86_64)-0.3.106-5.
Cluster Verification check "Package: libaio-0.3.106 (x86_64)" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the package "libaio-0.3.106 (x86_64)" is available on the system.
Cluster Verification Check "Package: glibc-2.5-58 (x86_64)" succeeded on node "ol59a", expected value: glibc(x86_64)-2.5-58 actual value: glibc(x86_64)-2.5-107.
Cluster Verification Check "Package: glibc-2.5-58 (x86_64)" succeeded on node "ol59b", expected value: glibc(x86_64)-2.5-58 actual value: glibc(x86_64)-2.5-107.
Cluster Verification check "Package: glibc-2.5-58 (x86_64)" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the package "glibc-2.5-58 (x86_64)" is available on the system.
Cluster Verification Check "Package: compat-libstdc++-33-3.2.3 (x86_64)" succeeded on node "ol59a", expected value: compat-libstdc++-33(x86_64)-3.2.3 actual value: compat-libstdc++-33(x86_64)-3.2.3-61.
Cluster Verification Check "Package: compat-libstdc++-33-3.2.3 (x86_64)" succeeded on node "ol59b", expected value: compat-libstdc++-33(x86_64)-3.2.3 actual value: compat-libstdc++-33(x86_64)-3.2.3-61.
Cluster Verification check "Package: compat-libstdc++-33-3.2.3 (x86_64)" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the package "compat-libstdc++-33-3.2.3 (x86_64)" is available on the system.
Cluster Verification Check "Package: glibc-devel-2.5 (x86_64)" succeeded on node "ol59a", expected value: glibc-devel(x86_64)-2.5 actual value: glibc-devel(x86_64)-2.5-107.
Cluster Verification Check "Package: glibc-devel-2.5 (x86_64)" succeeded on node "ol59b", expected value: glibc-devel(x86_64)-2.5 actual value: glibc-devel(x86_64)-2.5-107.
Cluster Verification check "Package: glibc-devel-2.5 (x86_64)" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the package "glibc-devel-2.5 (x86_64)" is available on the system.
Cluster Verification Check "Package: gcc-c++-4.1.2 (x86_64)" succeeded on node "ol59a", expected value: gcc-c++(x86_64)-4.1.2 actual value: gcc-c++(x86_64)-4.1.2-54.el5.
Cluster Verification Check "Package: gcc-c++-4.1.2 (x86_64)" succeeded on node "ol59b", expected value: gcc-c++(x86_64)-4.1.2 actual value: gcc-c++(x86_64)-4.1.2-54.el5.
Cluster Verification check "Package: gcc-c++-4.1.2 (x86_64)" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the package "gcc-c++-4.1.2 (x86_64)" is available on the system.
Cluster Verification Check "Package: libaio-devel-0.3.106 (x86_64)" succeeded on node "ol59a", expected value: libaio-devel(x86_64)-0.3.106 actual value: libaio-devel(x86_64)-0.3.106-5.
Cluster Verification Check "Package: libaio-devel-0.3.106 (x86_64)" succeeded on node "ol59b", expected value: libaio-devel(x86_64)-0.3.106 actual value: libaio-devel(x86_64)-0.3.106-5.
Cluster Verification check "Package: libaio-devel-0.3.106 (x86_64)" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the package "libaio-devel-0.3.106 (x86_64)" is available on the system.
Cluster Verification Check "Package: libgcc-4.1.2 (x86_64)" succeeded on node "ol59a", expected value: libgcc(x86_64)-4.1.2 actual value: libgcc(x86_64)-4.1.2-54.el5.
Cluster Verification Check "Package: libgcc-4.1.2 (x86_64)" succeeded on node "ol59b", expected value: libgcc(x86_64)-4.1.2 actual value: libgcc(x86_64)-4.1.2-54.el5.
Cluster Verification check "Package: libgcc-4.1.2 (x86_64)" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the package "libgcc-4.1.2 (x86_64)" is available on the system.
Cluster Verification Check "Package: libstdc++-4.1.2 (x86_64)" succeeded on node "ol59a", expected value: libstdc++(x86_64)-4.1.2 actual value: libstdc++(x86_64)-4.1.2-54.el5.
Cluster Verification Check "Package: libstdc++-4.1.2 (x86_64)" succeeded on node "ol59b", expected value: libstdc++(x86_64)-4.1.2 actual value: libstdc++(x86_64)-4.1.2-54.el5.
Cluster Verification check "Package: libstdc++-4.1.2 (x86_64)" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the package "libstdc++-4.1.2 (x86_64)" is available on the system.
Cluster Verification Check "Package: libstdc++-devel-4.1.2 (x86_64)" succeeded on node "ol59a", expected value: libstdc++-devel(x86_64)-4.1.2 actual value: libstdc++-devel(x86_64)-4.1.2-54.el5.
Cluster Verification Check "Package: libstdc++-devel-4.1.2 (x86_64)" succeeded on node "ol59b", expected value: libstdc++-devel(x86_64)-4.1.2 actual value: libstdc++-devel(x86_64)-4.1.2-54.el5.
Cluster Verification check "Package: libstdc++-devel-4.1.2 (x86_64)" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the package "libstdc++-devel-4.1.2 (x86_64)" is available on the system.
Cluster Verification Check "Package: sysstat-7.0.2" succeeded on node "ol59a", expected value: sysstat-7.0.2 actual value: sysstat-7.0.2-12.0.1.el5.
Cluster Verification Check "Package: sysstat-7.0.2" succeeded on node "ol59b", expected value: sysstat-7.0.2 actual value: sysstat-7.0.2-12.0.1.el5.
Cluster Verification check "Package: sysstat-7.0.2" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the package "sysstat-7.0.2" is available on the system.
Cluster Verification Check "Package: ksh-..." succeeded on node "ol59a", expected value: ksh-... actual value: ksh-20100621-12.el5.
Cluster Verification Check "Package: ksh-..." succeeded on node "ol59b", expected value: ksh-... actual value: ksh-20100621-12.el5.
Cluster Verification check "Package: ksh-..." succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the package "ksh-..." is available on the system.
Cluster Verification check "Users With Same UID" succeeded on nodes: ol59a,ol59b.
This test checks that multiple users do not exist with user id as "0".
Cluster Verification check "Current Group ID" succeeded on nodes: ol59a,ol59b.
This test verifies that the user is currently logged in to the user's primary group.
Cluster Verification check "Root user consistency" succeeded on nodes: ol59a,ol59b.
This test checks the consistency of the primary group of the root user across the cluster nodes
Cluster Verification check "CRS Integrity" succeeded on nodes: ol59a,ol59b.
This test checks the integrity of Oracle Clusterware stack across the cluster nodes.
Cluster Verification check "Node Application Existence" succeeded on nodes: ol59a,ol59b.
This test checks the existence of Node Applications on the system.
Cluster Verification check "Time zone consistency" succeeded on nodes: ol59a,ol59b.
This task checks for the consistency of time zones across systems.

Cluster Verification check "Node Connectivity" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether connectivity exists amongst all the nodes. The connectivity is being tested for the subnets "192.168.1.0,10.0.0.0"
Cluster Verification check "Multicast check" succeeded on nodes: ol59a,ol59b.
This task checks that network interfaces in subnet are able to communicate over multicast IP address
Cluster Verification Check "Physical Memory" succeeded on node "ol59a", expected value: 1GB (1048576.0KB) actual value: 2.9461GB (3089208.0KB).
Cluster Verification Check "Physical Memory" succeeded on node "ol59b", expected value: 1GB (1048576.0KB) actual value: 2.9461GB (3089208.0KB).
Cluster Verification check "Physical Memory" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the system has at least 1GB (1048576.0KB) of total physical memory.
Cluster Verification Check "Available Physical Memory" succeeded on node "ol59a", expected value: 50MB (51200.0KB) actual value: 2.3107GB (2422936.0KB).
Cluster Verification Check "Available Physical Memory" succeeded on node "ol59b", expected value: 50MB (51200.0KB) actual value: 2.3824GB (2498168.0KB).
Cluster Verification check "Available Physical Memory" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the system has at least 50MB (51200.0KB) of available physical memory.
Cluster Verification Check "Swap Size" succeeded on node "ol59b", expected value: 2.9461GB (3089208.0KB) actual value: 3.9062GB (4095996.0KB).
Cluster Verification Check "Swap Size" failed on node "ol59a", expected value: 2.9461GB (3089208.0KB) actual value: 1.9687GB (2064380.0KB).
PRVF-7573 : Sufficient swap size is not available on node "ol59a" [Required = 2.9461GB (3089208.0KB) ; Found = 1.9687GB (2064380.0KB)]
Cluster Verification check failed on nodes: ol59a.
This is a prerequisite condition to test whether sufficient total swap space is available on the system.
Cluster Verification Check "Free Space: ol59b:/tmp" succeeded on node "ol59b", expected value: 1GB  actual value: 2.4834GB .
Cluster Verification check "Free Space: ol59b:/tmp" succeeded on nodes: ol59b.
This is a prerequisite condition to test whether sufficient free space is available in the file system.
Cluster Verification Check "Free Space: ol59a:/tmp" succeeded on node "ol59a", expected value: 1GB  actual value: 3.9453GB .
Cluster Verification check "Free Space: ol59a:/tmp" succeeded on nodes: ol59a.
This is a prerequisite condition to test whether sufficient free space is available in the file system.
Cluster Verification check "User Existence: oracle" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether user "oracle" exists on the system.
Cluster Verification Check "Run Level" succeeded on node "ol59a", expected value: 3,5 actual value: 5.
Cluster Verification Check "Run Level" succeeded on node "ol59b", expected value: 3,5 actual value: 5.
Cluster Verification check "Run Level" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the system is running with proper run level.
Cluster Verification Check "Hard Limit: maximum open file descriptors" succeeded on node "ol59a", expected value: 65536 actual value: 131072.
Cluster Verification Check "Hard Limit: maximum open file descriptors" succeeded on node "ol59b", expected value: 65536 actual value: 65536.
Cluster Verification check "Hard Limit: maximum open file descriptors" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the hard limit for "maximum open file descriptors" is set correctly.
Cluster Verification Check "Soft Limit: maximum open file descriptors" succeeded on node "ol59a", expected value: 1024 actual value: 131072.
Cluster Verification Check "Soft Limit: maximum open file descriptors" succeeded on node "ol59b", expected value: 1024 actual value: 1024.
Cluster Verification check "Soft Limit: maximum open file descriptors" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the soft limit for "maximum open file descriptors" is set correctly.
Cluster Verification Check "Hard Limit: maximum user processes" succeeded on node "ol59a", expected value: 16384 actual value: 131072.
Cluster Verification Check "Hard Limit: maximum user processes" succeeded on node "ol59b", expected value: 16384 actual value: 16384.
Cluster Verification check "Hard Limit: maximum user processes" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the hard limit for "maximum user processes" is set correctly.
Cluster Verification Check "Soft Limit: maximum user processes" succeeded on node "ol59a", expected value: 2047 actual value: 131072.
Cluster Verification Check "Soft Limit: maximum user processes" succeeded on node "ol59b", expected value: 2047 actual value: 16384.
Cluster Verification check "Soft Limit: maximum user processes" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the soft limit for "maximum user processes" is set correctly.
Cluster Verification Check "Architecture" succeeded on node "ol59a", expected value: x86_64 actual value: x86_64.
Cluster Verification Check "Architecture" succeeded on node "ol59b", expected value: x86_64 actual value: x86_64.
Cluster Verification check "Architecture" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the system has a certified architecture.
Cluster Verification Check "OS Kernel Version" succeeded on node "ol59a", expected value: 2.6.18 actual value: 2.6.39-400.109.4.el5uek.
Cluster Verification Check "OS Kernel Version" succeeded on node "ol59b", expected value: 2.6.18 actual value: 2.6.39-400.109.4.el5uek.
Cluster Verification check "OS Kernel Version" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the system kernel version is at least "2.6.18".
Cluster Verification Check "OS Kernel Parameter: semmsl" succeeded on node "ol59a", expected value: 250 actual value: Current=250; Configured=250.
Cluster Verification Check "OS Kernel Parameter: semmsl" succeeded on node "ol59b", expected value: 250 actual value: Current=250; Configured=250.
Cluster Verification check "OS Kernel Parameter: semmsl" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the OS kernel parameter "semmsl" is properly set.
Cluster Verification Check "OS Kernel Parameter: semmns" succeeded on node "ol59a", expected value: 32000 actual value: Current=32000; Configured=32000.
Cluster Verification Check "OS Kernel Parameter: semmns" succeeded on node "ol59b", expected value: 32000 actual value: Current=32000; Configured=32000.
Cluster Verification check "OS Kernel Parameter: semmns" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the OS kernel parameter "semmns" is properly set.
Cluster Verification Check "OS Kernel Parameter: semopm" succeeded on node "ol59a", expected value: 100 actual value: Current=100; Configured=100.
Cluster Verification Check "OS Kernel Parameter: semopm" succeeded on node "ol59b", expected value: 100 actual value: Current=100; Configured=100.
Cluster Verification check "OS Kernel Parameter: semopm" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the OS kernel parameter "semopm" is properly set.
Cluster Verification Check "OS Kernel Parameter: semmni" succeeded on node "ol59a", expected value: 128 actual value: Current=142; Configured=142.
Cluster Verification Check "OS Kernel Parameter: semmni" succeeded on node "ol59b", expected value: 128 actual value: Current=128; Configured=128.
Cluster Verification check "OS Kernel Parameter: semmni" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the OS kernel parameter "semmni" is properly set.
Cluster Verification Check "OS Kernel Parameter: shmmax" succeeded on node "ol59a", expected value: 1581674496 actual value: Current=4398046511104; Configured=4398046511104.
Cluster Verification Check "OS Kernel Parameter: shmmax" succeeded on node "ol59b", expected value: 1581674496 actual value: Current=68719476736; Configured=68719476736.
Cluster Verification check "OS Kernel Parameter: shmmax" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the OS kernel parameter "shmmax" is properly set.
Cluster Verification Check "OS Kernel Parameter: shmmni" succeeded on node "ol59a", expected value: 4096 actual value: Current=4096; Configured=4096.
Cluster Verification Check "OS Kernel Parameter: shmmni" succeeded on node "ol59b", expected value: 4096 actual value: Current=4096; Configured=4096.
Cluster Verification check "OS Kernel Parameter: shmmni" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the OS kernel parameter "shmmni" is properly set.
Cluster Verification Check "OS Kernel Parameter: shmall" succeeded on node "ol59a", expected value: 308920 actual value: Current=1073741824; Configured=1073741824.
Cluster Verification Check "OS Kernel Parameter: shmall" succeeded on node "ol59b", expected value: 308920 actual value: Current=4294967296; Configured=4294967296.
Cluster Verification check "OS Kernel Parameter: shmall" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the OS kernel parameter "shmall" is properly set.
Cluster Verification Check "OS Kernel Parameter: file-max" succeeded on node "ol59a", expected value: 6815744 actual value: Current=6815744; Configured=6815744.
Cluster Verification Check "OS Kernel Parameter: file-max" succeeded on node "ol59b", expected value: 6815744 actual value: Current=6815744; Configured=6815744.
Cluster Verification check "OS Kernel Parameter: file-max" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the OS kernel parameter "file-max" is properly set.
Cluster Verification Check "OS Kernel Parameter: ip_local_port_range" succeeded on node "ol59a", expected value: between 9000 & 65535 actual value: Current=between 9000 & 65500; Configured=between 9000 & 65500.
Cluster Verification Check "OS Kernel Parameter: ip_local_port_range" succeeded on node "ol59b", expected value: between 9000 & 65535 actual value: Current=between 9000 & 65535; Configured=between 9000 & 65535.
Cluster Verification check "OS Kernel Parameter: ip_local_port_range" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the OS kernel parameter "ip_local_port_range" is properly set.
Cluster Verification Check "OS Kernel Parameter: rmem_default" succeeded on node "ol59a", expected value: 262144 actual value: Current=262144; Configured=262144.
Cluster Verification Check "OS Kernel Parameter: rmem_default" succeeded on node "ol59b", expected value: 262144 actual value: Current=262144; Configured=262144.
Cluster Verification check "OS Kernel Parameter: rmem_default" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the OS kernel parameter "rmem_default" is properly set.
Cluster Verification Check "OS Kernel Parameter: rmem_max" succeeded on node "ol59a", expected value: 4194304 actual value: Current=4194304; Configured=4194304.
Cluster Verification Check "OS Kernel Parameter: rmem_max" succeeded on node "ol59b", expected value: 4194304 actual value: Current=4194304; Configured=4194304.
Cluster Verification check "OS Kernel Parameter: rmem_max" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the OS kernel parameter "rmem_max" is properly set.
Cluster Verification Check "OS Kernel Parameter: wmem_default" succeeded on node "ol59a", expected value: 262144 actual value: Current=262144; Configured=262144.
Cluster Verification Check "OS Kernel Parameter: wmem_default" succeeded on node "ol59b", expected value: 262144 actual value: Current=262144; Configured=262144.
Cluster Verification check "OS Kernel Parameter: wmem_default" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the OS kernel parameter "wmem_default" is properly set.
Cluster Verification Check "OS Kernel Parameter: wmem_max" succeeded on node "ol59a", expected value: 1048576 actual value: Current=1048576; Configured=1048576.
Cluster Verification Check "OS Kernel Parameter: wmem_max" succeeded on node "ol59b", expected value: 1048576 actual value: Current=1048576; Configured=1048576.
Cluster Verification check "OS Kernel Parameter: wmem_max" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the OS kernel parameter "wmem_max" is properly set.
Cluster Verification Check "OS Kernel Parameter: aio-max-nr" succeeded on node "ol59a", expected value: 1048576 actual value: Current=3145728; Configured=3145728.
Cluster Verification Check "OS Kernel Parameter: aio-max-nr" succeeded on node "ol59b", expected value: 1048576 actual value: Current=1048576; Configured=1048576.
Cluster Verification check "OS Kernel Parameter: aio-max-nr" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the OS kernel parameter "aio-max-nr" is properly set.
Cluster Verification Check "Package: make-3.81" succeeded on node "ol59a", expected value: make-3.81 actual value: make-3.81-3.el5.
Cluster Verification Check "Package: make-3.81" succeeded on node "ol59b", expected value: make-3.81 actual value: make-3.81-3.el5.
Cluster Verification check "Package: make-3.81" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the package "make-3.81" is available on the system.
Cluster Verification Check "Package: binutils-2.17.50.0.6" succeeded on node "ol59a", expected value: binutils-2.17.50.0.6 actual value: binutils-2.17.50.0.6-20.el5_8.3.
Cluster Verification Check "Package: binutils-2.17.50.0.6" succeeded on node "ol59b", expected value: binutils-2.17.50.0.6 actual value: binutils-2.17.50.0.6-20.el5_8.3.
Cluster Verification check "Package: binutils-2.17.50.0.6" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the package "binutils-2.17.50.0.6" is available on the system.
Cluster Verification Check "Package: gcc-4.1.2 (x86_64)" succeeded on node "ol59a", expected value: gcc(x86_64)-4.1.2 actual value: gcc(x86_64)-4.1.2-54.el5.
Cluster Verification Check "Package: gcc-4.1.2 (x86_64)" succeeded on node "ol59b", expected value: gcc(x86_64)-4.1.2 actual value: gcc(x86_64)-4.1.2-54.el5.
Cluster Verification check "Package: gcc-4.1.2 (x86_64)" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the package "gcc-4.1.2 (x86_64)" is available on the system.
Cluster Verification Check "Package: libaio-0.3.106 (x86_64)" succeeded on node "ol59a", expected value: libaio(x86_64)-0.3.106 actual value: libaio(x86_64)-0.3.106-5.
Cluster Verification Check "Package: libaio-0.3.106 (x86_64)" succeeded on node "ol59b", expected value: libaio(x86_64)-0.3.106 actual value: libaio(x86_64)-0.3.106-5.
Cluster Verification check "Package: libaio-0.3.106 (x86_64)" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the package "libaio-0.3.106 (x86_64)" is available on the system.
Cluster Verification Check "Package: glibc-2.5-58 (x86_64)" succeeded on node "ol59a", expected value: glibc(x86_64)-2.5-58 actual value: glibc(x86_64)-2.5-107.
Cluster Verification Check "Package: glibc-2.5-58 (x86_64)" succeeded on node "ol59b", expected value: glibc(x86_64)-2.5-58 actual value: glibc(x86_64)-2.5-107.
Cluster Verification check "Package: glibc-2.5-58 (x86_64)" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the package "glibc-2.5-58 (x86_64)" is available on the system.
Cluster Verification Check "Package: compat-libstdc++-33-3.2.3 (x86_64)" succeeded on node "ol59a", expected value: compat-libstdc++-33(x86_64)-3.2.3 actual value: compat-libstdc++-33(x86_64)-3.2.3-61.
Cluster Verification Check "Package: compat-libstdc++-33-3.2.3 (x86_64)" succeeded on node "ol59b", expected value: compat-libstdc++-33(x86_64)-3.2.3 actual value: compat-libstdc++-33(x86_64)-3.2.3-61.
Cluster Verification check "Package: compat-libstdc++-33-3.2.3 (x86_64)" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the package "compat-libstdc++-33-3.2.3 (x86_64)" is available on the system.
Cluster Verification Check "Package: glibc-devel-2.5 (x86_64)" succeeded on node "ol59a", expected value: glibc-devel(x86_64)-2.5 actual value: glibc-devel(x86_64)-2.5-107.
Cluster Verification Check "Package: glibc-devel-2.5 (x86_64)" succeeded on node "ol59b", expected value: glibc-devel(x86_64)-2.5 actual value: glibc-devel(x86_64)-2.5-107.
Cluster Verification check "Package: glibc-devel-2.5 (x86_64)" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the package "glibc-devel-2.5 (x86_64)" is available on the system.
Cluster Verification Check "Package: gcc-c++-4.1.2 (x86_64)" succeeded on node "ol59a", expected value: gcc-c++(x86_64)-4.1.2 actual value: gcc-c++(x86_64)-4.1.2-54.el5.
Cluster Verification Check "Package: gcc-c++-4.1.2 (x86_64)" succeeded on node "ol59b", expected value: gcc-c++(x86_64)-4.1.2 actual value: gcc-c++(x86_64)-4.1.2-54.el5.
Cluster Verification check "Package: gcc-c++-4.1.2 (x86_64)" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the package "gcc-c++-4.1.2 (x86_64)" is available on the system.
Cluster Verification Check "Package: libaio-devel-0.3.106 (x86_64)" succeeded on node "ol59a", expected value: libaio-devel(x86_64)-0.3.106 actual value: libaio-devel(x86_64)-0.3.106-5.
Cluster Verification Check "Package: libaio-devel-0.3.106 (x86_64)" succeeded on node "ol59b", expected value: libaio-devel(x86_64)-0.3.106 actual value: libaio-devel(x86_64)-0.3.106-5.
Cluster Verification check "Package: libaio-devel-0.3.106 (x86_64)" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the package "libaio-devel-0.3.106 (x86_64)" is available on the system.
Cluster Verification Check "Package: libgcc-4.1.2 (x86_64)" succeeded on node "ol59a", expected value: libgcc(x86_64)-4.1.2 actual value: libgcc(x86_64)-4.1.2-54.el5.
Cluster Verification Check "Package: libgcc-4.1.2 (x86_64)" succeeded on node "ol59b", expected value: libgcc(x86_64)-4.1.2 actual value: libgcc(x86_64)-4.1.2-54.el5.
Cluster Verification check "Package: libgcc-4.1.2 (x86_64)" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the package "libgcc-4.1.2 (x86_64)" is available on the system.
Cluster Verification Check "Package: libstdc++-4.1.2 (x86_64)" succeeded on node "ol59a", expected value: libstdc++(x86_64)-4.1.2 actual value: libstdc++(x86_64)-4.1.2-54.el5.
Cluster Verification Check "Package: libstdc++-4.1.2 (x86_64)" succeeded on node "ol59b", expected value: libstdc++(x86_64)-4.1.2 actual value: libstdc++(x86_64)-4.1.2-54.el5.
Cluster Verification check "Package: libstdc++-4.1.2 (x86_64)" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the package "libstdc++-4.1.2 (x86_64)" is available on the system.
Cluster Verification Check "Package: libstdc++-devel-4.1.2 (x86_64)" succeeded on node "ol59a", expected value: libstdc++-devel(x86_64)-4.1.2 actual value: libstdc++-devel(x86_64)-4.1.2-54.el5.
Cluster Verification Check "Package: libstdc++-devel-4.1.2 (x86_64)" succeeded on node "ol59b", expected value: libstdc++-devel(x86_64)-4.1.2 actual value: libstdc++-devel(x86_64)-4.1.2-54.el5.
Cluster Verification check "Package: libstdc++-devel-4.1.2 (x86_64)" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the package "libstdc++-devel-4.1.2 (x86_64)" is available on the system.
Cluster Verification Check "Package: sysstat-7.0.2" succeeded on node "ol59a", expected value: sysstat-7.0.2 actual value: sysstat-7.0.2-12.0.1.el5.
Cluster Verification Check "Package: sysstat-7.0.2" succeeded on node "ol59b", expected value: sysstat-7.0.2 actual value: sysstat-7.0.2-12.0.1.el5.
Cluster Verification check "Package: sysstat-7.0.2" succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the package "sysstat-7.0.2" is available on the system.
Cluster Verification Check "Package: ksh-..." succeeded on node "ol59a", expected value: ksh-... actual value: ksh-20100621-12.el5.
Cluster Verification Check "Package: ksh-..." succeeded on node "ol59b", expected value: ksh-... actual value: ksh-20100621-12.el5.
Cluster Verification check "Package: ksh-..." succeeded on nodes: ol59a,ol59b.
This is a prerequisite condition to test whether the package "ksh-..." is available on the system.
Cluster Verification check "Users With Same UID" succeeded on nodes: ol59a,ol59b.
This test checks that multiple users do not exist with user id as "0".
Cluster Verification check "Current Group ID" succeeded on nodes: ol59a,ol59b.
This test verifies that the user is currently logged in to the user's primary group.
Cluster Verification check "Root user consistency" succeeded on nodes: ol59a,ol59b.
This test checks the consistency of the primary group of the root user across the cluster nodes
Cluster Verification check "CRS Integrity" succeeded on nodes: ol59a,ol59b.
This test checks the integrity of Oracle Clusterware stack across the cluster nodes.
Cluster Verification check "Node Application Existence" succeeded on nodes: ol59a,ol59b.
This test checks the existence of Node Applications on the system.
Cluster Verification check "Time zone consistency" succeeded on nodes: ol59a,ol59b.
This task checks for the consistency of time zones across systems.

Unique database identifier check passed.
Validation of server pool succeeded.
Default listener validation succeeded.
Scan listener validation succeeded.

+DATA is  shared across the cluster nodes.
+FRA is  shared across the cluster nodes.
+FRA has enough space. Required space is 5625 MB , available space is 7628 MB.
+DATA has enough space. Required space is 4645 MB , available space is 27912 MB.
File Validations Successful.
Copying database files
DBCA_PROGRESS : 1%
DBCA_PROGRESS : 2%
DBCA_PROGRESS : 23%
Creating and starting Oracle instance
DBCA_PROGRESS : 24%
DBCA_PROGRESS : 27%
DBCA_PROGRESS : 28%
DBCA_PROGRESS : 29%
DBCA_PROGRESS : 32%
DBCA_PROGRESS : 35%
DBCA_PROGRESS : 36%
DBCA_PROGRESS : 38%
Creating cluster database views
DBCA_PROGRESS : 40%
DBCA_PROGRESS : 54%
Completing Database Creation
DBCA_PROGRESS : 56%
DBCA_PROGRESS : 58%
DBCA_PROGRESS : 65%
DBCA_PROGRESS : 67%
DBCA_PROGRESS : 74%
DBCA_PROGRESS : 77%
Creating Pluggable Databases
DBCA_PROGRESS : 81%
DBCA_PROGRESS : 86%
DBCA_PROGRESS : 100%
Database creation complete. For details check the logfiles at:
 /u01/app/oracle/cfgtoollogs/dbca/TEST.
Database Information:
Global Database Name:TEST
System Identifier(SID) Prefix:TEST

Let’s first look at the delete database syntax for Oracle Database 12c:

$ dbca -deleteDatabase -help
Delete a database by specifying the following parameters:
        -deleteDatabase
                -sourceDB    <Database unique name for RAC Database and SID for Single Instance Database>
                [-sid    <local instance_name of source database>]
                [-sysDBAUserName     <user name  with SYSDBA privileges>
                 -sysDBAPassword     <password for sysDBAUserName user name>]
                [-emConfiguration <DBEXPRESS|CENTRAL|BOTH|NONE>]
                        [-omsHost     <Enterprise Manager central agent home>
                        -omsPort     <Enterprise Manager central agent port>
                        -emUser     <Host user name for EM backup job>
                        -emPassword     <Host user password for EM backup job>]]

To easily delete/drop a database, invoke dbca with the -deleteDatabase and sourceDB options. Make sure that you look the log file after to make sure that there were no oracle generated errors.

$ dbca -silent -deleteDatabase -sourceDB DBATOOLS -sysDBAUserName sys -sysDBAPassword xxx4DBA

Connecting to database
4% complete
9% complete
14% complete
19% complete
23% complete
28% complete
47% complete
Updating network configuration files
52% complete
Deleting instance and datafiles
76% complete
100% complete
Look at the log file "/apps/oracle/cfgtoollogs/dbca/DBATOOLS.log" for further details.

The options in Oracle Database 12c have increased and the scripts that I used to deploy databases with 10.2, 11.1, and 11.2 do not seem to work in 12.1. In the upcoming days, my goal is to change my scripts so that they are compatible with 12.1.

Even how the help pages work with dbca have changed. The initial help output only displays summary level commands.

[oracle@ol59a scripts]$ cd /u01/app/oracle/product/12.1.0/dbhome_1/
[oracle@ol59a dbhome_1]$ cd bin
[oracle@ol59a bin]$ ./dbca -help

dbca  [-silent | -progressOnly] {<command> <options> }  | { [<command> [options] ] -responseFile  <response file > } [-continueOnNonFatalErrors <true | false>]

 <command> : -createDatabase | -configureDatabase | -createTemplateFromDB | -createCloneTemplate | -generateScripts | -deleteDatabase | -createPluggableDatabase | -unplugDatabase | -deletePluggableDatabase | -configurePluggableDatabase


Enter "dbca -<command> -help" for more option

Like srvctl and crsctl help commands, we have to drill down to the next parameter of interest and probe for additional help. Here’s an example of getting additional details for the createDatabase option:

[oracle@ol59a bin]$ ./dbca -createDatabase -help
Create a database by specifying the following parameters:
	-createDatabase
		-templateName <name of an existing template in default location or the complete template path>
		[-cloneTemplate]
		-gdbName <global database name>
		[-ignorePreReqs] <ignore prerequisite checks for current operation>
		[-RACOneNode 
			-RACOneNodeServiceName  <Service name for the service to be created for RAC One Node database.>]
		[-policyManaged | -adminManaged <Policy managed or Admin managed Database, default is Admin managed database>]
			[-createServerPool <To create Server Pool which will be used by the database to be created>]
			[-force <To create server pool by force when adequate free servers are not available. This may affect already running database>]
			-serverPoolName <Specify single server pool name in case of create server pool and comma separated list in case of existing server pools>
			-[cardinality <Specify cardinality for new server pool to be created, default is the number of qualified nodes>]
		[-runCVUChecks <Specify "true" in order to run Cluster Verification Utility checks periodically in Cluster environment>]
		[-sid <database system identifier prefix>]
		[-createAsContainerDatabase <true|false>
			[-numberOfPDBs <Number of Pluggable databases to be created, default is 0>]
			[-pdbName <New Pluggable Database Name>]
		[-sysPassword <SYS user password>]
		[-systemPassword <SYSTEM user password>]
		[-emConfiguration <DBEXPRESS|CENTRAL|BOTH|NONE>]
			-dbsnmpPassword     <DBSNMP user password>
			[-omsHost     <EM management server host name>
			-omsPort     <EM management server port number>
			-emUser     <EM Admin username to add or modify targets>
			-emPassword     <EM Admin user password>]]
		[-dvConfiguration <true | false Specify "true" to configure and enable Database Vault 
			-dvUserName     <Specify Database Vault Owner user name>
			-dvUserPassword     <Specify Database Vault Owner password>
			-dvAccountManagerName     <Specify separate Database Vault Account Manager >
			-dvAccountManagerPassword     <Specify Database Vault Account Manager password>]
		[-olsConfiguration <true | false Specify "true" to configure and enable Oracle Label Security >
		[-datafileDestination <destination directory for all database files> | 
 -datafileNames <a text file containing database objects such as controlfiles, tablespaces, redo log files and spfile to their corresponding raw device file names mappings in name=value format.>]
		[-redoLogFileSize <size of each redo log file in megabytes>]
		[-recoveryAreaDestination <destination directory for all recovery files>]
		[-datafileJarLocation  <location of the data file jar, used only for clone database creation>]
		[-storageType < CFS | ASM > 
			[-asmsnmpPassword     <ASMSNMP password for ASM monitoring>]
			 -diskGroupName   <database area disk group name>
			 -recoveryGroupName       <recovery area disk group name>
		[-nodelist <node names separated by comma for the database>]
		[-characterSet <character set for the database>]
		[-nationalCharacterSet  <national character set for the database>]
		[-registerWithDirService <true | false> 
			-dirServiceUserName    <user name for directory service>
			-dirServicePassword    <password for directory service >
			-walletPassword    <password for database wallet >]
		[-listeners  <list of listeners to configure the database with>]
		[-variablesFile   <file name for the variable-value pair for variables in the template>]]
		[-variables  <comma separated list of name=value pairs>]
		[-initParams <comma separated list of name=value pairs>]
		[-sampleSchema  <true | false> ]
		[-memoryPercentage <percentage of physical memory for Oracle>]
		[-automaticMemoryManagement ]
		[-totalMemory <memory allocated for Oracle in MB>]
		[-databaseType <MULTIPURPOSE|DATA_WAREHOUSING|OLTP>]]

Let’s take a look at another parameter that I use quite often, the delteDatabase parameter:

[oracle@ol59a ~]$ dbca -deleteDatabase -help
Delete a database by specifying the following parameters:
	-deleteDatabase
		-sourceDB    <Database unique name for RAC Database and SID for Single Instance Database>
		[-sid    <local instance_name of source database>]
		[-sysDBAUserName     <user name  with SYSDBA privileges>
		 -sysDBAPassword     <password for sysDBAUserName user name>]
		[-emConfiguration <DBEXPRESS|CENTRAL|BOTH|NONE>]
			[-omsHost     <Enterprise Manager central agent home>
			-omsPort     <Enterprise Manager central agent port>
			-emUser     <Host user name for EM backup job>
			-emPassword     <Host user password for EM backup job>]]

As you can see the options for dbca silent mode have increased.

Now, let’s take a closer look at how to create databases in Oracle Database 12c with dbca in silent mode. Check out my new blog post on creating Oracle 12 databases with dbca in silent mode.