Overview

Datapump introduce in 10g which is very powerful utility to perform the both load and unload data using external dump files.Oracle Data Pump technology consists of two components: the Data Pump Export utility, to unload data objects from a database, and the Data Pump Import utility, to load data objects into a database. You access the two Data Pump utilities through a pair of clients called expdp and impdp.As their names indicate, the first of these corresponds to the Data Pump Export utility and the latter
to the Data Pump Import utility. You can control both Data Pump Export and Import jobs with the help of several parameters.

In this article we will demonstrate different Data Pump (expdp/impdb) scenarios.

Prerequisites

  • Creating a Database Directory
  • Create a directory named expdp_dir and specifies that it is to map to the filesystem/location and physical location on disk:
SQL> create directory expdp_dir as ‘ /orahm/app/oracle/admin/db01/dpdump’;

  • Granting Access to the Directory
  • Grant permissions on the database-directory object to a user that wants to use Data Pump:-
SQL> grant read, write on directory expdp_dir to sys;

Table level

Export Source DB

SQL> select * from dba_directories;
OWNER       DIRECTORY_NAME        DIRECTORY_PATH
—————————–
SYS         DATA_PUMP_DIR        /orahm/app/oracle/admin/db01/dpdump

$expdp directory= DATA_PUMP_DIR tables=owner.table_name dumpfile=exp-tab.dmp logfile=exp-tab.log

scp /orahm/app/oracle/admin/db01/dpdump/exp-tab.dmp  oracle@targetdb:/orahm/app/oracle/admin/db01/dpdump/

Import Target DB

SQL> select * from dba_directories;

OWNER       DIRECTORY_NAME        DIRECTORY_PATH
————————————————————————-
SYS         DATA_PUMP_DIR        /orahm/app/oracle/admin/db01/dpdump

$impdp directory= DATA_PUMP_DIR tables=owner.table_name dumpfile=exp-tab.dmp logfile=exp-tab.log


Schema level
Below example to take the schema level export and import.

Export Source DB

SQL> select * from dba_directories;

OWNER       DIRECTORY_NAME        DIRECTORY_PATH
————————————————————————-
SYS         DATA_PUMP_DIR        /orahm/app/oracle/admin/db01/dpdump
$expdp directory= DATA_PUMP_DIR schemas=ABC dumpfile= exp-schema.dmp logfile= exp-schmea.log

scp /orahm/app/oracle/admin/db01/dpdump/exp-schema.dmp oracle@targetdb:/orahm/app/oracle/admin/db01/dpdump/

Import Target DB

$impdp directory= DATA_PUMP_DIR schemas=ABC dumpfile= exp-schema.dmp logfile=imp-schema.log

Check invalid object and compile if required.

select object_name from dba_objects where owner=’ABC’ and status=’INVALID’ ;
compiling invalid object.

ALTER PROCEDURE <PROCEDURE_NAME> COMPILE;

Database level
Below example for full DB export and import.

Export Source DB

SQL> select * from dba_directories;
OWNER       DIRECTORY_NAME        DIRECTORY_PATH
————————————————————————-
SYS         DATA_PUMP_DIR        /orahm/app/oracle/admin/db01/dpdump
Check the tablespace name and size to match same on target db

select    a.TABLESPACE_NAME,
ROUND(a.BYTES/1024000) “Total (MB)”,
ROUND(b.BYTES/1024000) “Free (MB)”,
round(((a.BYTES-b.BYTES)/a.BYTES)*100,2) “% USED”,
100-round(((a.BYTES-b.BYTES)/a.BYTES)*100,2) “% FREE”
from
(
select  TABLESPACE_NAME,
sum(BYTES) BYTES
from    dba_data_files
group   by TABLESPACE_NAME
)
a,
(
select  TABLESPACE_NAME,
sum(BYTES) BYTES ,
max(BYTES) largest
from    dba_free_space
group   by TABLESPACE_NAME
)b
where    a.TABLESPACE_NAME=b.TABLESPACE_NAME
and a.TABLESPACE_NAME like ‘%’
order      by ((a.BYTES-b.BYTES)/a.BYTES) desc;

$expdp directory= DATA_PUMP_DIR full=y dumpfile=exp-full.dmp logfile=exp-full.log

scp /orahm/app/oracle/admin/db01/dpdump/ exp-full.dmp oracle@targetdb:/orahm/app/oracle/admin/db01/dpdump/


Import Target DB

Make target db contain all the tablespace and available free space to accommodate the source object into target DB

Sql> select    a.TABLESPACE_NAME,
ROUND(a.BYTES/1024000) “Total (MB)”,
ROUND(b.BYTES/1024000) “Free (MB)”,
round(((a.BYTES-b.BYTES)/a.BYTES)*100,2) “% USED”,
100-round(((a.BYTES-b.BYTES)/a.BYTES)*100,2) “% FREE”
from
(
select  TABLESPACE_NAME,
sum(BYTES) BYTES
from    dba_data_files
group   by TABLESPACE_NAME
)
a,
(
select  TABLESPACE_NAME,
sum(BYTES) BYTES ,
max(BYTES) largest
from    dba_free_space
group   by TABLESPACE_NAME
)b
where    a.TABLESPACE_NAME=b.TABLESPACE_NAME
and a.TABLESPACE_NAME like ‘%’
order      by ((a.BYTES-b.BYTES)/a.BYTES) desc;

$impdp directory= DATA_PUMP_DIR full=y dumpfile=exp-full.dmp logfile=imp-full.log

Check the invalid object and compile.
Sql>select object_name,owner,status from dba_objects where status=’INVALID’;
Sql>@$ORACLE_HOME/rdbms/admin/utlrp.sql
Sql>select object_name,owner,status from dba_objects where status=’INVALID’;

Using Parameter file
Below export and import example using parameter file.

Export Source DB

SQL> select * from dba_directories;
OWNER       DIRECTORY_NAME        DIRECTORY_PATH
————————————————————————-
SYS         DATA_PUMP_DIR        /orahm/app/oracle/admin/db01/dpdump
Check the tablespace name and size to match same on target db

select    a.TABLESPACE_NAME,
ROUND(a.BYTES/1024000) “Total (MB)”,
ROUND(b.BYTES/1024000) “Free (MB)”,
round(((a.BYTES-b.BYTES)/a.BYTES)*100,2) “% USED”,
100-round(((a.BYTES-b.BYTES)/a.BYTES)*100,2) “% FREE”
from
(
select  TABLESPACE_NAME,
sum(BYTES) BYTES
from    dba_data_files
group   by TABLESPACE_NAME
)
a,
(
select  TABLESPACE_NAME,
sum(BYTES) BYTES ,
max(BYTES) largest
from    dba_free_space
group   by TABLESPACE_NAME
)b
where    a.TABLESPACE_NAME=b.TABLESPACE_NAME
and a.TABLESPACE_NAME like ‘%’
order      by ((a.BYTES-b.BYTES)/a.BYTES) desc;
Create parameter file as below under data pump directory.

vi full_db.par
directory=DATA_PUMP_DIR
full=y dumpfile=exp-full.dmp
logfile=exp-full.log

Take export using par file.
$ expdp parfile=full_db.par

scp /orahm/app/oracle/admin/db01/dpdump/exp-tab.dmp  oracle@targetdb:/orahm/app/oracle/admin/db01/dpdump/


Import Target DB

Make target db contain all the tablespace and available free space to accommodate the source object into target DB

Sql> select    a.TABLESPACE_NAME,
ROUND(a.BYTES/1024000) “Total (MB)”,
ROUND(b.BYTES/1024000) “Free (MB)”,
round(((a.BYTES-b.BYTES)/a.BYTES)*100,2) “% USED”,
100-round(((a.BYTES-b.BYTES)/a.BYTES)*100,2) “% FREE”
from
(
select  TABLESPACE_NAME,
sum(BYTES) BYTES
from    dba_data_files
group   by TABLESPACE_NAME
)
a,
(
select  TABLESPACE_NAME,
sum(BYTES) BYTES ,
max(BYTES) largest
from    dba_free_space
group   by TABLESPACE_NAME
)b
where    a.TABLESPACE_NAME=b.TABLESPACE_NAME
and a.TABLESPACE_NAME like ‘%’
order      by ((a.BYTES-b.BYTES)/a.BYTES) desc;
                               
Create parameter file as below under data pump directory.


vi full_db.par
directory=DATA_PUMP_DIR
full=y dumpfile=exp-full.dmp
logfile=imp-full.log


Perform import using parameter file.
$impdp parfile=full_db.par

Check the invalid object and compile.
Sql>select object_name,owner,status from dba_objects where status=’INVALID’;
Sql>@$ORACLE_HOME/rdbms/admin/utlrp.sql
Sql>select object_name,owner,status from dba_objects where status=’INVALID’;


Data Pump Export/Import more examples

  • Using parallel option
Using parallel option we can make export faster. It generate more dump files depends on parallel option during export.

Export Source DB

SQL> select * from dba_directories;

OWNER       DIRECTORY_NAME        DIRECTORY_PATH
————————————————————————-
SYS         DATA_PUMP_DIR        /orahm/app/oracle/admin/db01/dpdump

$expdp directory= DATA_PUMP_DIR schemas=ABC dumpfile=exp-schema_%Udmp logfile= exp-schmea.log parallel=2

scp /orahm/app/oracle/admin/db01/dpdump/exp-schema_%U.dmp oracle@targetdb:/orahm/app/oracle/admin/db01/dpdump/

Import Target DB

$impdp directory= DATA_PUMP_DIR schemas=ABC dumpfile= exp-schema_%U.dmp logfile=imp-schema.log

Check invalid object and compile if required.

select object_name from dba_objects where owner=’ABC’ and status=‘INVALID’;
Compiling invalid object.

ALTER PROCEDURE <PROCEDURE_NAME> COMPILE;

  • Using compress option
Using compress option we can reduce the size of dump files.

Export Source DB

SQL> select * from dba_directories;

OWNER       DIRECTORY_NAME        DIRECTORY_PATH
————————————————————————-
SYS         DATA_PUMP_DIR        /orahm/app/oracle/admin/db01/dpdump

$expdp directory= DATA_PUMP_DIR compression=all schemas=ABC dumpfile= exp-schema.dmp logfile= exp-schmea.log

scp /orahm/app/oracle/admin/db01/dpdump/exp-schema.dmp oracle@targetdb:/orahm/app/oracle/admin/db01/dpdump/

Import Target DB

$impdp directory= DATA_PUMP_DIR schemas=ABC dumpfile= exp-schema.dmp logfile=imp-schema.log

Check invalid object and compile if required.

select object_name from dba_objects where owner=’ABC’ and status=‘INVALID’;
Compiling invalid object.

ALTER PROCEDURE <PROCEDURE_NAME> COMPILE;


Creating DDL file
Using Sqlfile option we can only extract the DDL without data.

Export Source DB

SQL> select * from dba_directories;

OWNER       DIRECTORY_NAME        DIRECTORY_PATH
————————————————————————-
SYS         DATA_PUMP_DIR        /orahm/app/oracle/admin/db01/dpdump

$expdp directory= DATA_PUMP_DIR tables=owner.table_name dumpfile=exp-tab.dmp logfile=exp-tab.log sqlfile=ddl-script.sql

scp /orahm/app/oracle/admin/db01/dpdump/exp-tab.dmp ddl-script.sql oracle@targetdb:/orahm/app/oracle/admin/db01/dpdump/

Import Target DB

Import only DDL
$impdp directory= DATA_PUMP_DIR tables=owner.table_name dumpfile=exp-tab.dmp logfile=exp-tab.log sqlfile=ddl-script.sql

  • Cloning user (remap_schema)
Using Remap_schema option we can import the object from one schema to other schema.

Export Source DB

SQL> select * from dba_directories;

OWNER       DIRECTORY_NAME        DIRECTORY_PATH
————————————————————————-
SYS         DATA_PUMP_DIR        /orahm/app/oracle/admin/db01/dpdump

$expdp directory= DATA_PUMP_DIR compression=all schemas=ABC dumpfile= exp-schema.dmp logfile= exp-schmea.log

scp /orahm/app/oracle/admin/db01/dpdump/exp-schema.dmp oracle@targetdb:/orahm/app/oracle/admin/db01/dpdump/

Import Target DB

$impdp directory= DATA_PUMP_DIR remap_schema=ABC:XYZ dumpfile= exp-schema.dmp logfile=imp-schema.log

Check invalid object and compile if required.

select object_name from dba_objects where owner=’XZY’ and status=‘INVALID’;

Compiling invalid object.

ALTER PROCEDURE <PROCEDURE_NAME> COMPILE;

  • Cloning table (remap_table)
Remap_table option is to create the table with new name during import to avoid overwriting existing table in target DB.

Export Source DB

SQL> select * from dba_directories;

OWNER       DIRECTORY_NAME        DIRECTORY_PATH
————————————————————————-
SYS         DATA_PUMP_DIR        /orahm/app/oracle/admin/db01/dpdump

$expdp directory= DATA_PUMP_DIR tables=ABC.table1 dumpfile=exp-tab.dmp logfile=exp-tab.log

scp /orahm/app/oracle/admin/db01/dpdump/exp-tab.dmp oracle@targetdb:/orahm/app/oracle/admin/db01/dpdump/

Import Target DB

Remap table to new name.

$impdp directory= DATA_PUMP_DIR tables=ABC.table1 remap_table= ABC.table1:table2 dumpfile=exp-tab.dmp logfile=exp-tab.log

  • Importing when objects Already Exist
Using the TABLE_EXISTS_ACTION option we can import the object if the object already exist on target.

TABLE_EXISTS_ACTION=[SKIP | APPEND | TRUNCATE | REPLACE]
SKIP leaves the table as is and moves on to the next object. This is not a valid option if the CONTENT parameter is set to DATA_ONLY.
APPEND loads rows from the source and leaves existing rows unchanged.
TRUNCATE deletes existing rows and then loads rows from the source.
REPLACE drops the existing table and then creates and loads it from the source. This is not a valid option if the CONTENT parameter is set to DATA_ONLY.

Export Source DB

SQL> select * from dba_directories;

OWNER       DIRECTORY_NAME        DIRECTORY_PATH
————————————————————————-
SYS         DATA_PUMP_DIR        /orahm/app/oracle/admin/db01/dpdump

$expdp directory= DATA_PUMP_DIR schemas=ABC dumpfile= exp-schema.dmp logfile= exp-schmea.log

scp /orahm/app/oracle/admin/db01/dpdump/exp-schema.dmp oracle@targetdb:/orahm/app/oracle/admin/db01/dpdump/

Import

$impdp directory= DATA_PUMP_DIR schemas=ABC dumpfile= exp-schema.dmp logfile=imp-schema.log table_exists_action==[SKIP | APPEND | TRUNCATE | REPLACE]

Check invalid object and compile if required.

select object_name from dba_objects where owner=’ABC’ and status=’INVALID’ ;
compiling invalid object.

ALTER PROCEDURE <PROCEDURE_NAME> COMPILE;

  • Exclude option
EXCLUDE parameter is used, all objects except those specified by it will be included in the export/import

Export Source DB

SQL> select * from dba_directories;
OWNER       DIRECTORY_NAME        DIRECTORY_PATH
————————————————————————-
SYS         DATA_PUMP_DIR        /orahm/app/oracle/admin/db01/dpdump
Check the tablespace name and size to match same on target db

select    a.TABLESPACE_NAME,
ROUND(a.BYTES/1024000) “Total (MB)”,
ROUND(b.BYTES/1024000) “Free (MB)”,
round(((a.BYTES-b.BYTES)/a.BYTES)*100,2) “% USED”,
100-round(((a.BYTES-b.BYTES)/a.BYTES)*100,2) “% FREE”
from
(
select  TABLESPACE_NAME,
sum(BYTES) BYTES
from    dba_data_files
group   by TABLESPACE_NAME
)
a,
(
select  TABLESPACE_NAME,
sum(BYTES) BYTES ,
max(BYTES) largest
from    dba_free_space
group   by TABLESPACE_NAME
)b
where    a.TABLESPACE_NAME=b.TABLESPACE_NAME
and a.TABLESPACE_NAME like ‘%’
order      by ((a.BYTES-b.BYTES)/a.BYTES) desc;

Create parameter file as below under data pump directory.

vi full_db.par
directory=DATA_PUMP_DIR
full=y dumpfile=exp-full.dmp
logfile=exp-full.log
exclude=schema:”IN (‘SYS’,’SYSTEM’,’ANONYMOUS’,’DBSNMP’,’DIP’,’EXFSYS’,’ORACLE_OCM’,’OUTLN’,’WMSYS’,’XDB’)”

Take export using par file.

$ expdp parfile=full_db.par

scp /orahm/app/oracle/admin/db01/dpdump/exp-tab.dmp oracle@targetdb:/orahm/app/oracle/admin/db01/dpdump/

Import Target DB

Make target db contain all the tablespace and available free space to accommodate the source object into target DB

Sql> select    a.TABLESPACE_NAME,
ROUND(a.BYTES/1024000) “Total (MB)”,
ROUND(b.BYTES/1024000) “Free (MB)”,
round(((a.BYTES-b.BYTES)/a.BYTES)*100,2) “% USED”,
100-round(((a.BYTES-b.BYTES)/a.BYTES)*100,2) “% FREE”
from
(
select  TABLESPACE_NAME,
sum(BYTES) BYTES
from    dba_data_files
group   by TABLESPACE_NAME
)
a,
(
select  TABLESPACE_NAME,
sum(BYTES) BYTES ,
max(BYTES) largest
from    dba_free_space
group   by TABLESPACE_NAME
)b
where    a.TABLESPACE_NAME=b.TABLESPACE_NAME
and a.TABLESPACE_NAME like ‘%’
order      by ((a.BYTES-b.BYTES)/a.BYTES) desc;
                               
Create parameter file as below under data pump directory.

vi full_db.par
directory=DATA_PUMP_DIR
full=y dumpfile=exp-full.dmp
logfile=imp-full.log

Perform import using parameter file.
$impdp parfile=full_db.par

Check the invalid object and compile.
Sql>select object_name,owner,status from dba_objects where status=’INVALID’;
Sql>@$ORACLE_HOME/rdbms/admin/utlrp.sql
Sql>select object_name,owner,status from dba_objects where status=’INVALID’;

  • Include option
INCLUDE parameter is used, only those objects specified by it will be included in the export/import.

Export Source DB

SQL> select * from dba_directories;

OWNER       DIRECTORY_NAME        DIRECTORY_PATH
————————————————————————-
SYS         DATA_PUMP_DIR        /orahm/app/oracle/admin/db01/dpdump

$expdp directory= DATA_PUMP_DIR schemas=ABC  include=TABLE:”IN(“EMP’,’DEPT’) dumpfile= exp-schema.dmp logfile= exp-schmea.log

scp /orahm/app/oracle/admin/db01/dpdump/exp-schema.dmp oracle@targetdb:/orahm/app/oracle/admin/db01/dpdump/

Import Target DB

$impdp directory= DATA_PUMP_DIR schemas=ABC dumpfile= exp-schema.dmp logfile=imp-schema.log

Check invalid object and compile if required.

select object_name from dba_objects where owner=’ABC’ and status=’INVALID’ ;
compiling invalid object.

ALTER PROCEDURE <PROCEDURE_NAME> COMPILE;

  • Creating a Consistent Export
CONSISTENT=Y parameter to indicate the export should be consistent to a point in time

Export Source DB

SQL> select * from dba_directories;
OWNER       DIRECTORY_NAME        DIRECTORY_PATH
————————————————————————-
SYS         DATA_PUMP_DIR        /orahm/app/oracle/admin/db01/dpdump

$expdp directory= DATA_PUMP_DIR tables=owner.table_name dumpfile=exp-tab.dmp logfile=exp-tab.log consistent=y

scp /orahm/app/oracle/admin/db01/dpdump/exp-tab.dmp  oracle@targetdb:/orahm/app/oracle/admin/db01/dpdump/

Import Target DB

$impdp directory= DATA_PUMP_DIR tables=owner.table_name dumpfile=exp-tab.dmp logfile=exp-tab.log

  • Network based import
NETWORK_LINK parameter identifies a database link to be used as the source for a network export/import.

Export Source DB

SQL> select * from dba_directories;
OWNER       DIRECTORY_NAME        DIRECTORY_PATH
————————————————————————-
SYS         DATA_PUMP_DIR        /orahm/app/oracle/admin/db01/dpdump

Create the db link on on local db which is point to source db for export task.It will export the source db and put the dumpfile in dump directory

sql>CREATE DATABASE LINK remote_expdp CONNECT TO sys IDENTIFIED BY sys123 USING ‘DB01’;

$expdp directory= DATA_PUMP_DIR tables=owner.table_name network_link=remote_expdp dumpfile=exp-tab.dmp logfile=exp-tab.log

Import Target DB

Create the db link on local DB which is point to source db. Here it will directly import the data using netwok link option without dumpfile of source db.

sql>CREATE DATABASE LINK remote_impdp CONNECT TO sys IDENTIFIED BY sys123 USING ‘DB01’;

$impdp directory= DATA_PUMP_DIR tables=owner.table_name logfile=exp-tab.log network_link=remote_impdp


Conclusion

In this article we have learnt different Data Pump (expdp/impdb) scenarios.

2

Overview:
In this document we will Upgrade Oracle GoldenGate 11g to 12c

Environment Details
 Hostname
Node1 and Node2
Operating system
Linux
Environment
production
Oracle Home
/u01/app/oracle/product/11.2.0/db
GoldenGate software staging location
/u01/app/oracle/software/OGG12c
GoldenGate 11g Shared Home
/oraggs/app/ggs
GoldenGate 12c Shared Home
/oraggs/app/ggs12c/ggs

Configure Goldengate 12c:

  • Install Oracle GoldenGate 12c software without creating and start manager process in a new home. Look at the steps for installing Oracle GoldenGate 12c at:

http://netsoftmate.blogspot.in/2017/01/installing-oracle-goldengate-12c-base.html

  • After installing oracle GoldenGate now the time to upgrade the existing 11g to 12c GoldenGate.

Create sub dirs.

cd /oraggs/app/gg12c
GGSCI>create subdirs
Parameter files                /oraggs/app/gg12c/dirprm
Report files                   /oraggs/app/gg12c/dirrpt
Checkpoint files               /oraggs/app/gg12c/dirchk
Process status files           /oraggs/app/gg12c/dirpcs
SQL script files               /oraggs/app/gg12c/dirsql
Database definitions files     /oraggs/app/gg12c/dirdef
Extract data files             /oraggs/app/gg12c/dirdat
Temporary files                /oraggs/app/gg12c/dirtmp
Stdout files                   /oraggs/app/gg12c/dirout

Create softlink

cd /oraggs

ln -s /oraggs/dirtmp /oraggs/app/gg12c
ln -s /oraggs/dirsql /oraggs/app/gg12c
ln -s /oraggs/dirdef /oraggs/app/gg12c
ln -s /oraggs/dirdat /oraggs/app/gg12c
ln -s /oraggs/dirout /oraggs/app/gg12c

Upgrade Oracle GoldenGate 11g to 12c
  • Take backup of existing GlodenGate 11g HOME.
$ cd /oraggs/app
$ cp -pR gss ggs_bkp
  • Navigate to GoldenGate 11g home and stop the GoldenGate processes
$ cd /oraggs/app/ggs
$ ./ggsci
GGSCI> send extract <name>, logend
GGSCI> info extract <name>
GGSCI > stop er *
  • Now, stop the Manager process
$ cd /oraggs/app/ggs
$ ./ggsci
GGSCI> stop MGR!
GGSCI> info all
  • Copy the GoldenGate dir* from GoldenGate 11g home (/oraggs/app/ggs) to GoldenGate 12c home (/oraggs/app/ggs12/ggs)
$ cd /oraggs/app/ggs
$ ls -l dir*
$ cp -pR dir* /oraggs/app/ggs12c/ggs/
  • Verify the directories are copied successfully to GoldenGate 12c home
$ cd /oraggs/app/ggs12c/ggs
$ ls -l dir*
  • Start GoldenGate process from Oracle GoldenGate 12c home
$ cd /oraggs/app/ggs12c/ggs
$ ./ggsci
GGSCI> info all
GGSCI> start mgr
GGSCI> info all
GGSCI> start er *
GGSCI> info all
ln -s /oraggs/dirrpt /oraggs/app/gg12c
ln -s /oraggs/dirpcs /oraggs/app/gg12c
ln -s /oraggs/dirchk /oraggs/app/gg12c
ln –s /oraggs/dirprm /oraggs/app/gg12c
  • Check the goldengate process status , and that should be visible as Abended
cd /oraggs/app/gg12c
./ggsci
GGSCI> info all

Conclusion
In this article we have learnt how to Upgrade Oracle GoldenGate 11g to 12c

2

Overview
In this document we will perform Upgrade of oracle GoldenGate 12c from 12.1.2.1.0 to 12.1.2.1.10

Environment Details
 Hostname
Node1 and Node2
Operating system
Linux
Environment
Production
Oracle Home
/u01/app/oracle/product/11.2.0/db
GoldenGate software staging location
/u01/app/oracle/software/OGG12c
GoldenGate Shared Home
/oraggs/app/ggs12c/ggs


Software requirement:
Download the Oracle GoldenGate 12.1.2.1.10 (p21785294_1212110_Linux-x86-64.zip) patch from My Oracle support by entering the following URL into your web browser: http://support.oracle.com

Steps to Upgrade Oracle GoldenGate Software
  • Create staging area for GoldenGate software.
$ cd /u01/app/oracle/software/
$ mkdir OGG12c
 Copy downloaded Oracle GoldenGate 12c Base software to Node 1
  • Unzip the Goldengate patch from directory OGG12c
$ cd /u01/app/oracle/software/OGG12c
$ unzip p21785294_1212110_Linux-x86-64.zip
  • Navigate to Oracle GoldenGate 12c home and validate OraInventory
$ cd /oraggs/app/gg12c
$ cd OPatch
$ ./opatch lsinventory
Invoking OPatch 11.2.0.1.7
Oracle Interim Patch Installer version 11.2.0.1.7
Copyright (c) 2011, Oracle Corporation.  All rights reserved.
Oracle Home       : /oraggs/app/gg12c
Central Inventory : /oraggs/app/oraInventory
from           : /etc/oraInst.loc
OPatch version    : 11.2.0.1.7
OUI version       : 11.2.0.3.0
Log file location : /oraggs/app/gg12c/cfgtoollogs/opatch/opatch2016-01-13_13-21-12PM.log
Lsinventory Output file location : /oraggs/app/gg12c/cfgtoollogs/opatch/lsinv/lsinventory2016-01-13_13-21-12PM.txt
——————————————————————————–
Installed Top-level Products (1):
Oracle GoldenGate Core                                               12.1.2.1.0
There are 1 products installed in this Oracle Home.
There are no Interim patches installed in this Oracle Home.
OPatch succeeded.
  • Verify the Opatch version
$ cd /oraggs/app/gg12c/OPatch

[oracle@Node1 OPatch]$ ./opatch version
Invoking OPatch 11.2.0.1.7
OPatch Version: 11.2.0.1.7
OPatch succeeded.
  • Set Oracle Home variable to Oracle GoldenGate 12c software location
$ export ORACLE_HOME=/oraggs/app/gg12c
  •  Ensure Oracle GoldenGate Processes are offline.
./ggsci
GGSCI> info all
  • Stop Oracle GoldenGate Processes as follows:
./ggsci
GGSCI> stop er *
GGSCI> stop mgr!
    • Navigate to GoldenGate patch location and apply the patch
    $ cd /oraggs/app/oracle/software/OGG12c/21785294
    $ /oraggs/app/gg12c/OPatch/opatch apply
    •  Verify the patch is applied to GoldenGate 12c Home
    $ cd /oraggs/app/gg12c/OPatch
    $ ./opatch lsinventory

    Invoking OPatch 11.2.0.1.7
    Oracle Interim Patch Installer version 11.2.0.1.7
    Copyright (c) 2011, Oracle Corporation.  All rights reserved.
    Oracle Home       : /oraggs/app/ggs12c/ggs
    Central Inventory : /oraggs/app/oraInventory
    from           : /etc/oraInst.loc
    OPatch version    : 11.2.0.1.7
    OUI version       : 11.2.0.3.0
    Log file location : /oraggs/app/ggs12c/ggs/cfgtoollogs/opatch/opatch2016-01-13_14-37-10PM.log
    Lsinventory Output file location : /oraggs/app/ggs12c/ggs/cfgtoollogs/opatch/lsinv/lsinventory2016-01-13_14-37-10PM.txt
    ——————————————————————————–
    Installed Top-level Products (1):
     Oracle GoldenGate Core                                               12.1.2.1.0
    There are 1 products installed in this Oracle Home.
    Interim patches (1) :

    Patch  21785294     : applied on Mon Nov 23 21:30:51 PST 2015
    Unique Patch ID:  19375140
       Created on 3 Sep 2015, 10:27:21 hrs PST8PDT
       Bugs fixed:
         21181052, 19241234, 20660883, 21473564, 20898978, 21180187, 19132627
         20643144, 21131159, 18875912, 20543714, 21079205, 20996660, 20367405
         20803745, 20657667, 19889991, 20659379, 20045536, 19987316, 20554464
         19142865, 19681198, 19813884, 20347665, 20148126, 20917331, 19048634
         21182116, 19920244, 19798268, 19602692, 19535319, 19441114, 21110369
         19374174, 20664851, 21045025, 20681946, 19903590, 19724915, 21165823
         19327073, 20531064, 21226965, 19818362, 20021370, 20724906, 21124385
         21328574, 19264441, 18996447, 21345919, 21329486, 21090428, 19414121
         19545128, 21121987, 20648352, 19721652, 20418503, 21209445, 21246170
         20853556, 20756705, 21103736, 17866697, 16084751, 20778054, 21111031
         20853777, 19244349, 20092876, 20782113, 20343181, 20532340, 20951173
         20660006, 19067094, 19560158, 20577891, 18958026, 17423191, 20641896
         19624524, 19516537, 20563015, 20078949, 21026962, 19681035, 20213167
         19782389, 20679687, 19781984, 19594967, 20878216, 20989581
    ——————————————————————————–
    OPatch succeeded.
    • Verify the new Oracle GoldenGate 12c version is 12.1.2.1.10
    $ cd /oraggs/app/gg12c
    $ ./ggsci –v
    $ cd /oraggs/app/ggs12c/ggs
    $ ./ggsci –v
    Oracle GoldenGate Command Interpreter for Oracle
    Version 12.1.2.1.10 21604177 OGGCORE_12.1.2.1.0OGGBP_PLATFORMS_150902.1337_FBO
    Linux, x64, 64bit (optimized), Oracle 11g on Sep  2 2015 20:46:03
    Copyright (C) 1995, 2015, Oracle and/or its affiliates. All rights reserved

    Conclusion:
    In this article we have learnt how to Upgrade Oracle GoldenGate 12c from 12.1.2.1.0 to 12.1.2.1.10

    0

    Uncategorized
    Overview
    The Oracle Database File System (DBFS) creates a file system interface to files stored in the database. DBFS is similar to NFS in that it provides a shared network file system that looks like a local file system. Because the data is stored in the database, the file system inherits all the HA/DR capabilities provided by the database.
     
    With DBFS, the server is the Oracle Database. Files are stored as SecureFiles LOBs. PL/SQL procedures implement file system access primitives such as create, open, read, write, and list directory. The implementation of the file system in the database is called the DBFS SecureFiles Store. The DBFS SecureFiles Store allows users to create file systems that can be mounted by clients. Each file system has its own dedicated tables that hold the file system content.
     
    In this article we will demonstrate the steps to configure Oracle Database Filesystem (DBFS) on Oracle Exadata Database Machine.
     
    Note: On platforms other than Oracle Exadata Database Machine, additional setup steps may be required to install the required fuse RPM packages which are installed by default on Oracle Database Machine database servers.
     
    Assumption
     
    • Exadata DBM running Oracle 11.2 Software
    • User equivalence for root and Oracle user is setup between compute nodes
    • dbs_group file is created in users home directory containing hostname or IP per line
    oraclouddbadm01-dbm011 {/home/oracle}:cat dbs_group
    oraclouddbadm01
    oraclouddbadm02

    • root and Oracle user password


    eBook - Oracle Exadata X8M Patching Recipes | Netsoftmate
    Steps to Configure DBFS on Exadata Database Machine

    • Add the oracle user to the fuse group on Linux.  Run these commands as the root user.
    [root@oraclouddbadm01 ~]# dcli -g ~/dbs_group -l root usermod -a -G fuse oracle
    • Create the /etc/fuse.conf file with the user_allow_other option. Ensure proper privileges are applied to this file.
    [root@oraclouddbadm01 ~]# dcli -g ~/dbs_group -l root “echo user_allow_other > /etc/fuse.conf”
    [root@oraclouddbadm01 ~]# dcli -g ~/dbs_group -l root chmod 644 /etc/fuse.conf
    [root@oraclouddbadm01 ~]# cat /etc/fuse.conf
    user_allow_other
     
    • On all Compute nodes, create a directory that will be used as the mount point for the DBFS file system.
    [root@oraclouddbadm01 ~]# dcli -g ~/dbs_group -l root mkdir /dbfs_direct
    [root@oraclouddbadm01 ~]# ls -l /dbfs_direct
    total 0
     
    • Change ownership on the mount point directory so oracle can access it.
    [root@oraclouddbadm01 ~]# dcli -g ~/dbs_group -l root chown oracle:dba /dbfs_direct
     
    • Restart the Clusterware to pickup additional group (fuse) membership for Oracle user.
    Run use the following commands as root:
    [root@oraclouddbadm01 ~]# dcli -g ~/dbs_group -l root /u01/app/11.2.0.4/grid/bin/crsctl stop crs
     
    [root@oraclouddbadm01 ~]# dcli -g ~/dbs_group -l root /u01/app/11.2.0.4/grid/bin/crsctl start crs
    oraclouddbadm01: CRS-4123: Oracle High Availability Services has been started.
    oraclouddbadm02: CRS-4123: Oracle High Availability Services has been started.
     
    • Create a database to hold the DBFS repository. Refer to the link below to create the DBFS repository database.
    http://netsoftmate.blogspot.in/2017/01/configure-database-for-dbfs-on-exadata.html
     
    • To create the repository, create a new tablespace to hold the DBFS objects and a database user that will own the objects.
    SQL> create bigfile tablespace dbfsts datafile ‘+FLASH_DATA01’ size 100g autoextend on next 8g maxsize 300g NOLOGGING EXTENT MANAGEMENT LOCAL AUTOALLOCATE  SEGMENT SPACE MANAGEMENT AUTO ;
     
    Tablespace created.
     
    • Create a user and assign necessary privileges to create objects.
    SQL> create user dbfs_user identified by oracle default tablespace dbfsts quota unlimited on dbfsts;
     
    User created.
     
    SQL> grant create session, create table, create view, create procedure, dbfs_role to dbfs_user;
     
    Grant succeeded.
     
    • Now create the database objects that will hold DBFS. The script takes 2 arguments tablespace name and File System name.
    oraclouddbadm01-fsdb1 {/home/oracle}:. oraenv
    ORACLE_SID = [fsdb1] ? fsdb1
    The Oracle base remains unchanged with value /u01/app/oracle
     
    oraclouddbadm01-fsdb1 {/home/oracle}:cd $ORACLE_HOME/rdbms/admin
     
    oraclouddbadm01-fsdb1 {/u01/app/oracle/product/11.2.0.4/dbhome_1/rdbms/admin}:sqlplus dbfs_user/oracle
     
    SQL*Plus: Release 11.2.0.4.0 Production on Fri Jul 4 12:46:22 2014
     
    Copyright (c) 1982, 2013, Oracle.  All rights reserved.
     
    Connected to:
    Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 – 64bit Production
    With the Partitioning, Real Application Clusters, Automatic Storage Management, OLAP,
    Data Mining and Real Application Testing options
     
    SQL> start dbfs_create_filesystem dbfsts FS1
    No errors.
    ——–
    CREATE STORE:
    begin dbms_dbfs_sfs.createFilesystem(store_name => ‘FS_FS1’, tbl_name =>
    ‘T_FS1’, tbl_tbs => ‘dbfsts’, lob_tbs => ‘dbfsts’, do_partition => false,
    partition_key => 1, do_compress => false, compression => ”, do_dedup => false,
    do_encrypt => false); end;
    ——–
    REGISTER STORE:
    begin dbms_dbfs_content.registerStore(store_name=> ‘FS_FS1’, provider_name =>
    ‘sample1’, provider_package => ‘dbms_dbfs_sfs’); end;
    ——–
    MOUNT STORE:
    begin dbms_dbfs_content.mountStore(store_name=>’FS_FS1′, store_mount=>’FS1′);
    end;
    ——–
    CHMOD STORE:
    declare m integer; begin m := dbms_fuse.fs_chmod(‘/FS1’, 16895); end;
    No errors.
     
    • Perform the one-time setup steps for mounting the filesystem. You can download the mount-dbfs.sh script attached to the MOS note 1054431.1. It provides the logic and necessary scripting to mount DBFS as a cluster resource.


    • The one-time setup steps required for each of the two mount methods (dbfs_client or mount). There are two options for mounting the DBFS filesystem and each will result in the filesystem being available at /dbfs_direct. Choose one of the two options.
    •  
    •  
      • The first option is to utilize the dbfs_client command directly, without using an Oracle Wallet. There are no additional setup steps required to use this option.
    •  
    •  
      • The second option is to use the Oracle Wallet to store the password and make use of the mount command.
    • On All Compute nodes, set the library path on all nodes using the commands that follow:
    [root@oraclouddbadm01 ~]# dcli -g dbs_group -l root mkdir -p /usr/local/lib
    [root@oraclouddbadm01 ~]# dcli -g dbs_group -l root ln -s /u01/app/oracle/product/11.2.0.4/dbhome_1/lib/libnnz11.so /usr/local/lib/libnnz11.so
    [root@oraclouddbadm01 ~]# dcli -g dbs_group -l root ln -s /u01/app/oracle/product/11.2.0.4/dbhome_1/lib/libclntsh.so.11.1 /usr/local/lib/libclntsh.so.11.1
    [root@oraclouddbadm01 ~]# dcli -g dbs_group -l root ln -s /lib64/libfuse.so.2 /usr/local/lib/libfuse.so.2
    [root@oraclouddbadm01 ~]# dcli -g dbs_group -l root ‘echo /usr/local/lib >> /etc/ld.so.conf.d/usr_local_lib.conf’
    [root@oraclouddbadm01 ~]# dcli -g dbs_group -l root ldconfig
     
    • Create a new TNS_ADMIN directory ($HOME/dbfs/tnsadmin) for exclusive use by the DBFS mount script.
    oraclouddbadm01-dbm011 {/home/oracle}:dcli -g dbs_group -l oracle mkdir -p $HOME/dbfs/tnsadmin
     
    • Create the $HOME/dbfs/tnsadmin/tnsnames.ora file with the following contents on the first node. Here the name of the DBFS repository database is fsdb and the instance on the first node is named fsdb1 and ORACLE_HOME is /u01/app/oracle/product/11.2.0.4/dbhome_1.
    oraclouddbadm01-dbm011 {/home/oracle}:vi $HOME/dbfs/tnsadmin/tnsnames.ora
    oraclouddbadm01-dbm011 {/home/oracle}:cat $HOME/dbfs/tnsadmin/tnsnames.ora
    fsdb.local =
       (DESCRIPTION =
           (ADDRESS =
             (PROTOCOL=BEQ)
      (PROGRAM=/u01/app/oracle/product/11.2.0.4/dbhome_1/bin/oracle)
             (ARGV0=oraclefsdb1)
             (ARGS='(DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=BEQ)))’)
             (ENVS=’ORACLE_HOME=/u01/app/oracle/product/11.2.0.4/dbhome_1,ORACLE_SID=fsdb1′)
           )
        (CONNECT_DATA=(SID=fsdb1))
       )
     
    • On other nodes, create similar entries (all using the name “fsdb.local”) and change all occurrences of fsdb1 to the appropriate instance name to match the instance name running on the node where that tnsnames.ora file resides. The tnsnames.ora file on each node will be slightly different so that each tnsnames.ora file references the instance running locally on that node.
    oraclouddbadm02-dbm012 {/home/oracle}:cd dbfs/tnsadmin/
    oraclouddbadm02-dbm012 {/home/oracle/dbfs/tnsadmin}:cat tnsnames.ora
    fsdb.local =
       (DESCRIPTION =
           (ADDRESS =
             (PROTOCOL=BEQ)
             (PROGRAM=/u01/app/oracle/product/11.2.0.4/dbhome_1/bin/oracle)
             (ARGV0=oraclefsdb2)
             (ARGS='(DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=BEQ)))’)
             (ENVS=’ORACLE_HOME=/u01/app/oracle/product/11.2.0.4/dbhome_1,ORACLE_SID=fsdb2′)
           )
        (CONNECT_DATA=(SID=fsdb2))
       )
    • On each node, create the $HOME/dbfs/tnsadmin/sqlnet.ora file with the same contents on each node.
    oraclouddbadm01-dbm011 {/home/oracle}:vi $HOME/dbfs/tnsadmin/sqlnet.ora
    oraclouddbadm01-dbm011 {/home/oracle}:cat $HOME/dbfs/tnsadmin/sqlnet.ora
    WALLET_LOCATION =
      (SOURCE=(METHOD=FILE)
              (METHOD_DATA=(DIRECTORY=/home/oracle/dbfs/wallet))
      )
    SQLNET.WALLET_OVERRIDE = TRUE
     
    • Copy the file to all nodes using dcli:
    oraclouddbadm01-dbm011 {/home/oracle}:dcli -g ~/dbs_group -l oracle -d $HOME/dbfs/tnsadmin -f $HOME/dbfs/tnsadmin/sqlnet.ora
     
    • Create a wallet directory on one database server as the oracle user. For example:
    oraclouddbadm01-dbm011 {/home/oracle}:mkdir -p $HOME/dbfs/wallet
     
    • Create an empty auto-login wallet:
    oraclouddbadm01-dbm011 {/home/oracle}:mkstore -wrl $HOME/dbfs/wallet -create
    Oracle Secret Store Tool : Version 11.2.0.4.0 – Production
    Copyright (c) 2004, 2013, Oracle and/or its affiliates. All rights reserved.
     
    Enter password:
    Enter password again:
     
    • Add the necessary credentials to the wallet. The credentials can be specific for the connect string used as shown here:
    oraclouddbadm01-dbm011 {/home/oracle}:mkstore -wrl $HOME/dbfs/wallet -createCredential fsdb.local dbfs_user oracle
    Oracle Secret Store Tool : Version 11.2.0.4.0 – Production
    Copyright (c) 2004, 2013, Oracle and/or its affiliates. All rights reserved.
     
    Enter wallet password:
    Create credential oracle.security.client.connect_string1
     
    • Copy the wallet files to all database nodes.
    oraclouddbadm01-dbm011 {/home/oracle}:dcli -g ~/dbs_group -l oracle mkdir -p $HOME/dbfs/wallet
    oraclouddbadm01-dbm011 {/home/oracle}:dcli -g ~/dbs_group -l oracle -d $HOME/dbfs/wallet -f $HOME/dbfs/wallet/ewallet.p12
    oraclouddbadm01-dbm011 {/home/oracle}:dcli -g ~/dbs_group -l oracle -d $HOME/dbfs/wallet -f $HOME/dbfs/wallet/cwallet.sso
     
    • Ensure that the TNS entry specified above (fsdb.local in the example) is defined and working properly (checking with “TNS_ADMIN=/home/oracle/dbfs/tnsadmin tnsping fsdb.local” is a good test).
    oraclouddbadm01-fsdb1 {/home/oracle/dbfs/tnsadmin}:dcli -g ~/dbs_group -l oracle “export ORACLE_HOME=/u01/app/oracle/product/11.2.0.4/dbhome_1; TNS_ADMIN=$HOME/dbfs/tnsadmin /u01/app/oracle/product/11.2.0.4/dbhome_1/bin/tnsping fsdb.local | grep OK”
    oraclouddbadm01: OK (20 msec)
    oraclouddbadm02: OK (20 msec)
     
    • Download the mount-dbfs.sh script attached to MOS note 1054431.1 and place it on one database server in a temporary location (like /tmp/mount-dbfs.sh).
    Run the following command to ensure file transfer didn’t modify the file contents.
    [root@oraclouddbadm01 ~]# dos2unix /tmp/mount-dbfs.sh
    dos2unix: converting file /tmp/mount-dbfs.sh to UNIX format …
     
    • Edit the variable settings in the top of the script for your environment. Comments in the script will help you to confirm the values for these variables.
    DBNAME –> fsdb
    MOUNT_POINT –> /dbfs_direct
    DBFS_USER –> dbfs_user
    ORACLE_HOME (should be the RDBMS ORACLE_HOME directory) –> /u01/app/oracle/product/11.2.0.4/dbhome_1
    LOGGER_FACILITY (used by syslog to log the messages/output from this script) –> user
    MOUNT_OPTIONS –> allow_other,direct_io
    DBFS_PASSWD (used only if WALLET=false) –> oracle
    DBFS_PWDFILE_BASE (used only if WALET=false) –> /tmp/.dbfs-passwd.txt
    WALLET (must be true or false) –> TRUE
    TNS_ADMIN (used only if WALLET=true) –> /home/oracle/dbfs/tnsadmin
    DBFS_LOCAL_TNSALIAS –> fsdb.local
     
    • After editing, copy the script to the proper directory (GI_HOME/crs/script) on database nodes and set proper permissions on it, as the root user:
    [root@oraclouddbadm01 ~]# dcli -g ~/dbs_group -l root -d /u01/app/11.2.0.4/grid/crs/script -f /tmp/mount-dbfs.sh
    [root@oraclouddbadm01 ~]# dcli -g ~/dbs_group -l root chown oracle:dba /u01/app/11.2.0.4/grid/crs/script/mount-dbfs.sh
    [root@oraclouddbadm01 ~]# dcli -g ~/dbs_group -l root chmod 750 /u01/app/11.2.0.4/grid/crs/script/mount-dbfs.sh
     
    • Now that we have completed the one-time setup, the Clusterware resource for DBFS mounting can now be registered. Create this short script and run it as the RDBMS owner (oracle) on only one compute node in the cluster.
    oraclouddbadm01-dbm011 {/home/oracle}:vi add-dbfs-resource.sh
    oraclouddbadm01-dbm011 {/home/oracle}:cat add-dbfs-resource.sh
    #!/bin/bash
    ACTION_SCRIPT=/u01/app/11.2.0.4/grid/crs/script/mount-dbfs.sh
    RESNAME=dbfs_mount
    DBNAME=fsdb
    DBNAMEL=`echo $DBNAME | tr A-Z a-z`
    ORACLE_HOME=/u01/app/11.2.0.4/grid
    PATH=$ORACLE_HOME/bin:$PATH
    export PATH ORACLE_HOME
    crsctl add resource $RESNAME
      -type local_resource
      -attr “ACTION_SCRIPT=$ACTION_SCRIPT,
             CHECK_INTERVAL=30,RESTART_ATTEMPTS=10,
             START_DEPENDENCIES=’hard(ora.$DBNAMEL.db)pullup(ora.$DBNAMEL.db)’,
             STOP_DEPENDENCIES=’hard(ora.$DBNAMEL.db)’,
             SCRIPT_TIMEOUT=300″
     
    • Then run this as the Grid Infrastructure owner (typically oracle) on one database server only:
    oraclouddbadm01-dbm011 {/home/oracle}:sh ./add-dbfs-resource.sh 
     
    When successful, this command has no output.
     
    • It is not necessary to restart the database resource at this point, however, you should review the following note regarding restarting the database now that the dependencies have been added.
    oraclouddbadm01-dbm011 {/home/oracle}:srvctl stop database -d fsdb -f
     
    oraclouddbadm01-dbm011 {/home/oracle}:srvctl status database -d fsdb
    Instance fsdb1 is not running on node oraclouddbadm01
    Instance fsdb2 is not running on node oraclouddbadm02
     
    oraclouddbadm01-dbm011 {/u01/app/11.2.0.4/grid/crs/script}:srvctl start database -d fsdb
     
    oraclouddbadm01-dbm011 {/u01/app/11.2.0.4/grid/crs/script}:srvctl status database -d fsdb
    Instance fsdb1 is running on node oraclouddbadm01
    Instance fsdb2 is running on node oraclouddbadm02
     
    Note: After creating the $RESNAME resource, in order to stop the $DBNAME database when the $RESNAME resource is ONLINE, you will have to specify the force flag when using srvctl.
     
    For example: “srvctl stop database -d fsdb -f”. If you do not specify the -f flag, you will receive an error like this:
     
    (oracle)$ srvctl stop database -d fsdb
    PRCD-1124 : Failed to stop database fsdb and its services
    PRCR-1065 : Failed to stop resource (((((NAME STARTS_WITH ora.fsdb.) && (NAME ENDS_WITH .svc)) && (TYPE == ora.service.type)) && ((STATE != OFFLINE) || (TARGET != OFFLINE))) || (((NAME == ora.fsdb.db) && (TYPE == ora.database.type)) && (STATE != OFFLINE)))
    CRS-2529: Unable to act on ‘ora.fsdb.db’ because that would require stopping or relocating ‘dbfs_mount’, but the force option was not specified
     
    Using the -f flag allows a successful shutdown and results in no output.
     
    How to Manage DBFS mount
     
    • After the resource is created, you should be able to see the dbfs_mount resource by running crsctl stat res dbfs_mount and it should show OFFLINE on all nodes as below:
    oraclouddbadm01-dbm011 {/home/oracle}:/u01/app/11.2.0.4/grid/bin/crsctl stat res dbfs_mount -t
    ——————————————————————————–
    NAME           TARGET  STATE        SERVER                   STATE_DETAILS
    ——————————————————————————–
    Local Resources
    ——————————————————————————–
    dbfs_mount
                   OFFLINE OFFLINE      oraclouddbadm01
                   OFFLINE OFFLINE      oraclouddbadm02
     
    • To bring dbfs_mount online which will mount the filesystem on all nodes, run crsctl start resource dbfs_mount from any cluster node. This will mount DBFS on all nodes. For example:
    oraclouddbadm01-dbm011 {/u01/app/11.2.0.4/grid/crs/script}:/u01/app/11.2.0.4/grid/bin/crsctl start resource dbfs_mount
    CRS-2672: Attempting to start ‘dbfs_mount’ on ‘oraclouddbadm02’
    CRS-2672: Attempting to start ‘dbfs_mount’ on ‘oraclouddbadm01’
    CRS-2676: Start of ‘dbfs_mount’ on ‘oraclouddbadm01’ succeeded
    CRS-2676: Start of ‘dbfs_mount’ on ‘oraclouddbadm02’ succeeded
     
    oraclouddbadm01-dbm011 {/u01/app/11.2.0.4/grid/crs/script}:/u01/app/11.2.0.4/grid/bin/crsctl stat res dbfs_mount -t
    ——————————————————————————–
    NAME           TARGET  STATE        SERVER                   STATE_DETAILS
    ——————————————————————————–
    Local Resources
    ——————————————————————————–
    dbfs_mount
                   ONLINE  ONLINE      oraclouddbadm01
                   ONLINE  ONLINE      oraclouddbadm02
     
    • Once the dbfs_mount Clusterware resource is online, you should be able to see the mount point with df -h on each node. Also, the default startup for this resource is “restore” which means that if it is online before Clusterware is stopped, it will attempt to come online after Clusterware is restarted.
    oraclouddbadm01-fsdb1 {/home/oracle}: df -h /dbfs_direct
    Filesystem            Size  Used Avail Use% Mounted on
    dbfs                  1.5M   40K  1.4M   3% /dbfs_direct
    • To unmount DBFS on all nodes, run this as the oracle user:
    oraclouddbadm01-fsdb1 {/home/oracle}:/u01/app/11.2.0.4/grid/bin/crsctl stop res dbfs_mount
     

    Conclusion
    In this article we have learnt how to configure Database File System (DBFS) on Exadata Database Machine running Oracle Database software 11.2.0.4. The DBFS can be used for many things like store large file, ETL, GoldenGate trail files and check point files and so on.
     
    0

    Overview
    Until Oracle GoldenGate 11g, Oracle GoldenGate installation was fairly simple. You just unzip the software into a directory and create subdirs. Starting with Oracle GoldenGate 12c, Oracle GoldenGate software for Oracle Database is installed using Oracle Universal Installer (OUI). This change makes it easy for Oracle to audit software and licensing.

    You can Install Oracle GoldenGate 12c in 2 ways:

    1. Graphical User Interface (GUI) 
    2. Using response file (Silent)

    In this article I will demostrate how to Install Oracle GoldenGate 12c using response file on a full Rack Exadata Database Machine.

    Environment

    • Full Rack Exadata X5-2
    • ZFS for Share Oracle GoldenGate Software location
    • Oracle Database 12.1.0.2


    Steps to Download Oracle GoldenGate 12c Software


    • Open a web browser and enter www.oracle.com in the address bar



    • This will bring you to the Oracle website home page



    • On this page hover on the download tab and click on “middleware”



    • Click GoldenGate



    • Accept the agreement and select the desired Oracle GoldenGate  version for your platform.

    Here I am downloading “Oracle GoldenGate 12.2.0.1.1 for Oracle on Linux x86-64”


    • Copy the zip file from your desktop to Exadata Compute node 1 using WinScp



    • Drag and Drop the file from left to right in to a directory

    Here I am copying the file to /u01/app/oracle/software location


    • File copy is in progress


    Steps to Install Oracle GoldenGate 12c software using response file


    • Login to Exadata Compute node 1 as Oracle software owner and navigate to the Oracle GoldenGate staging location

    dm01db01-orcl1 {/home/oracle}:cd /u01/app/oracle/software
    dm01db01-orcl1 {/u01/app/oracle/software}:ls -ltr
    total 464928
    -rw-r–r– 1 oracle oinstall 475611228 Jan  2 04:51 fbo_ggs_Linux_x64_shiphome.zip
    dm01db01-orcl1 {/u01/app/oracle/software}:


    • Unzip the Oracle GoldenGate 12c software

    dm01db01-orcl1 {/u01/app/oracle/software}:unzip fbo_ggs_Linux_x64_shiphome.zip
    Archive:  fbo_ggs_Linux_x64_shiphome.zip
       creating: fbo_ggs_Linux_x64_shiphome/
       creating: fbo_ggs_Linux_x64_shiphome/Disk1/
      inflating: fbo_ggs_Linux_x64_shiphome/Disk1/runInstaller
       creating: fbo_ggs_Linux_x64_shiphome/Disk1/stage/
      inflating: fbo_ggs_Linux_x64_shiphome/Disk1/stage/OuiConfigVariables.xml
      inflating: fbo_ggs_Linux_x64_shiphome/Disk1/stage/productlanguages.properties
       creating: fbo_ggs_Linux_x64_shiphome/Disk1/stage/fastcopy/
      inflating: fbo_ggs_Linux_x64_shiphome/Disk1/stage/fastcopy/setperms1.sh
      inflating: fbo_ggs_Linux_x64_shiphome/Disk1/stage/fastcopy/oracle.oggcore.top_ora11g_filemap.jar
      inflating: fbo_ggs_Linux_x64_shiphome/Disk1/stage/fastcopy/oracle.oggcore.top_ora12c_dirs.lst
      inflating: fbo_ggs_Linux_x64_shiphome/Disk1/stage/fastcopy/oracle.oggcore.top_ora12c_1.xml
      inflating: fbo_ggs_Linux_x64_shiphome/Disk1/stage/fastcopy/racfiles.jar
      inflating: fbo_ggs_Linux_x64_shiphome/Disk1/stage/fastcopy/oracle.oggcore.top_ora11g_dirs.lst
      inflating: fbo_ggs_Linux_x64_shiphome/Disk1/stage/fastcopy/oracle.oggcore.top_ora12c_filemap.jar
      inflating: fbo_ggs_Linux_x64_shiphome/Disk1/stage/fastcopy/oracle.oggcore.top_ora11g_1.xml
      inflating: fbo_ggs_Linux_x64_shiphome/Disk1/stage/fastcopy/oracle.oggcore.top_ora11g_exp_1.xml
      inflating: fbo_ggs_Linux_x64_shiphome/Disk1/stage/fastcopy/oracle.oggcore.top_ora12c_exp_1.xml
       creating: fbo_ggs_Linux_x64_shiphome/Disk1/stage/globalvariables/
       creating: fbo_ggs_Linux_x64_shiphome/Disk1/stage/Dialogs/
       creating: fbo_ggs_Linux_x64_shiphome/Disk1/stage/Dialogs/standardDialogs/
    ……
       creating: fbo_ggs_Linux_x64_shiphome/Disk1/response/
      inflating: fbo_ggs_Linux_x64_shiphome/Disk1/response/oggcore.rsp
      inflating: OGG-12.2.0.1-README.txt
      inflating: OGG-12.2.0.1.1-ReleaseNotes.pdf
    dm01db01-orcl1 {/u01/app/oracle/software}:ls -ltr
    total 465216
    drwxr-xr-x 3 oracle oinstall      4096 Dec 12  2015 fbo_ggs_Linux_x64_shiphome
    -rw-r–r– 1 oracle oinstall      1559 Jan 18  2016 OGG-12.2.0.1-README.txt
    -rw-r–r– 1 oracle oinstall    282294 Jan 18  2016 OGG-12.2.0.1.1-ReleaseNotes.pdf
    -rw-r–r– 1 oracle oinstall 475611228 Jan  2 04:51 fbo_ggs_Linux_x64_shiphome.zip


    • Change directory to response folder and copy the response file (oggcore.rsp) to /u01/app/oracle/software location

    dm01db01-orcl1 {/u01/app/oracle/software}:cd fbo_ggs_Linux_x64_shiphome/Disk1/response

    dm01db01-orcl1 {/u01/app/oracle/software/fbo_ggs_Linux_x64_shiphome/Disk1/response}:ls -ltr
    total 8
    -rwxrwxr-x 1 oracle oinstall 4286 Jul  3  2014 oggcore.rsp

    dm01db01-orcl1 {/u01/app/oracle/software/fbo_ggs_Linux_x64_shiphome/Disk1/response}:cp oggcore.rsp /u01/app/oracle/software/

    dm01db01-orcl1 {/u01/app/oracle/software/fbo_ggs_Linux_x64_shiphome/Disk1/response}:cd /u01/app/oracle/software/
    dm01db01-orcl1 {/u01/app/oracle/software}:ls -ltr
    total 465224
    drwxr-xr-x 3 oracle oinstall      4096 Dec 12  2015 fbo_ggs_Linux_x64_shiphome
    -rw-r–r– 1 oracle oinstall      1559 Jan 18  2016 OGG-12.2.0.1-README.txt
    -rw-r–r– 1 oracle oinstall    282294 Jan 18  2016 OGG-12.2.0.1.1-ReleaseNotes.pdf
    -rw-r–r– 1 oracle oinstall 475611228 Jan  2 04:51 fbo_ggs_Linux_x64_shiphome.zip
    -rwxr-xr-x 1 oracle oinstall      4286 Jan  2 07:20 oggcore.rsp


    • Make a backup of the response file before editing

    dm01db01-orcl1 {/u01/app/oracle/software}:cp oggcore.rsp oggcore.rsp_bkp
    dm01db01-orcl1 {/u01/app/oracle/software}:


    • Open the response file and make the following changes as described below

    dm01db01-orcl1 {/u01/app/oracle/software}:vi oggcore.rsp

    INSTALL_OPTION=ORA12c –> This is the Oracle database version
    SOFTWARE_LOCATION=/zfssa/dm01/backup/product/ogg/12.2.0.1/gghome –> This is Oracle GoldenGate software location. On RAC it should be a shared location.
    START_MANAGER=true –> Setting this parameter to true will configure manager process at the end of installation.
    MANAGER_PORT=7809 –> port number for starting manager process. The port should be opened.
    DATABASE_LOCATION=/u01/app/oracle/product/11.2.0.4/dbhome –> This is the Oracle Database Home location
    INVENTORY_LOCATION=/u01/app/oraInventory –> OraInventory location
    UNIX_GROUP_NAME=oinstall –> The operating system group for oraInventory


    • After making the changes above, the response file looks like this:

    dm01db01-orcl1 {/u01/app/oracle/software}:cat oggcore.rsp

    ####################################################################
    ## Copyright(c) Oracle Corporation 2014. All rights reserved.     ##
    ##                                                                ##
    ## Specify values for the variables listed below to customize     ##
    ## your installation.                                             ##
    ##                                                                ##
    ## Each variable is associated with a comment. The comment        ##
    ## can help to populate the variables with the appropriate        ##
    ## values.                                                        ##
    ##                                                                ##
    ## IMPORTANT NOTE: This file should be secured to have read       ##
    ## permission only by the oracle user or an administrator who     ##
    ## own this installation to protect any sensitive input values.   ##
    ##                                                                ##
    ####################################################################

    #——————————————————————————-
    # Do not change the following system generated value.
    #——————————————————————————-
    oracle.install.responseFileVersion=/oracle/install/rspfmt_ogginstall_response_schema_v12_1_2


    ################################################################################
    ##                                                                            ##
    ## Oracle GoldenGate installation option and details                          ##
    ##                                                                            ##
    ################################################################################

    #——————————————————————————-
    # Specify the installation option.
    # Specify ORA12c for installing Oracle GoldenGate for Oracle Database 12c and
    #         ORA11g for installing Oracle GoldenGate for Oracle Database 11g
    #——————————————————————————-
    INSTALL_OPTION=ORA12c

    #——————————————————————————-
    # Specify a location to install Oracle GoldenGate
    #——————————————————————————-
    SOFTWARE_LOCATION=/zfssa/dm01/backup/product/ogg/12.2.0.1/gghome

    #——————————————————————————-
    # Specify true to start the manager after installation.
    #——————————————————————————-
    START_MANAGER=true

    #——————————————————————————-
    # Specify a free port within the valid range for the manager process.
    # Required only if START_MANAGER is true.
    #——————————————————————————-
    MANAGER_PORT=7809

    #——————————————————————————-
    # Specify the location of the Oracle Database.
    # Required only if START_MANAGER is true.
    #——————————————————————————-
    DATABASE_LOCATION=/u01/app/oracle/product/11.2.0.4/dbhome


    ################################################################################
    ##                                                                            ##
    ## Specify details to Create inventory for Oracle installs                    ##
    ## Required only for the first Oracle product install on a system.            ##
    ##                                                                            ##
    ################################################################################

    #——————————————————————————-
    # Specify the location which holds the install inventory files.
    # This is an optional parameter if installing on
    # Windows based Operating System.
    #——————————————————————————-
    INVENTORY_LOCATION=/u01/app/oraInventory

    #——————————————————————————-
    # Unix group to be set for the inventory directory.
    # This parameter is not applicable if installing on
    # Windows based Operating System.
    #——————————————————————————-
    UNIX_GROUP_NAME=oinstall

    dm01db01-orcl1 {/u01/app/oracle/software}:


    • Change directory to Disk1 and start Oracle GoldenGate software installation as follows:

    dm01db01-orcl1 {/u01/app/oracle/software}:cd fbo_ggs_Linux_x64_shiphome/Disk1/
    dm01db01-orcl1 {/u01/app/oracle/software/fbo_ggs_Linux_x64_shiphome/Disk1}:ls -ltr
    total 16
    drwxr-xr-x  4 oracle oinstall 4096 Dec 12  2015 install
    drwxr-xr-x 11 oracle oinstall 4096 Dec 12  2015 stage
    -rwxr-xr-x  1 oracle oinstall  918 Dec 12  2015 runInstaller
    drwxrwxr-x  2 oracle oinstall 4096 Dec 12  2015 response

    dm01db01-orcl1 {/u01/app/oracle/software/fbo_ggs_Linux_x64_shiphome/Disk1}:./runInstaller -silent -responseFile /u01/app/oracle/software/oggcore.rsp
    Starting Oracle Universal Installer…

    Checking Temp space: must be greater than 120 MB.   Actual 3317 MB    Passed
    Checking swap space: must be greater than 150 MB.   Actual 24302 MB    Passed
    Preparing to launch Oracle Universal Installer from /tmp/OraInstall2017-01-02_07-31-03AM. Please wait …
    dm01db01-orcl1 {/u01/app/oracle/software/fbo_ggs_Linux_x64_shiphome/Disk1}:You can find the log of this install session at:
     /u01/app/oraInventory/logs/installActions2017-01-02_07-31-03AM.log
    The installation of Oracle GoldenGate Core was successful.
    Please check ‘/u01/app/oraInventory/logs/silentInstall2017-01-02_07-31-03AM.log’ for more details.
    Successfully Setup Software.

    Note: If you look at the log file at ‘/u01/app/oraInventory/logs/installActions2017-01-02_07-31-03AM.log’ it will show you what has been done in the background by the runInstaller


    • Let’s connect to ggsci prompt and verify the manager process

    dm01db01-orcl1 {/u01/app/oracle/software/fbo_ggs_Linux_x64_shiphome/Disk1}:cd /zfssa/dm01/backup/product/ogg/12.2.0.1/gghome/
    dm01db01-orcl1 {/zfssa/dm01/backup/product/ogg/12.2.0.1/gghome}:./ggsci
    ./ggsci: error while loading shared libraries: libnnz11.so: cannot open shared object file: No such file or directory

    ooppss we can’t connect to ggsci. Don’t worry. This is the known issue on Linux/Unix platform. Here is the solution for this issue.


    • Open the .bash_profile and add the following two variables

    dm01db01-orcl1 {/zfssa/dm01/backup/product/ogg/12.2.0.1/gghome}:vi ~/.bash_profile

    export GG_HOME=/zfssa/dm01/backup/product/ogg/12.2.0.1/gghome
    export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$ORACLE_HOME/lib32:$GG_HOME


    • Execute the .bash_profile and verify the variables.

    dm01db01-orcl1 {/zfssa/dm01/backup/product/ogg/12.2.0.1/gghome}:. ~/.bash_profile
    dm01db01-orcl1 {/zfssa/dm01/backup/product/ogg/12.2.0.1/gghome}:echo $GG_HOME
    /zfssa/dm01/backup/product/ogg/12.2.0.1/gghome

    dm01db01-orcl1 {/zfssa/dm01/backup/product/ogg/12.2.0.1/gghome}:echo $LD_LIBRARY_PATH
    /u01/app/oracle/product/11.2.0.4/dbhome/lib:/u01/app/oracle/product/11.2.0.4/dbhome/lib32:/zfssa/dm01/backup/product/ogg/12.2.0.1/gghome


    • Now try connecting to ggsci. 

    Yeah we are able to connect now

    dm01db01-orcl1 {/zfssa/dm01/backup/product/ogg/12.2.0.1/gghome}:./ggsci

    Oracle GoldenGate Command Interpreter for Oracle
    Version 12.2.0.1.1 OGGCORE_12.2.0.1.0_PLATFORMS_151211.1401_FBO
    Linux, x64, 64bit (optimized), Oracle 11g on Dec 12 2015 00:54:38
    Operating system character set identified as UTF-8.

    Copyright (C) 1995, 2015, Oracle and/or its affiliates. All rights reserved.
    GGSCI (dm01db01.netsoftmate.com) 1> 

    • Verify the manager process 

    GGSCI (dm01db01.netsoftmate.com) 1> info all

    Program     Status      Group       Lag at Chkpt  Time Since Chkpt

    MANAGER     RUNNING

    GGSCI (dm01db01.netsoftmate.com) 2> info mgr

    Manager is running (IP port dm01db01.netsoftmate.com.7809, Process ID 53422).

    GGSCI (dm01db01.netsoftmate.com) 3> view params mgr

    PORT 7809

    Conclusion
    This completes our Oracle GoldenGate 12c installation on Exadata database machine. We have seen how much easy it is to install Oracle GoldenGate software wihtout GUI interface. The key for installing Oracle GoldenGate on 12c a RAC environment is to choose a shared location for software. You can also choose to install Oracle GoldenGate on local file system if you don’t have a shared location.

    0



    Overview:

    Oracle Recovery Manager (RMAN) provides a comprehensive foundation for efficiently backing up and recovering the Oracle databases, it provides a common interface, via command line and Enterprise Manager, for backup tasks across different host operating systems, automates administration of your backup strategies.

    Prerequisites:


    • Database should be in archive log mode.
    • We need to have super user credentials.

    Steps to schedule Rman backup:

    • Create Rman scripts
    Open textpad
    Set ORACLE_SID=<DB_Name>

    D:oracle11204product11.2.0dbhome_1BINrman.exe target / cmdfile= ‘F:Backup_scriptsdbname_rman_target.sql’ log=’F:Backup_scriptsdbname_target_backup.log’

    Save and exit

    Run
    {
    Allocate channel c1 device type disk;
    Allocate channel c2 device type disk;
    Allocate channel c3 device type disk;

    Crosscheck backup;
    Crosscheck archivelog all;

    Delete noprompt expired backup;
    Delete noprompt expired archivelog all;

    Backup as compressed backupset database;
    Backup as compressed backupset archivelog all;

    Delete noprompt backup completed before ‘sysdate-3’;
    Delete noprompt archivelog all completed before ‘sysdate-2’;

    Backup current controlfile;




    • Open the task scheduler from start menu then right click and click on create new Task.


    • Give name and description of Backup in General Tab.



    • Click on trigger tab then click on new to schedule.



    • Provide backup date and time then click on OK.



    • Now click on action tab then new.


    • On this screen browse and supply Rman script name and location then click ok.



    • Now go to condition tab and check the conditions.

    Check setting tab and click OK



    • Once click ok, it will prompt for password, provide Administrator password and click ok


    • Backup has been schedule now.



    Conclusion:
    In above article we have learned that, how to schedule Rman backup on windows environment, where we have prepared Rman scripts and schedule it through task scheduler.



    BY
    Name: Mirza Hidayathullah Baig
    Designation: Senior Database Engineer
    Organization: Netsoftmate IT Solutions. 
    Email: info@netsoftmate.com
     




    2

    Overview
    When you configure DBFS on Exadata, it recommended configuring a separate database to be used for DBFS. In this article we will demonstrate how to create a Database to store DBSF (Database File System) on Exadata Database Machine. Using DBCA (Database Configuration Assistance) Utility is the recommended method for creating a Database to store DBFS.

    Environment
    Exadata X4-2 Quarter Rack


    Steps to Create a Database Create a Database


    • Login to the Exadata Compute node 1, export DISPLAY variable and Invoke DBCA utility



    • Choose the first option “Real Application Clusters (RAC) database.” Click Next



    • Choose the option “Create a Database”. Click Next



    • Choose the option “General Purpose or Transaction Processing template”. Click Next



    • Choose the option “Admin-Managed”, select all nodes and Enter Name your database. Here we are specifying the Database name as “fsdb”. Click Next



    • Uncheck “configure Enterprise Manager” as we will be managing this database using OEM. Enable automatic maintenance tasks as per site requirements. Click Next



    • Select “Use the Same Administrative Password for All Account” and enter a password. Click Next



    • Ignore the warning and click Yes to continue



    • Choose Automatic Storage Management and Oracle-Managed Files. Select the desired Disk Group FLASH_DATA01. This DG has adequate space for DBFS database. Click Next



    • Uncheck Flash Recovery Area and Uncheck Enable Archiving. For DBFS database Archive log mode is not necessary. Click Next



    • Click Next



    • In the Memory Tab, choose Custom and then Automatic Shared Memory Management. Enter 1536 and choose M Bytes for units in the SGA box and enter 6656 and choose M Bytes for units in the PGA Size box. 



    • In the Character Sets tab choose AL32UTF8 as the Database Character Set and AL16UTF16 as National Character set. Click Next



    • Open the All Initialization Parameters dialogue. Select “Show Advanced Parameters”. Scroll down to parallel_max_servers and enter “2” under the Value column



    • If diskgroup DBFS_DG’s compatible.rdbms attribute is set to 11.2.0.4.0 then in DBCA set compatible=11.2.0.4.0 in All Initialization Parameters screen.

    Not setting compatible.rdbms properly can result in ORA-15204 error while creating the database. Click Close


    • Click Finish

    Wait for the DBCA to complete creating the database.


    Check the database status using srvctl command.

    oraclouddbadm01-dbm011 {/home/oracle}:srvctl status database -d fsdb

    Instance fsdb1 is running on node oraclouddbadm01

    Instance fsdb2 is running on node oraclouddbadm02


    Important Notes:

    1.      See MOS note: 1468931.1 for issues related to running DBCA.
    2.      The default Redo log size chooses by DBCA template is sufficient.
    3.      You can create tablespace for DBFS as either SMALLFILE or BIGFILE.
    4.      Include the following options when creating a tablespace for DBFS:
    NOLOGGING ONLINE PERMANENT EXTENT MANAGEMENT LOCAL AUTOALLOCATE  SEGMENT SPACE MANAGEMENT AUTO
    Example:

    SQL> create bigfile tablespace dbfsts datafile ‘+FLASH_DATA01’ size 100g autoextend on next 8g maxsize 300g NOLOGGING EXTENT MANAGEMENT LOCAL AUTOALLOCATE  SEGMENT SPACE MANAGEMENT AUTO ;


    0


    Overview:
    Oracle Golden Gate provides very fast replication of data by reading transaction logs and writing the changes to one or more target databases in a homogeneous and heterogeneous environment. It is useful for High Availability Architectures and especially for Data Warehouse and Decision Support Systems. Thus, the variety of techniques and methods spreads from unidirectional environments for query offloading/reporting to bidirectional or Peer-to-Peer architectures in an active-active fashion.

    Environment Details

    Hostname
    Node1 and Node2
    Operating system
    Linux
    Environment
    production
    Oracle Home
    /u01/app/oracle/product/11.2.0/db
    GoldenGate software staging location
    /u01/app/oracle/software/OGG12c
    GoldenGate Shared Home
    /oraggs/app/ggs12c/ggs

    Software requirement:
    Download the Oracle GoldenGate base version 12.1.2.1.0(V46695-01.zip) from the Oracle Software Delivery Cloud or OTN by entering the following URL into your web browser: http://otn.oracle.com or http://edelivery.oracle.com
    • Create staging area for GoldenGate software.

    $ cd /u01/app/oracle/software/
    $ mkdir OGG12c

    Copy downloaded Oracle GoldenGate 12c Base software to Node 1
    • Unzip the Goldengate 12c Base version from directory OGG12c

    $ cd /u01/app/oracle/software/OGG12c
    $ unzip V46695-01.zip

    Installing Oracle GoldenGate 12c Base release (12.1.2.1.0)
    • Navigate to GoldenGate software staging directory and launch the runInstaller

    $ cd /u01/app/oracle/software/OGG12c
    $ ls -l
    $ cd fbo_ggs_Linux_x64_shiphome/Disk1
    $ ./runInstaller

    Screen 1: Select Oracle Database 11g

     Screen 2: Enter Oracle GoldenGate 12c home “/oraggs/app/ggs12c/ggs” and uncheck Start Manager

     Screen 3: Click Finish

     Screen 4: Installation progress 


     Screen 5: Click Close to complete the installation 

    •  Verify the Oracle GoldenGate 12c Installation

    $ cd /oraggs/app/ggs12c/ggs
    $ ./ggsci –v

    $ ./ggsci
    GGSCI> info all


    Conclusion:
    In this article we have learnt how to install oracle GoldenGate software using Oracle universal installer. GoldenGate software installation using OUI become much easier and efficient. 
    3

    Uncategorized
    Overview
    To manage and monitor Exadata Database Machine you must discover it in Oracle Enterprise Manager. Before you discover Exadata DBM you first Install EM Agent on all Exadata Compute nodes. The Guided Discovery Process of OEM helps you discover all the Exadata Components easily.

    The following Exadata components can be monitored and managed by OEM:
     
    • Compute Nodes
    • Storage Cells
    • Infiniband Switches
    • Cisco Switches
    • Power Distribution Units
    • KVM
    In this article I will demonstrate how to discover an Exadata Database Machine in OEM 13c. Discover Exadata in OEM 13c is no different than OEM 12c except couple of changes. The graphics part of the OEM 13c looks very coolJ

    Before we starting with the Discovery process make sure that OEM 13c Agent is installed on Compute nodes. You can find the article to install EM Agent at:

     
    Before you start make sure
     
    • OEM 13c server is Installed and Configured
    • OEM 13c Agent is installed on all Exadata Compute Nodes
    • SYSMAN User password
    • Oracle user password
    • Root user password for Compute nodes, Storage Cells and Infiniband Switches

    Procedure to Discover Exadata Database Machine in OEM 13c

    Enter the OEM 13c address in the web browser

    Enter the SYSMAN user and password or any other user with admin privileges.

    This is our OEM 13c home page

    From the home, click Setup –> Add Target –> Add Targets Manually

    Click on “Add Using Guided Process”

    Select “Oracle Exadata Database Machine” and click Add button.

    Select “Discover a new Database Machine and its hardware components and targets”, “13c target type with enhanced hardware monitoring, requiring additional credentials” and Click “Discover Targets”

    On this page, search or enter the EM agent URL for compute node 1 and, Click Add buton and add the compute node 1 and enter the oracle user credentials.
    Note: Make databasemachine.xml exist and Oracle user have necessary permissions to read it.




    Select Compute node 1 and click select.

    Click Next

    On this page, enter the first Infiniband Switch name and root credentials and test connection. Click Next


    Click Next

    All the Exadata Components are Discovered and shown on this page. Click Next



    This Page shows the Exadata Components monitored by different Agents. Click Next





    On this page Enter the Credentials for Agent Host, Compute Node ILOM, Storage Cell, IB Switch, PDU, Cisco Switch and test connection for each of them. Click Next











    Review the Summary Page and Click Next 




    The Target Promotion in progress 

    Click Done on the final page (Not shown here). Make sure no errors are reported.

    Click Launch Database Machine will bring you to the following page 

    This is the Photo realistic image of Exadata Database machine.

    We have discovered Exadata Database Machine successfully in OEM 13c
     
    Conclusion
    In this article we have seen how to discover an Exadata Database Machine in Oracle Enterprise Manager 13c using simple Guided discovery process. Oracle Enterprise manager 13c considered ideal for managing and monitoring Exadata Database Machine.
     
     
     
    2

    Overview
    We know that Exadata consists of Storage grid, compute grid and Network grid. Exadata Storage runs the Exadata storage server software which comes preinstalled and is responsible for satisfying database IO requests and implementing unique Exadata features like Smart scan, Smart Flash cache, and storage index and so on.

    The Exadata storage cell consists of:
    • Hardware (Hard disk, Flash cache, Memory, Processor & IB ports)
    • Exadata (Linux Operating System, Firmware, Exadata software)


    The Exadata storage software should be update periodically.  Oracle releases patches for Exadata to keep these components updated. These patches can be applied online (Rolling) or offline (Non-Rolling).

    About patchmgr utility
    The patchmgr utility can be used for upgrading, rollback and backup Exadata Storage cells. patchmgr utility can be used for upgrading Storage cells in a rolling or non-rolling fashion. Non-Rolling is default. Storage server patches apply operating system, firmware, and driver updates.

    Launch patchmgr from the compute node that is node 1 that has user equivalence setup to all the storage cells.

    In this article I will demonstrate how to perform Exadata Storage Software upgrade using patchmgr utility.

    MOS Notes
    Read the following MOS notes carefully.
    • Exadata Database Machine and Exadata Storage Server Supported Versions (Doc ID 888828.1)
    • Exadata 12.1.2.2.0 release and patch (20131726) (Doc ID 2038073.1)
    • 1070954.1: Oracle Exadata Database Machine exachk or HealthCheck

    Note: Always run Exachk before and after patching.

    Software Download
    Download the following patches required for Upgrading Storage cells.
    • Patch 20131726 – Storage server and InfiniBand switch software

    Current Environment
    • Exadata V2 Full Rack (8 Compute nodes, 14 Storage Cells and 3 IB Switches) running ESS version 12.1.2.1.1

    Current Image version
    Execute the “imageinfo” command on one of the Storage cells to identify the current Exadata Image version

    [root@oracloudceladm01 ~]# imageinfo

    Kernel version: 2.6.39-400.248.3.el6uek.x86_64 #1 SMP Wed Mar 11 18:04:34 PDT 2015 x86_64
    Cell version: OSS_12.1.2.1.1_LINUX.X64_150316.2
    Cell rpm version: cell-12.1.2.1.1_LINUX.X64_150316.2-1.x86_64

    Active image version: 12.1.2.1.1.150316.2
    Active image activated: 2015-04-27 16:55:04 -0500
    Active image status: success
    Active system partition on device: /dev/md5
    Active software partition on device: /dev/md7

    Cell boot usb partition: /dev/sdac1
    Cell boot usb version: 12.1.2.1.1.150316.2

    Inactive image version: 12.1.2.1.0.141206.1
    Inactive image activated: 2015-02-25 07:39:28 -0600
    Inactive image status: success
    Inactive system partition on device: /dev/md6
    Inactive software partition on device: /dev/md8

    Inactive marker for the rollback: /boot/I_am_hd_boot.inactive
    Inactive grub config for the rollback: /boot/grub/grub.conf.inactive
    Inactive kernel version for the rollback: 2.6.39-400.243.1.el6uek.x86_64
    Rollback to the inactive partitions: Possible

    Pre-requisites
    • root user access for compute node and Storage cells.
    • root user equivalence must be setup between compute node and storage cells.

    #dcli -g dbs_group -l root –k
    • Shutdown database(s) and Clusterware stack.

    $ srvctl stop database -d dbm01
    # $GRID_HOME/crsctl stop cluster –all
    # dcli -g dbs_group -l root ‘/u01/app/12.1.0.2/grid/bin/crsctl stop crs’
    cell_group file containing storage cell names or IP address per line
    • Storage Cell software downloaded and stage into a directory

    # pwd /u01/patches/ESS_121220

    Steps to perform Storage Cell Patching

    • Identify the Storage Software Patch to be applied. Here we have copied the Patch 20131726 to the following location.

    [root@dm01db01 ~]# cd /u01/stage/ESS_Patch/

    [root@dm01db01 ESS_Patch]# ls -l
    total 2537072
    -rw-r–r– 1 root root 1550028016 Sep 27 07:39 p20131726_121220_Linux-x86-64.zip

    •  Ensure that root user ssh equivalence is setup by running the following command.

    [root@dm01db01 ESS_Patch]# dcli -g ~/cell_group -l root ‘hostname -i’
    dm01cel01: 10.10.41.208
    dm01cel02: 10.10.41.209
    dm01cel03: 10.10.41.210
    dm01cel04: 10.10.41.211
    dm01cel05: 10.10.41.212
    dm01cel06: 10.10.41.213
    dm01cel07: 10.10.41.214
    dm01cel08: 10.10.41.215
    dm01cel09: 10.10.41.216
    dm01cel10: 10.10.41.217
    dm01cel11: 10.10.41.218
    dm01cel12: 10.10.41.219
    dm01cel13: 10.10.41.220
    dm01cel14: 10.10.41.221

    • Switch to grid software owner (Oracle) and update the disk_repair_time parameter to higher value to avoid dropping the grid disks from the ASM disk group.

    [root@dm01db01 ESS_Patch]# su – oracle
    dm01db01-dbm1 {/home/oracle}:ps -ef|grep pmon
    oracle    9171     1  0 Sep02 ?        00:02:10 mdb_pmon_-MGMTDB
    oracle   22767     1  0 Sep02 ?        00:06:34 ora_pmon_dbm1
    oracle   25181     1  0 Sep02 ?        00:02:58 asm_pmon_+ASM1
    oracle   25619 25442  0 01:50 pts/0    00:00:00 grep pmon

    dm01db01-dbm1 {/home/oracle}:. oraenv
    ORACLE_SID = [dbm1] ? +ASM1
    The Oracle base remains unchanged with value /u01/app/oracle

    dm01db01-+ASM1 {/home/oracle}:sqlplus / as sysasm

    SQL*Plus: Release 12.1.0.2.0 Production on Sat Oct 3 01:50:37 2015
    Copyright (c) 1982, 2014, Oracle.  All rights reserved.

    Connected to:
    Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 – 64bit Production
    With the Real Application Clusters and Automatic Storage Management options

    SQL> col value for a40
    SQL> select dg.name,a.value from v$asm_diskgroup dg, v$asm_attribute a where dg.group_number=a.group_number and
    a.name=’disk_repair_time’;

    NAME                           VALUE
    —————————— —————————————-
    DATA_DM01                      8.5H
    RECO_DM01                      3.6h


    SQL> alter diskgroup RECO_DM01 set attribute ‘disk_repair_time’=’8.5h’;
    Diskgroup altered.

    SQL> select dg.name,a.value from v$asm_diskgroup dg, v$asm_attribute a where dg.group_number=a.group_number and
    a.name=’disk_repair_time’;

    NAME                           VALUE
    —————————— —————————————-
    DATA_DM01                      8.5H
    RECO_DM01                      8.5h

    SQL> exit
    Disconnected from Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 – 64bit Production
    With the Real Application Clusters and Automatic Storage Management options

    dm01db01-+ASM1 {/home/oracle}:exit
    logout

    •  Shutdown the Clusterware on all the Exadata compute nodes as follows:

    [root@dm01db01 ESS_Patch]# cd /u01/app/12.1.0.2/grid/bin/

    [root@dm01db01 bin]# ./crsctl stop cluster -all
    CRS-2673: Attempting to stop ‘ora.crsd’ on ‘dm01db02’
    CRS-2673: Attempting to stop ‘ora.crsd’ on ‘dm01db04’
    CRS-2673: Attempting to stop ‘ora.crsd’ on ‘dm01db03’
    CRS-2790: Starting shutdown of Cluster Ready Services-managed resources on ‘dm01db02’
    CRS-2673: Attempting to stop ‘ora.crsd’ on ‘dm01db01’
    CRS-2673: Attempting to stop ‘ora.dbm.dbmlab.svc’ on ‘dm01db02’
    CRS-2673: Attempting to stop ‘ora.LISTENER_IB.lsnr’ on ‘dm01db02’
    CRS-2790: Starting shutdown of Cluster Ready Services-managed resources on ‘dm01db04’
    CRS-2673: Attempting to stop ‘ora.LISTENER_SCAN1.lsnr’ on ‘dm01db02’
    CRS-2673: Attempting to stop ‘ora.dbm.dbmlab.svc’ on ‘dm01db04’
    CRS-2673: Attempting to stop ‘ora.LISTENER.lsnr’ on ‘dm01db02’
    CRS-2673: Attempting to stop ‘ora.dbm.oragraph.svc’ on ‘dm01db04’
    CRS-2790: Starting shutdown of Cluster Ready Services-managed resources on ‘dm01db03’
    CRS-2673: Attempting to stop ‘ora.LISTENER_SCAN3.lsnr’ on ‘dm01db04’
    CRS-2673: Attempting to stop ‘ora.dbm.oragraph.svc’ on ‘dm01db03’
    CRS-2673: Attempting to stop ‘ora.LISTENER_IB.lsnr’ on ‘dm01db04’
    CRS-2673: Attempting to stop ‘ora.LISTENER.lsnr’ on ‘dm01db03’
    CRS-2673: Attempting to stop ‘ora.LISTENER_IB.lsnr’ on ‘dm01db03’
    CRS-2790: Starting shutdown of Cluster Ready Services-managed resources on ‘dm01db01’
    CRS-2673: Attempting to stop ‘ora.dbm.dbmlab.svc’ on ‘dm01db01’
    CRS-2677: Stop of ‘ora.dbm.dbmlab.svc’ on ‘dm01db02’ succeeded
    CRS-2673: Attempting to stop ‘ora.dbm.oragraph.svc’ on ‘dm01db01’
    CRS-2673: Attempting to stop ‘ora.dbm.oragraph.svc’ on ‘dm01db02’
    CRS-2673: Attempting to stop ‘ora.LISTENER_SCAN2.lsnr’ on ‘dm01db01’
    CRS-2677: Stop of ‘ora.dbm.oragraph.svc’ on ‘dm01db02’ succeeded
    CRS-2673: Attempting to stop ‘ora.LISTENER.lsnr’ on ‘dm01db01’
    CRS-2673: Attempting to stop ‘ora.LISTENER_IB.lsnr’ on ‘dm01db01’
    CRS-2673: Attempting to stop ‘ora.dbm.db’ on ‘dm01db02’
    CRS-2677: Stop of ‘ora.LISTENER_SCAN3.lsnr’ on ‘dm01db04’ succeeded
    CRS-2673: Attempting to stop ‘ora.scan3.vip’ on ‘dm01db04’
    CRS-2677: Stop of ‘ora.LISTENER.lsnr’ on ‘dm01db03’ succeeded
    CRS-2677: Stop of ‘ora.LISTENER_IB.lsnr’ on ‘dm01db03’ succeeded
    CRS-2677: Stop of ‘ora.LISTENER_SCAN2.lsnr’ on ‘dm01db01’ succeeded
    CRS-2673: Attempting to stop ‘ora.scan2.vip’ on ‘dm01db01’
    CRS-2677: Stop of ‘ora.LISTENER.lsnr’ on ‘dm01db01’ succeeded
    CRS-2673: Attempting to stop ‘ora.crsd’ on ‘dm01db05’
    CRS-2673: Attempting to stop ‘ora.crsd’ on ‘dm01db06’
    CRS-2673: Attempting to stop ‘ora.crsd’ on ‘dm01db07’
    CRS-2673: Attempting to stop ‘ora.crsd’ on ‘dm01db08’
    CRS-2790: Starting shutdown of Cluster Ready Services-managed resources on ‘dm01db05’
    CRS-2673: Attempting to stop ‘ora.dbm.oragraph.svc’ on ‘dm01db05’
    CRS-2673: Attempting to stop ‘ora.LISTENER_IB.lsnr’ on ‘dm01db05’
    CRS-2673: Attempting to stop ‘ora.oc4j’ on ‘dm01db05’
    CRS-2790: Starting shutdown of Cluster Ready Services-managed resources on ‘dm01db07’
    CRS-2673: Attempting to stop ‘ora.LISTENER.lsnr’ on ‘dm01db07’
    CRS-2673: Attempting to stop ‘ora.LISTENER_IB.lsnr’ on ‘dm01db07’
    CRS-2790: Starting shutdown of Cluster Ready Services-managed resources on ‘dm01db08’
    CRS-2673: Attempting to stop ‘ora.LISTENER_IB.lsnr’ on ‘dm01db08’
    CRS-2673: Attempting to stop ‘ora.dbm.dbmlab.svc’ on ‘dm01db08’
    CRS-2673: Attempting to stop ‘ora.dbm.oragraph.svc’ on ‘dm01db08’
    CRS-2673: Attempting to stop ‘ora.LISTENER.lsnr’ on ‘dm01db08’
    CRS-2677: Stop of ‘ora.LISTENER_IB.lsnr’ on ‘dm01db05’ succeeded
    CRS-2673: Attempting to stop ‘ora.dm01db05_2.vip’ on ‘dm01db05’
    CRS-2677: Stop of ‘ora.LISTENER.lsnr’ on ‘dm01db07’ succeeded
    CRS-2677: Stop of ‘ora.LISTENER_IB.lsnr’ on ‘dm01db04’ succeeded
    CRS-2677: Stop of ‘ora.LISTENER_IB.lsnr’ on ‘dm01db08’ succeeded
    CRS-2677: Stop of ‘ora.LISTENER_IB.lsnr’ on ‘dm01db01’ succeeded
    CRS-2673: Attempting to stop ‘ora.dm01db01_2.vip’ on ‘dm01db01’
    CRS-2677: Stop of ‘ora.dm01db01_2.vip’ on ‘dm01db01’ succeeded
    CRS-2677: Stop of ‘ora.dm01db05_2.vip’ on ‘dm01db05’ succeeded
    CRS-2790: Starting shutdown of Cluster Ready Services-managed resources on ‘dm01db06’
    CRS-2673: Attempting to stop ‘ora.dbm.oragraph.svc’ on ‘dm01db06’
    CRS-2673: Attempting to stop ‘ora.LISTENER_IB.lsnr’ on ‘dm01db06’
    CRS-2677: Stop of ‘ora.LISTENER_IB.lsnr’ on ‘dm01db06’ succeeded
    CRS-2673: Attempting to stop ‘ora.dm01db06_2.vip’ on ‘dm01db06’
    CRS-2673: Attempting to stop ‘ora.dm01db08_2.vip’ on ‘dm01db08’
    CRS-2677: Stop of ‘ora.LISTENER.lsnr’ on ‘dm01db08’ succeeded
    CRS-2677: Stop of ‘ora.scan2.vip’ on ‘dm01db01’ succeeded
    CRS-2677: Stop of ‘ora.LISTENER_IB.lsnr’ on ‘dm01db07’ succeeded
    CRS-2673: Attempting to stop ‘ora.dm01db04_2.vip’ on ‘dm01db04’
    CRS-2677: Stop of ‘ora.LISTENER_IB.lsnr’ on ‘dm01db02’ succeeded
    CRS-2673: Attempting to stop ‘ora.dm01db02_2.vip’ on ‘dm01db02’
    CRS-2673: Attempting to stop ‘ora.dm01db03_2.vip’ on ‘dm01db03’
    CRS-2677: Stop of ‘ora.LISTENER_SCAN1.lsnr’ on ‘dm01db02’ succeeded
    CRS-2677: Stop of ‘ora.LISTENER.lsnr’ on ‘dm01db02’ succeeded
    CRS-2673: Attempting to stop ‘ora.dm01db02.vip’ on ‘dm01db02’
    CRS-2673: Attempting to stop ‘ora.scan1.vip’ on ‘dm01db02’
    CRS-2677: Stop of ‘ora.dm01db03_2.vip’ on ‘dm01db03’ succeeded
    CRS-2677: Stop of ‘ora.dbm.db’ on ‘dm01db02’ succeeded
    CRS-2673: Attempting to stop ‘ora.DATA_DM01.dg’ on ‘dm01db02’
    CRS-2677: Stop of ‘ora.dm01db08_2.vip’ on ‘dm01db08’ succeeded
    CRS-2673: Attempting to stop ‘ora.RECO_DM01.dg’ on ‘dm01db02’
    CRS-2677: Stop of ‘ora.dm01db06_2.vip’ on ‘dm01db06’ succeeded
    CRS-2677: Stop of ‘ora.dm01db02.vip’ on ‘dm01db02’ succeeded
    CRS-2673: Attempting to stop ‘ora.dm01db07_2.vip’ on ‘dm01db07’
    CRS-2677: Stop of ‘ora.dm01db07_2.vip’ on ‘dm01db07’ succeeded
    CRS-2677: Stop of ‘ora.dm01db04_2.vip’ on ‘dm01db04’ succeeded
    CRS-2677: Stop of ‘ora.scan3.vip’ on ‘dm01db04’ succeeded
    CRS-2677: Stop of ‘ora.dm01db02_2.vip’ on ‘dm01db02’ succeeded
    CRS-2677: Stop of ‘ora.scan1.vip’ on ‘dm01db02’ succeeded
    CRS-2677: Stop of ‘ora.DATA_DM01.dg’ on ‘dm01db02’ succeeded
    CRS-2677: Stop of ‘ora.RECO_DM01.dg’ on ‘dm01db02’ succeeded
    CRS-2673: Attempting to stop ‘ora.asm’ on ‘dm01db02’
    CRS-2677: Stop of ‘ora.asm’ on ‘dm01db02’ succeeded
    CRS-2677: Stop of ‘ora.oc4j’ on ‘dm01db05’ succeeded
    CRS-2673: Attempting to stop ‘ora.ons’ on ‘dm01db02’
    CRS-2673: Attempting to stop ‘ora.net2.network’ on ‘dm01db02’
    CRS-2677: Stop of ‘ora.net2.network’ on ‘dm01db02’ succeeded
    CRS-2677: Stop of ‘ora.ons’ on ‘dm01db02’ succeeded
    CRS-2673: Attempting to stop ‘ora.net1.network’ on ‘dm01db02’
    CRS-2677: Stop of ‘ora.net1.network’ on ‘dm01db02’ succeeded
    CRS-2792: Shutdown of Cluster Ready Services-managed resources on ‘dm01db02’ has completed
    CRS-2677: Stop of ‘ora.dbm.oragraph.svc’ on ‘dm01db03’ succeeded
    CRS-2673: Attempting to stop ‘ora.dbm.dbmlab.svc’ on ‘dm01db03’
    CRS-2677: Stop of ‘ora.dbm.dbmlab.svc’ on ‘dm01db03’ succeeded
    CRS-2673: Attempting to stop ‘ora.dbm.db’ on ‘dm01db03’
    CRS-2673: Attempting to stop ‘ora.dm01db03.vip’ on ‘dm01db03’
    CRS-2677: Stop of ‘ora.crsd’ on ‘dm01db02’ succeeded
    CRS-2673: Attempting to stop ‘ora.ctssd’ on ‘dm01db02’
    CRS-2673: Attempting to stop ‘ora.evmd’ on ‘dm01db02’
    CRS-2673: Attempting to stop ‘ora.storage’ on ‘dm01db02’
    CRS-2677: Stop of ‘ora.storage’ on ‘dm01db02’ succeeded
    CRS-2673: Attempting to stop ‘ora.asm’ on ‘dm01db02’
    CRS-2677: Stop of ‘ora.dm01db03.vip’ on ‘dm01db03’ succeeded
    CRS-2677: Stop of ‘ora.dbm.db’ on ‘dm01db03’ succeeded
    CRS-2673: Attempting to stop ‘ora.RECO_DM01.dg’ on ‘dm01db03’
    CRS-2673: Attempting to stop ‘ora.DATA_DM01.dg’ on ‘dm01db03’
    CRS-2677: Stop of ‘ora.ctssd’ on ‘dm01db02’ succeeded
    CRS-2677: Stop of ‘ora.DATA_DM01.dg’ on ‘dm01db03’ succeeded
    CRS-2677: Stop of ‘ora.RECO_DM01.dg’ on ‘dm01db03’ succeeded
    CRS-2673: Attempting to stop ‘ora.asm’ on ‘dm01db03’
    CRS-2677: Stop of ‘ora.asm’ on ‘dm01db03’ succeeded
    CRS-2673: Attempting to stop ‘ora.ons’ on ‘dm01db03’
    CRS-2673: Attempting to stop ‘ora.net2.network’ on ‘dm01db03’
    CRS-2677: Stop of ‘ora.net2.network’ on ‘dm01db03’ succeeded
    CRS-2677: Stop of ‘ora.ons’ on ‘dm01db03’ succeeded
    CRS-2673: Attempting to stop ‘ora.net1.network’ on ‘dm01db03’
    CRS-2677: Stop of ‘ora.net1.network’ on ‘dm01db03’ succeeded
    CRS-2792: Shutdown of Cluster Ready Services-managed resources on ‘dm01db03’ has completed
    CRS-2677: Stop of ‘ora.crsd’ on ‘dm01db03’ succeeded
    CRS-2673: Attempting to stop ‘ora.ctssd’ on ‘dm01db03’
    CRS-2673: Attempting to stop ‘ora.evmd’ on ‘dm01db03’
    CRS-2673: Attempting to stop ‘ora.storage’ on ‘dm01db03’
    CRS-2677: Stop of ‘ora.storage’ on ‘dm01db03’ succeeded
    CRS-2673: Attempting to stop ‘ora.asm’ on ‘dm01db03’
    CRS-2677: Stop of ‘ora.dbm.oragraph.svc’ on ‘dm01db01’ succeeded
    CRS-2677: Stop of ‘ora.dbm.dbmlab.svc’ on ‘dm01db01’ succeeded
    CRS-2673: Attempting to stop ‘ora.dbm.db’ on ‘dm01db01’
    CRS-2677: Stop of ‘ora.dbm.oragraph.svc’ on ‘dm01db05’ succeeded
    CRS-2673: Attempting to stop ‘ora.dbm.dbmlab.svc’ on ‘dm01db05’
    CRS-2673: Attempting to stop ‘ora.dm01db01.vip’ on ‘dm01db01’
    CRS-2677: Stop of ‘ora.dbm.dbmlab.svc’ on ‘dm01db08’ succeeded
    CRS-2677: Stop of ‘ora.dbm.oragraph.svc’ on ‘dm01db08’ succeeded
    CRS-2677: Stop of ‘ora.dbm.dbmlab.svc’ on ‘dm01db05’ succeeded
    CRS-2673: Attempting to stop ‘ora.dbm.db’ on ‘dm01db05’
    CRS-2673: Attempting to stop ‘ora.dbm.db’ on ‘dm01db08’
    CRS-2673: Attempting to stop ‘ora.LISTENER.lsnr’ on ‘dm01db05’
    CRS-2673: Attempting to stop ‘ora.dm01db08.vip’ on ‘dm01db08’
    CRS-2677: Stop of ‘ora.LISTENER.lsnr’ on ‘dm01db05’ succeeded
    CRS-2673: Attempting to stop ‘ora.dm01db05.vip’ on ‘dm01db05’
    CRS-2677: Stop of ‘ora.ctssd’ on ‘dm01db03’ succeeded
    CRS-2677: Stop of ‘ora.evmd’ on ‘dm01db03’ succeeded
    CRS-2677: Stop of ‘ora.dm01db01.vip’ on ‘dm01db01’ succeeded
    CRS-2677: Stop of ‘ora.dm01db08.vip’ on ‘dm01db08’ succeeded
    CRS-2677: Stop of ‘ora.dbm.db’ on ‘dm01db08’ succeeded
    CRS-2673: Attempting to stop ‘ora.DATA_DM01.dg’ on ‘dm01db08’
    CRS-2677: Stop of ‘ora.dbm.db’ on ‘dm01db05’ succeeded
    CRS-2673: Attempting to stop ‘ora.RECO_DM01.dg’ on ‘dm01db08’
    CRS-2673: Attempting to stop ‘ora.DATA_DM01.dg’ on ‘dm01db05’
    CRS-2673: Attempting to stop ‘ora.RECO_DM01.dg’ on ‘dm01db05’
    CRS-2677: Stop of ‘ora.DATA_DM01.dg’ on ‘dm01db05’ succeeded
    CRS-2677: Stop of ‘ora.dm01db05.vip’ on ‘dm01db05’ succeeded
    CRS-2677: Stop of ‘ora.RECO_DM01.dg’ on ‘dm01db05’ succeeded
    CRS-2673: Attempting to stop ‘ora.asm’ on ‘dm01db05’
    CRS-2677: Stop of ‘ora.asm’ on ‘dm01db05’ succeeded
    CRS-2677: Stop of ‘ora.dbm.db’ on ‘dm01db01’ succeeded
    CRS-2673: Attempting to stop ‘ora.RECO_DM01.dg’ on ‘dm01db01’
    CRS-2673: Attempting to stop ‘ora.mgmtdb’ on ‘dm01db01’
    CRS-2673: Attempting to stop ‘ora.dbm.dbmlab.svc’ on ‘dm01db07’
    CRS-2673: Attempting to stop ‘ora.dbm.oragraph.svc’ on ‘dm01db07’
    CRS-2677: Stop of ‘ora.RECO_DM01.dg’ on ‘dm01db01’ succeeded
    CRS-2677: Stop of ‘ora.DATA_DM01.dg’ on ‘dm01db08’ succeeded
    CRS-2677: Stop of ‘ora.RECO_DM01.dg’ on ‘dm01db08’ succeeded
    CRS-2673: Attempting to stop ‘ora.asm’ on ‘dm01db08’
    CRS-2677: Stop of ‘ora.asm’ on ‘dm01db08’ succeeded
    CRS-2673: Attempting to stop ‘ora.net2.network’ on ‘dm01db08’
    CRS-2677: Stop of ‘ora.net2.network’ on ‘dm01db08’ succeeded
    CRS-2677: Stop of ‘ora.mgmtdb’ on ‘dm01db01’ succeeded
    CRS-2673: Attempting to stop ‘ora.DATA_DM01.dg’ on ‘dm01db01’
    CRS-2673: Attempting to stop ‘ora.MGMTLSNR’ on ‘dm01db01’
    CRS-2677: Stop of ‘ora.DATA_DM01.dg’ on ‘dm01db01’ succeeded
    CRS-2677: Stop of ‘ora.MGMTLSNR’ on ‘dm01db01’ succeeded
    CRS-2673: Attempting to stop ‘ora.asm’ on ‘dm01db01’
    CRS-2673: Attempting to stop ‘ora.ons’ on ‘dm01db08’
    CRS-2677: Stop of ‘ora.asm’ on ‘dm01db01’ succeeded
    CRS-2673: Attempting to stop ‘ora.net2.network’ on ‘dm01db01’
    CRS-2673: Attempting to stop ‘ora.ons’ on ‘dm01db01’
    CRS-2677: Stop of ‘ora.net2.network’ on ‘dm01db01’ succeeded
    CRS-2677: Stop of ‘ora.ons’ on ‘dm01db01’ succeeded
    CRS-2673: Attempting to stop ‘ora.net1.network’ on ‘dm01db01’
    CRS-2677: Stop of ‘ora.net1.network’ on ‘dm01db01’ succeeded
    CRS-2792: Shutdown of Cluster Ready Services-managed resources on ‘dm01db01’ has completed
    CRS-2677: Stop of ‘ora.ons’ on ‘dm01db08’ succeeded
    CRS-2673: Attempting to stop ‘ora.net1.network’ on ‘dm01db08’
    CRS-2677: Stop of ‘ora.net1.network’ on ‘dm01db08’ succeeded
    CRS-2792: Shutdown of Cluster Ready Services-managed resources on ‘dm01db08’ has completed
    CRS-2677: Stop of ‘ora.dbm.oragraph.svc’ on ‘dm01db04’ succeeded
    CRS-2677: Stop of ‘ora.dbm.dbmlab.svc’ on ‘dm01db04’ succeeded
    CRS-2673: Attempting to stop ‘ora.dbm.db’ on ‘dm01db04’
    CRS-2673: Attempting to stop ‘ora.LISTENER.lsnr’ on ‘dm01db04’
    CRS-2677: Stop of ‘ora.LISTENER.lsnr’ on ‘dm01db04’ succeeded
    CRS-2673: Attempting to stop ‘ora.dm01db04.vip’ on ‘dm01db04’
    CRS-2677: Stop of ‘ora.crsd’ on ‘dm01db01’ succeeded
    CRS-2673: Attempting to stop ‘ora.ctssd’ on ‘dm01db01’
    CRS-2673: Attempting to stop ‘ora.evmd’ on ‘dm01db01’
    CRS-2673: Attempting to stop ‘ora.storage’ on ‘dm01db01’
    CRS-2677: Stop of ‘ora.storage’ on ‘dm01db01’ succeeded
    CRS-2673: Attempting to stop ‘ora.asm’ on ‘dm01db01’
    CRS-2677: Stop of ‘ora.crsd’ on ‘dm01db08’ succeeded
    CRS-2673: Attempting to stop ‘ora.ctssd’ on ‘dm01db08’
    CRS-2673: Attempting to stop ‘ora.evmd’ on ‘dm01db08’
    CRS-2673: Attempting to stop ‘ora.storage’ on ‘dm01db08’
    CRS-2677: Stop of ‘ora.storage’ on ‘dm01db08’ succeeded
    CRS-2673: Attempting to stop ‘ora.asm’ on ‘dm01db08’
    CRS-2677: Stop of ‘ora.dbm.db’ on ‘dm01db04’ succeeded
    CRS-2673: Attempting to stop ‘ora.DATA_DM01.dg’ on ‘dm01db04’
    CRS-2673: Attempting to stop ‘ora.RECO_DM01.dg’ on ‘dm01db04’
    CRS-2677: Stop of ‘ora.DATA_DM01.dg’ on ‘dm01db04’ succeeded
    CRS-2677: Stop of ‘ora.asm’ on ‘dm01db02’ succeeded
    CRS-2673: Attempting to stop ‘ora.cluster_interconnect.haip’ on ‘dm01db02’
    CRS-2677: Stop of ‘ora.RECO_DM01.dg’ on ‘dm01db04’ succeeded
    CRS-2673: Attempting to stop ‘ora.asm’ on ‘dm01db04’
    CRS-2677: Stop of ‘ora.asm’ on ‘dm01db04’ succeeded
    CRS-2677: Stop of ‘ora.dm01db04.vip’ on ‘dm01db04’ succeeded
    CRS-2673: Attempting to stop ‘ora.net2.network’ on ‘dm01db04’
    CRS-2673: Attempting to stop ‘ora.ons’ on ‘dm01db04’
    CRS-2677: Stop of ‘ora.net2.network’ on ‘dm01db04’ succeeded
    CRS-2677: Stop of ‘ora.ons’ on ‘dm01db04’ succeeded
    CRS-2673: Attempting to stop ‘ora.net1.network’ on ‘dm01db04’
    CRS-2677: Stop of ‘ora.net1.network’ on ‘dm01db04’ succeeded
    CRS-2792: Shutdown of Cluster Ready Services-managed resources on ‘dm01db04’ has completed
    CRS-2677: Stop of ‘ora.ctssd’ on ‘dm01db01’ succeeded
    CRS-2677: Stop of ‘ora.ctssd’ on ‘dm01db08’ succeeded
    CRS-2677: Stop of ‘ora.evmd’ on ‘dm01db08’ succeeded
    CRS-2677: Stop of ‘ora.cluster_interconnect.haip’ on ‘dm01db02’ succeeded
    CRS-2677: Stop of ‘ora.crsd’ on ‘dm01db04’ succeeded
    CRS-2673: Attempting to stop ‘ora.ctssd’ on ‘dm01db04’
    CRS-2673: Attempting to stop ‘ora.evmd’ on ‘dm01db04’
    CRS-2673: Attempting to stop ‘ora.storage’ on ‘dm01db04’
    CRS-2677: Stop of ‘ora.storage’ on ‘dm01db04’ succeeded
    CRS-2673: Attempting to stop ‘ora.asm’ on ‘dm01db04’
    CRS-2677: Stop of ‘ora.asm’ on ‘dm01db03’ succeeded
    CRS-2673: Attempting to stop ‘ora.cluster_interconnect.haip’ on ‘dm01db03’
    CRS-2677: Stop of ‘ora.dbm.dbmlab.svc’ on ‘dm01db07’ succeeded
    CRS-2677: Stop of ‘ora.dbm.oragraph.svc’ on ‘dm01db07’ succeeded
    CRS-2673: Attempting to stop ‘ora.dbm.db’ on ‘dm01db07’
    CRS-2673: Attempting to stop ‘ora.dm01db07.vip’ on ‘dm01db07’
    CRS-2677: Stop of ‘ora.cluster_interconnect.haip’ on ‘dm01db03’ succeeded
    CRS-2673: Attempting to stop ‘ora.cssd’ on ‘dm01db03’
    CRS-2677: Stop of ‘ora.ctssd’ on ‘dm01db04’ succeeded
    CRS-2677: Stop of ‘ora.evmd’ on ‘dm01db04’ succeeded
    CRS-2677: Stop of ‘ora.dm01db07.vip’ on ‘dm01db07’ succeeded
    CRS-2677: Stop of ‘ora.cssd’ on ‘dm01db03’ succeeded
    CRS-2673: Attempting to stop ‘ora.diskmon’ on ‘dm01db03’
    CRS-2677: Stop of ‘ora.dbm.db’ on ‘dm01db07’ succeeded
    CRS-2673: Attempting to stop ‘ora.DATA_DM01.dg’ on ‘dm01db07’
    CRS-2673: Attempting to stop ‘ora.RECO_DM01.dg’ on ‘dm01db07’
    CRS-2677: Stop of ‘ora.DATA_DM01.dg’ on ‘dm01db07’ succeeded
    CRS-2677: Stop of ‘ora.RECO_DM01.dg’ on ‘dm01db07’ succeeded
    CRS-2673: Attempting to stop ‘ora.asm’ on ‘dm01db07’
    CRS-2677: Stop of ‘ora.asm’ on ‘dm01db07’ succeeded
    CRS-2673: Attempting to stop ‘ora.ons’ on ‘dm01db07’
    CRS-2673: Attempting to stop ‘ora.net2.network’ on ‘dm01db07’
    CRS-2677: Stop of ‘ora.net2.network’ on ‘dm01db07’ succeeded
    CRS-2677: Stop of ‘ora.ons’ on ‘dm01db07’ succeeded
    CRS-2673: Attempting to stop ‘ora.net1.network’ on ‘dm01db07’
    CRS-2677: Stop of ‘ora.net1.network’ on ‘dm01db07’ succeeded
    CRS-2792: Shutdown of Cluster Ready Services-managed resources on ‘dm01db07’ has completed
    CRS-2677: Stop of ‘ora.diskmon’ on ‘dm01db03’ succeeded
    CRS-2677: Stop of ‘ora.crsd’ on ‘dm01db07’ succeeded
    CRS-2673: Attempting to stop ‘ora.ctssd’ on ‘dm01db07’
    CRS-2673: Attempting to stop ‘ora.evmd’ on ‘dm01db07’
    CRS-2673: Attempting to stop ‘ora.storage’ on ‘dm01db07’
    CRS-2677: Stop of ‘ora.storage’ on ‘dm01db07’ succeeded
    CRS-2673: Attempting to stop ‘ora.asm’ on ‘dm01db07’
    CRS-2677: Stop of ‘ora.dbm.oragraph.svc’ on ‘dm01db06’ succeeded
    CRS-2673: Attempting to stop ‘ora.LISTENER.lsnr’ on ‘dm01db06’
    CRS-2673: Attempting to stop ‘ora.dbm.dbmlab.svc’ on ‘dm01db06’
    CRS-2677: Stop of ‘ora.dbm.dbmlab.svc’ on ‘dm01db06’ succeeded
    CRS-2673: Attempting to stop ‘ora.dbm.db’ on ‘dm01db06’
    CRS-2677: Stop of ‘ora.ctssd’ on ‘dm01db07’ succeeded
    CRS-2677: Stop of ‘ora.evmd’ on ‘dm01db07’ succeeded
    CRS-2677: Stop of ‘ora.LISTENER.lsnr’ on ‘dm01db06’ succeeded
    CRS-2673: Attempting to stop ‘ora.dm01db06.vip’ on ‘dm01db06’
    CRS-2677: Stop of ‘ora.dbm.db’ on ‘dm01db06’ succeeded
    CRS-2673: Attempting to stop ‘ora.RECO_DM01.dg’ on ‘dm01db06’
    CRS-2677: Stop of ‘ora.RECO_DM01.dg’ on ‘dm01db06’ succeeded
    CRS-2673: Attempting to stop ‘ora.DATA_DM01.dg’ on ‘dm01db06’
    CRS-2677: Stop of ‘ora.DATA_DM01.dg’ on ‘dm01db06’ succeeded
    CRS-2673: Attempting to stop ‘ora.asm’ on ‘dm01db06’
    CRS-2677: Stop of ‘ora.asm’ on ‘dm01db06’ succeeded
    CRS-2677: Stop of ‘ora.dm01db06.vip’ on ‘dm01db06’ succeeded
    CRS-2673: Attempting to stop ‘ora.ons’ on ‘dm01db06’
    CRS-2673: Attempting to stop ‘ora.net2.network’ on ‘dm01db06’
    CRS-2677: Stop of ‘ora.net2.network’ on ‘dm01db06’ succeeded
    CRS-2677: Stop of ‘ora.ons’ on ‘dm01db06’ succeeded
    CRS-2673: Attempting to stop ‘ora.net1.network’ on ‘dm01db06’
    CRS-2673: Attempting to stop ‘ora.net2.network’ on ‘dm01db05’
    CRS-2673: Attempting to stop ‘ora.ons’ on ‘dm01db05’
    CRS-2677: Stop of ‘ora.net2.network’ on ‘dm01db05’ succeeded
    CRS-2677: Stop of ‘ora.net1.network’ on ‘dm01db06’ succeeded
    CRS-2792: Shutdown of Cluster Ready Services-managed resources on ‘dm01db06’ has completed
    CRS-2677: Stop of ‘ora.ons’ on ‘dm01db05’ succeeded
    CRS-2673: Attempting to stop ‘ora.net1.network’ on ‘dm01db05’
    CRS-2677: Stop of ‘ora.net1.network’ on ‘dm01db05’ succeeded
    CRS-2792: Shutdown of Cluster Ready Services-managed resources on ‘dm01db05’ has completed
    CRS-2677: Stop of ‘ora.asm’ on ‘dm01db01’ succeeded
    CRS-2673: Attempting to stop ‘ora.cluster_interconnect.haip’ on ‘dm01db01’
    CRS-2677: Stop of ‘ora.crsd’ on ‘dm01db06’ succeeded
    CRS-2673: Attempting to stop ‘ora.ctssd’ on ‘dm01db06’
    CRS-2673: Attempting to stop ‘ora.evmd’ on ‘dm01db06’
    CRS-2673: Attempting to stop ‘ora.storage’ on ‘dm01db06’
    CRS-2677: Stop of ‘ora.storage’ on ‘dm01db06’ succeeded
    CRS-2673: Attempting to stop ‘ora.asm’ on ‘dm01db06’
    CRS-2677: Stop of ‘ora.crsd’ on ‘dm01db05’ succeeded
    CRS-2673: Attempting to stop ‘ora.ctssd’ on ‘dm01db05’
    CRS-2673: Attempting to stop ‘ora.evmd’ on ‘dm01db05’
    CRS-2673: Attempting to stop ‘ora.storage’ on ‘dm01db05’
    CRS-2677: Stop of ‘ora.storage’ on ‘dm01db05’ succeeded
    CRS-2673: Attempting to stop ‘ora.asm’ on ‘dm01db05’
    CRS-2677: Stop of ‘ora.cluster_interconnect.haip’ on ‘dm01db01’ succeeded
    CRS-2677: Stop of ‘ora.asm’ on ‘dm01db08’ succeeded
    CRS-2673: Attempting to stop ‘ora.cluster_interconnect.haip’ on ‘dm01db08’
    CRS-2677: Stop of ‘ora.ctssd’ on ‘dm01db06’ succeeded
    CRS-2677: Stop of ‘ora.evmd’ on ‘dm01db06’ succeeded
    CRS-2677: Stop of ‘ora.ctssd’ on ‘dm01db05’ succeeded
    CRS-2677: Stop of ‘ora.evmd’ on ‘dm01db05’ succeeded
    CRS-2677: Stop of ‘ora.cluster_interconnect.haip’ on ‘dm01db08’ succeeded
    CRS-2673: Attempting to stop ‘ora.cssd’ on ‘dm01db08’
    CRS-2677: Stop of ‘ora.cssd’ on ‘dm01db08’ succeeded
    CRS-2673: Attempting to stop ‘ora.diskmon’ on ‘dm01db08’
    CRS-2677: Stop of ‘ora.evmd’ on ‘dm01db01’ succeeded
    CRS-2673: Attempting to stop ‘ora.cssd’ on ‘dm01db01’
    CRS-2677: Stop of ‘ora.diskmon’ on ‘dm01db08’ succeeded
    CRS-2677: Stop of ‘ora.cssd’ on ‘dm01db01’ succeeded
    CRS-2673: Attempting to stop ‘ora.diskmon’ on ‘dm01db01’
    CRS-2677: Stop of ‘ora.asm’ on ‘dm01db07’ succeeded
    CRS-2673: Attempting to stop ‘ora.cluster_interconnect.haip’ on ‘dm01db07’
    CRS-2677: Stop of ‘ora.diskmon’ on ‘dm01db01’ succeeded
    CRS-2677: Stop of ‘ora.asm’ on ‘dm01db04’ succeeded
    CRS-2673: Attempting to stop ‘ora.cluster_interconnect.haip’ on ‘dm01db04’
    CRS-2677: Stop of ‘ora.cluster_interconnect.haip’ on ‘dm01db04’ succeeded
    CRS-2673: Attempting to stop ‘ora.cssd’ on ‘dm01db04’
    CRS-2677: Stop of ‘ora.cluster_interconnect.haip’ on ‘dm01db07’ succeeded
    CRS-2673: Attempting to stop ‘ora.cssd’ on ‘dm01db07’
    CRS-2677: Stop of ‘ora.evmd’ on ‘dm01db02’ succeeded
    CRS-2673: Attempting to stop ‘ora.cssd’ on ‘dm01db02’
    CRS-2677: Stop of ‘ora.cssd’ on ‘dm01db04’ succeeded
    CRS-2673: Attempting to stop ‘ora.diskmon’ on ‘dm01db04’
    CRS-2677: Stop of ‘ora.cssd’ on ‘dm01db07’ succeeded
    CRS-2673: Attempting to stop ‘ora.diskmon’ on ‘dm01db07’
    CRS-2677: Stop of ‘ora.cssd’ on ‘dm01db02’ succeeded
    CRS-2673: Attempting to stop ‘ora.diskmon’ on ‘dm01db02’
    CRS-2677: Stop of ‘ora.diskmon’ on ‘dm01db02’ succeeded
    CRS-2677: Stop of ‘ora.diskmon’ on ‘dm01db07’ succeeded
    CRS-2677: Stop of ‘ora.diskmon’ on ‘dm01db04’ succeeded
    CRS-2677: Stop of ‘ora.asm’ on ‘dm01db05’ succeeded
    CRS-2673: Attempting to stop ‘ora.cluster_interconnect.haip’ on ‘dm01db05’
    CRS-2677: Stop of ‘ora.cluster_interconnect.haip’ on ‘dm01db05’ succeeded
    CRS-2673: Attempting to stop ‘ora.cssd’ on ‘dm01db05’
    CRS-2677: Stop of ‘ora.cssd’ on ‘dm01db05’ succeeded
    CRS-2673: Attempting to stop ‘ora.diskmon’ on ‘dm01db05’
    CRS-2677: Stop of ‘ora.asm’ on ‘dm01db06’ succeeded
    CRS-2673: Attempting to stop ‘ora.cluster_interconnect.haip’ on ‘dm01db06’
    CRS-2677: Stop of ‘ora.diskmon’ on ‘dm01db05’ succeeded
    CRS-2677: Stop of ‘ora.cluster_interconnect.haip’ on ‘dm01db06’ succeeded
    CRS-2673: Attempting to stop ‘ora.cssd’ on ‘dm01db06’
    CRS-2677: Stop of ‘ora.cssd’ on ‘dm01db06’ succeeded
    CRS-2673: Attempting to stop ‘ora.diskmon’ on ‘dm01db06’
    CRS-2677: Stop of ‘ora.diskmon’ on ‘dm01db06’ succeeded

    [root@dm01db01 bin]# ps -ef|grep grid
    root      2411     1  0 Sep02 ?        03:07:44 /u01/app/12.1.0.2/grid/jdk/jre/bin/java -Xms128m -Xmx512m –classpath /u01/app/12.1.0.2/grid/tfa/dm01db01/tfa_home/jlib/RATFA.jar:/u01/app/12.1.0.2/grid/tfa/dm01db01/tfa_home/jlib/je-5.0.84.jar:/u01/app/12.1.0.2/grid/tfa/dm01db01/tfa_home/jlib/ojdbc6.jar:/u01/app/12.1.0.2/grid/tfa/dm01db01/tfa_home/jlib/commons-io-2.2.jar oracle.rat.tfa.TFAMain /u01/app/12.1.0.2/grid/tfa/dm01db01/tfa_home
    root     13292     1  0 Sep02 ?        07:14:18 /u01/app/12.1.0.2/grid/bin/osysmond.bin
    root     18910     1  0 Sep02 ?        03:54:06 /u01/app/12.1.0.2/grid/bin/ohasd.bin reboot
    root     18960     1  0 Sep02 ?        02:33:20 /u01/app/12.1.0.2/grid/bin/orarootagent.bin
    oracle   19021     1  0 Sep02 ?        02:01:17 /u01/app/12.1.0.2/grid/bin/oraagent.bin
    oracle   19034     1  0 Sep02 ?        00:54:37 /u01/app/12.1.0.2/grid/bin/mdnsd.bin
    oracle   19070     1  0 Sep02 ?        00:59:15 /u01/app/12.1.0.2/grid/bin/gpnpd.bin
    oracle   19205     1  2 Sep02 ?        15:31:16 /u01/app/12.1.0.2/grid/bin/gipcd.bin
    root     20098  1583  0 01:54 ?        00:00:00 /bin/sh /u01/app/12.1.0.2/grid/tfa/dm01db01/tfa_home/bin/tfactl -check
    root     20106 20098  0 01:54 ?        00:00:00 /u01/app/12.1.0.2/grid/perl/bin/perl
    /u01/app/12.1.0.2/grid/tfa/dm01db01/tfa_home/bin/tfactl.pl -check
    root     20120 20106  0 01:54 ?        00:00:00 /u01/app/12.1.0.2/grid/jdk/jre/bin/java -Xms128m -Xmx512m -Djavax.net.ssl.trustStore=/u01/app/12.1.0.2/grid/tfa/dm01db01/tfa_home/public.jks –classpath /u01/app/12.1.0.2/grid/tfa/dm01db01/tfa_home/jlib/RATFA.jar:/u01/app/12.1.0.2/grid/tfa/dm01db01/tfa_home/jlib/je-
    5.0.84.jar:/u01/app/12.1.0.2/grid/tfa/dm01db01/tfa_home/jlib/ojdbc6.jar:/u01/app/12.1.0.2/grid/tfa/dm01db01/tfa_home/jlib/commons-io-2.2.jar oracle.rat.tfa.CommandLine dm01db01:checkTFAMain -port 5000
    root     20156 30058  0 01:54 pts/0    00:00:00 grep grid

    [root@dm01db01 bin]# dcli -g ~/dbs_group -l root ‘/u01/app/12.1.0.2/grid/bin/crsctl stop crs’
    dm01db01: CRS-2791: Starting shutdown of Oracle High Availability Services-managed resources on ‘dm01db01’
    dm01db01: CRS-2673: Attempting to stop ‘ora.crf’ on ‘dm01db01’
    dm01db01: CRS-2673: Attempting to stop ‘ora.mdnsd’ on ‘dm01db01’
    dm01db01: CRS-2673: Attempting to stop ‘ora.drivers.acfs’ on ‘dm01db01’
    dm01db01: CRS-2673: Attempting to stop ‘ora.gpnpd’ on ‘dm01db01’
    dm01db01: CRS-2677: Stop of ‘ora.drivers.acfs’ on ‘dm01db01’ succeeded
    dm01db01: CRS-2677: Stop of ‘ora.mdnsd’ on ‘dm01db01’ succeeded
    dm01db01: CRS-2677: Stop of ‘ora.crf’ on ‘dm01db01’ succeeded
    dm01db01: CRS-2673: Attempting to stop ‘ora.gipcd’ on ‘dm01db01’
    dm01db01: CRS-2677: Stop of ‘ora.gpnpd’ on ‘dm01db01’ succeeded
    dm01db01: CRS-2677: Stop of ‘ora.gipcd’ on ‘dm01db01’ succeeded
    dm01db01: CRS-2793: Shutdown of Oracle High Availability Services-managed resources on ‘dm01db01’ has completed
    dm01db01: CRS-4133: Oracle High Availability Services has been stopped.
    dm01db02: CRS-2791: Starting shutdown of Oracle High Availability Services-managed resources on ‘dm01db02’
    dm01db02: CRS-2673: Attempting to stop ‘ora.crf’ on ‘dm01db02’
    dm01db02: CRS-2673: Attempting to stop ‘ora.mdnsd’ on ‘dm01db02’
    dm01db02: CRS-2673: Attempting to stop ‘ora.gpnpd’ on ‘dm01db02’
    dm01db02: CRS-2673: Attempting to stop ‘ora.drivers.acfs’ on ‘dm01db02’
    dm01db02: CRS-2677: Stop of ‘ora.drivers.acfs’ on ‘dm01db02’ succeeded
    dm01db02: CRS-2677: Stop of ‘ora.crf’ on ‘dm01db02’ succeeded
    dm01db02: CRS-2677: Stop of ‘ora.mdnsd’ on ‘dm01db02’ succeeded
    dm01db02: CRS-2673: Attempting to stop ‘ora.gipcd’ on ‘dm01db02’
    dm01db02: CRS-2677: Stop of ‘ora.gpnpd’ on ‘dm01db02’ succeeded
    dm01db02: CRS-2677: Stop of ‘ora.gipcd’ on ‘dm01db02’ succeeded
    dm01db02: CRS-2793: Shutdown of Oracle High Availability Services-managed resources on ‘dm01db02’ has completed
    dm01db02: CRS-4133: Oracle High Availability Services has been stopped.
    dm01db03: CRS-2791: Starting shutdown of Oracle High Availability Services-managed resources on ‘dm01db03’
    dm01db03: CRS-2673: Attempting to stop ‘ora.gpnpd’ on ‘dm01db03’
    dm01db03: CRS-2673: Attempting to stop ‘ora.crf’ on ‘dm01db03’
    dm01db03: CRS-2673: Attempting to stop ‘ora.drivers.acfs’ on ‘dm01db03’
    dm01db03: CRS-2673: Attempting to stop ‘ora.mdnsd’ on ‘dm01db03’
    dm01db03: CRS-2677: Stop of ‘ora.drivers.acfs’ on ‘dm01db03’ succeeded
    dm01db03: CRS-2677: Stop of ‘ora.crf’ on ‘dm01db03’ succeeded
    dm01db03: CRS-2673: Attempting to stop ‘ora.gipcd’ on ‘dm01db03’
    dm01db03: CRS-2677: Stop of ‘ora.gpnpd’ on ‘dm01db03’ succeeded
    dm01db03: CRS-2677: Stop of ‘ora.mdnsd’ on ‘dm01db03’ succeeded
    dm01db03: CRS-2677: Stop of ‘ora.gipcd’ on ‘dm01db03’ succeeded
    dm01db03: CRS-2793: Shutdown of Oracle High Availability Services-managed resources on ‘dm01db03’ has completed
    dm01db03: CRS-4133: Oracle High Availability Services has been stopped.
    dm01db04: CRS-2791: Starting shutdown of Oracle High Availability Services-managed resources on ‘dm01db04’
    dm01db04: CRS-2673: Attempting to stop ‘ora.mdnsd’ on ‘dm01db04’
    dm01db04: CRS-2673: Attempting to stop ‘ora.drivers.acfs’ on ‘dm01db04’
    dm01db04: CRS-2673: Attempting to stop ‘ora.crf’ on ‘dm01db04’
    dm01db04: CRS-2673: Attempting to stop ‘ora.gpnpd’ on ‘dm01db04’
    dm01db04: CRS-2677: Stop of ‘ora.drivers.acfs’ on ‘dm01db04’ succeeded
    dm01db04: CRS-2677: Stop of ‘ora.mdnsd’ on ‘dm01db04’ succeeded
    dm01db04: CRS-2677: Stop of ‘ora.crf’ on ‘dm01db04’ succeeded
    dm01db04: CRS-2673: Attempting to stop ‘ora.gipcd’ on ‘dm01db04’
    dm01db04: CRS-2677: Stop of ‘ora.gpnpd’ on ‘dm01db04’ succeeded
    dm01db04: CRS-2677: Stop of ‘ora.gipcd’ on ‘dm01db04’ succeeded
    dm01db04: CRS-2793: Shutdown of Oracle High Availability Services-managed resources on ‘dm01db04’ has completed
    dm01db04: CRS-4133: Oracle High Availability Services has been stopped.
    dm01db05: CRS-2791: Starting shutdown of Oracle High Availability Services-managed resources on ‘dm01db05’
    dm01db05: CRS-2673: Attempting to stop ‘ora.crf’ on ‘dm01db05’
    dm01db05: CRS-2673: Attempting to stop ‘ora.gpnpd’ on ‘dm01db05’
    dm01db05: CRS-2673: Attempting to stop ‘ora.mdnsd’ on ‘dm01db05’
    dm01db05: CRS-2673: Attempting to stop ‘ora.drivers.acfs’ on ‘dm01db05’
    dm01db05: CRS-2677: Stop of ‘ora.drivers.acfs’ on ‘dm01db05’ succeeded
    dm01db05: CRS-2677: Stop of ‘ora.crf’ on ‘dm01db05’ succeeded
    dm01db05: CRS-2677: Stop of ‘ora.gpnpd’ on ‘dm01db05’ succeeded
    dm01db05: CRS-2673: Attempting to stop ‘ora.gipcd’ on ‘dm01db05’
    dm01db05: CRS-2677: Stop of ‘ora.mdnsd’ on ‘dm01db05’ succeeded
    dm01db05: CRS-2677: Stop of ‘ora.gipcd’ on ‘dm01db05’ succeeded
    dm01db05: CRS-2793: Shutdown of Oracle High Availability Services-managed resources on ‘dm01db05’ has completed
    dm01db05: CRS-4133: Oracle High Availability Services has been stopped.
    dm01db06: CRS-2791: Starting shutdown of Oracle High Availability Services-managed resources on ‘dm01db06’
    dm01db06: CRS-2673: Attempting to stop ‘ora.crf’ on ‘dm01db06’
    dm01db06: CRS-2673: Attempting to stop ‘ora.mdnsd’ on ‘dm01db06’
    dm01db06: CRS-2673: Attempting to stop ‘ora.drivers.acfs’ on ‘dm01db06’
    dm01db06: CRS-2673: Attempting to stop ‘ora.gpnpd’ on ‘dm01db06’
    dm01db06: CRS-2677: Stop of ‘ora.drivers.acfs’ on ‘dm01db06’ succeeded
    dm01db06: CRS-2677: Stop of ‘ora.crf’ on ‘dm01db06’ succeeded
    dm01db06: CRS-2673: Attempting to stop ‘ora.gipcd’ on ‘dm01db06’
    dm01db06: CRS-2677: Stop of ‘ora.mdnsd’ on ‘dm01db06’ succeeded
    dm01db06: CRS-2677: Stop of ‘ora.gpnpd’ on ‘dm01db06’ succeeded
    dm01db06: CRS-2677: Stop of ‘ora.gipcd’ on ‘dm01db06’ succeeded
    dm01db06: CRS-2793: Shutdown of Oracle High Availability Services-managed resources on ‘dm01db06’ has completed
    dm01db06: CRS-4133: Oracle High Availability Services has been stopped.
    dm01db07: CRS-2791: Starting shutdown of Oracle High Availability Services-managed resources on ‘dm01db07’
    dm01db07: CRS-2673: Attempting to stop ‘ora.mdnsd’ on ‘dm01db07’
    dm01db07: CRS-2673: Attempting to stop ‘ora.crf’ on ‘dm01db07’
    dm01db07: CRS-2673: Attempting to stop ‘ora.drivers.acfs’ on ‘dm01db07’
    dm01db07: CRS-2673: Attempting to stop ‘ora.gpnpd’ on ‘dm01db07’
    dm01db07: CRS-2677: Stop of ‘ora.drivers.acfs’ on ‘dm01db07’ succeeded
    dm01db07: CRS-2677: Stop of ‘ora.mdnsd’ on ‘dm01db07’ succeeded
    dm01db07: CRS-2677: Stop of ‘ora.crf’ on ‘dm01db07’ succeeded
    dm01db07: CRS-2673: Attempting to stop ‘ora.gipcd’ on ‘dm01db07’
    dm01db07: CRS-2677: Stop of ‘ora.gpnpd’ on ‘dm01db07’ succeeded
    dm01db07: CRS-2677: Stop of ‘ora.gipcd’ on ‘dm01db07’ succeeded
    dm01db07: CRS-2793: Shutdown of Oracle High Availability Services-managed resources on ‘dm01db07’ has completed
    dm01db07: CRS-4133: Oracle High Availability Services has been stopped.
    dm01db08: CRS-2791: Starting shutdown of Oracle High Availability Services-managed resources on ‘dm01db08’
    dm01db08: CRS-2673: Attempting to stop ‘ora.mdnsd’ on ‘dm01db08’
    dm01db08: CRS-2673: Attempting to stop ‘ora.crf’ on ‘dm01db08’
    dm01db08: CRS-2673: Attempting to stop ‘ora.gpnpd’ on ‘dm01db08’
    dm01db08: CRS-2673: Attempting to stop ‘ora.drivers.acfs’ on ‘dm01db08’
    dm01db08: CRS-2677: Stop of ‘ora.drivers.acfs’ on ‘dm01db08’ succeeded
    dm01db08: CRS-2677: Stop of ‘ora.crf’ on ‘dm01db08’ succeeded
    dm01db08: CRS-2673: Attempting to stop ‘ora.gipcd’ on ‘dm01db08’
    dm01db08: CRS-2677: Stop of ‘ora.mdnsd’ on ‘dm01db08’ succeeded
    dm01db08: CRS-2677: Stop of ‘ora.gpnpd’ on ‘dm01db08’ succeeded
    dm01db08: CRS-2677: Stop of ‘ora.gipcd’ on ‘dm01db08’ succeeded
    dm01db08: CRS-2793: Shutdown of Oracle High Availability Services-managed resources on ‘dm01db08’ has completed
    dm01db08: CRS-4133: Oracle High Availability Services has been stopped.

    [root@dm01db01 bin]# ps -ef|grep grid
    root      2411     1  0 Sep02 ?        03:07:44 /u01/app/12.1.0.2/grid/jdk/jre/bin/java -Xms128m -Xmx512m –classpath /u01/app/12.1.0.2/grid/tfa/dm01db01/tfa_home/jlib/RATFA.jar:/u01/app/12.1.0.2/grid/tfa/dm01db01/tfa_home/jlib/je-
    5.0.84.jar:/u01/app/12.1.0.2/grid/tfa/dm01db01/tfa_home/jlib/ojdbc6.jar:/u01/app/12.1.0.2/grid/tfa/dm01db01/tfa_home/jlib/commons-io-2.2.jar oracle.rat.tfa.TFAMain /u01/app/12.1.0.2/grid/tfa/dm01db01/tfa_home
    root     26496 30058  0 01:54 pts/0    00:00:00 grep grid

    [root@dm01db01 bin]# dcli -g ~/dbs_group -l root ‘/u01/app/12.1.0.2/grid/bin/crsctl check crs’
    dm01db01: CRS-4639: Could not contact Oracle High Availability Services
    dm01db02: CRS-4639: Could not contact Oracle High Availability Services
    dm01db03: CRS-4639: Could not contact Oracle High Availability Services
    dm01db04: CRS-4639: Could not contact Oracle High Availability Services
    dm01db05: CRS-4639: Could not contact Oracle High Availability Services
    dm01db06: CRS-4639: Could not contact Oracle High Availability Services
    dm01db07: CRS-4639: Could not contact Oracle High Availability Services
    dm01db08: CRS-4639: Could not contact Oracle High Availability Services

    • Get the current Exadata Storage Software version:

    Compute Node:
    [root@dm01db01 bin]# imageinfo

    Kernel version: 2.6.39-400.248.3.el6uek.x86_64 #1 SMP Wed Mar 11 18:04:34 PDT 2015 x86_64
    Image version: 12.1.2.1.1.150316.2
    Image activated: 2015-04-27 20:52:07 -0500
    Image status: success
    System partition on device: /dev/mapper/VGExaDb-LVDbSys1

    Storage Cell 
    [root@dm01db01 bin]# ssh dm01cel01 imageinfo

    Kernel version: 2.6.39-400.248.3.el6uek.x86_64 #1 SMP Wed Mar 11 18:04:34 PDT 2015 x86_64
    Cell version: OSS_12.1.2.1.1_LINUX.X64_150316.2
    Cell rpm version: cell-12.1.2.1.1_LINUX.X64_150316.2-1.x86_64

    Active image version: 12.1.2.1.1.150316.2
    Active image activated: 2015-04-27 16:55:04 -0500
    Active image status: success
    Active system partition on device: /dev/md5
    Active stage partition on device: /dev/md7

    Cell boot usb partition: /dev/sdac1
    Cell boot usb version: 12.1.2.1.1.150316.2

    Inactive image version: 12.1.2.1.0.141206.1
    Inactive image activated: 2015-02-25 07:39:28 -0600
    Inactive image status: success
    Inactive system partition on device: /dev/md6
    Inactive stage partition on device: /dev/md8

    Inactive marker for the rollback: /boot/I_am_hd_boot.inactive
    Inactive grub config for the rollback: /boot/grub/grub.conf.inactive
    Inactive kernel version for the rollback: 2.6.39-400.243.1.el6uek.x86_64
    Rollback to the inactive partitions: Possible

    • Shutdown the Cell services on all the Storage cells as follows:

    [root@dm01db01 bin]# dcli -g ~/cell_group -l root “cellcli -e alter cell shutdown services all”
    dm01cel01:
    dm01cel01: Stopping the RS, CELLSRV, and MS services…
    dm01cel01: The SHUTDOWN of services was successful.
    dm01cel02:
    dm01cel02: Stopping the RS, CELLSRV, and MS services…
    dm01cel02: The SHUTDOWN of services was successful.
    dm01cel03:
    dm01cel03: Stopping the RS, CELLSRV, and MS services…
    dm01cel03: The SHUTDOWN of services was successful.
    dm01cel04:
    dm01cel04: Stopping the RS, CELLSRV, and MS services…
    dm01cel04: The SHUTDOWN of services was successful.
    dm01cel05:
    dm01cel05: Stopping the RS, CELLSRV, and MS services…
    dm01cel05: The SHUTDOWN of services was successful.
    dm01cel06:
    dm01cel06: Stopping the RS, CELLSRV, and MS services…
    dm01cel06: The SHUTDOWN of services was successful.
    dm01cel07:
    dm01cel07: Stopping the RS, CELLSRV, and MS services…
    dm01cel07: The SHUTDOWN of services was successful.
    dm01cel08:
    dm01cel08: Stopping the RS, CELLSRV, and MS services…
    dm01cel08: The SHUTDOWN of services was successful.
    dm01cel09:
    dm01cel09: Stopping the RS, CELLSRV, and MS services…
    dm01cel09: The SHUTDOWN of services was successful.
    dm01cel10:
    dm01cel10: Stopping the RS, CELLSRV, and MS services…
    dm01cel10: The SHUTDOWN of services was successful.
    dm01cel11:
    dm01cel11: Stopping the RS, CELLSRV, and MS services…
    dm01cel11: The SHUTDOWN of services was successful.
    dm01cel12:
    dm01cel12: Stopping the RS, CELLSRV, and MS services…
    dm01cel12: The SHUTDOWN of services was successful.
    dm01cel13:
    dm01cel13: Stopping the RS, CELLSRV, and MS services…
    dm01cel13: The SHUTDOWN of services was successful.
    dm01cel14:
    dm01cel14: Stopping the RS, CELLSRV, and MS services…
    dm01cel14: The SHUTDOWN of services was successful.

    • Navigate to the patch staging directory and unzip the storage cell software

    [root@dm01db01 bin]# cd /u01/stage/ESS_Patch/

    [root@dm01db01 ESS_Patch]# ls -l
    total 2537072
    -rw-r–r– 1 root root 1550028016 Sep 27 07:39 p20131726_121220_Linux-x86-64.zip

    [root@dm01db01 ESS_Patch]# unzip p20131726_121220_Linux-x86-64.zip
    Archive:  p20131726_121220_Linux-x86-64.zip
       creating: patch_12.1.2.2.0.150917/
       creating: patch_12.1.2.2.0.150917/linux.db.rpms/
      inflating: patch_12.1.2.2.0.150917/linux.db.rpms/perl-XML-Parser-2.34-6.1.2.2.1.x86_64.rpm
      inflating: patch_12.1.2.2.0.150917/dostep.sh
      inflating: patch_12.1.2.2.0.150917/sundcs_36p_repository_2.1.6_2.pkg
      inflating: patch_12.1.2.2.0.150917/11_2_2_1_0.pm
      inflating: patch_12.1.2.2.0.150917/11_2_1_1_0.pm
      inflating: patch_12.1.2.2.0.150917/md5sum_files.lst
      inflating: patch_12.1.2.2.0.150917/ExaXMLNode.pm
      inflating: patch_12.1.2.2.0.150917/exadataLogger.pm
       creating: patch_12.1.2.2.0.150917/ibdiagtools/
      inflating: patch_12.1.2.2.0.150917/ibdiagtools/cable_check.pl
      inflating: patch_12.1.2.2.0.150917/ibdiagtools/SampleOutputs.txt
       creating: patch_12.1.2.2.0.150917/ibdiagtools/netcheck/
      inflating: patch_12.1.2.2.0.150917/ibdiagtools/netcheck/spawnProc.pm
      inflating: patch_12.1.2.2.0.150917/ibdiagtools/netcheck/remoteScriptGenerator.pm
      inflating: patch_12.1.2.2.0.150917/ibdiagtools/netcheck/OSAdapter.pm
      inflating: patch_12.1.2.2.0.150917/ibdiagtools/netcheck/runDiagnostics.pm
      inflating: patch_12.1.2.2.0.150917/ibdiagtools/netcheck/SolarisAdapter.pm
      inflating: patch_12.1.2.2.0.150917/ibdiagtools/netcheck/LinuxAdapter.pm
      inflating: patch_12.1.2.2.0.150917/ibdiagtools/netcheck/remoteConfig.pm
      inflating: patch_12.1.2.2.0.150917/ibdiagtools/netcheck/CommonUtils.pm
      inflating: patch_12.1.2.2.0.150917/ibdiagtools/netcheck/remoteLauncher.pm
      inflating: patch_12.1.2.2.0.150917/ibdiagtools/monitord
      inflating: patch_12.1.2.2.0.150917/ibdiagtools/README
       creating: patch_12.1.2.2.0.150917/ibdiagtools/topologies/
      inflating: patch_12.1.2.2.0.150917/ibdiagtools/topologies/Node.pm
      inflating: patch_12.1.2.2.0.150917/ibdiagtools/topologies/Group.pm
      inflating: patch_12.1.2.2.0.150917/ibdiagtools/topologies/VerifyTopologyUtility.pm
      inflating: patch_12.1.2.2.0.150917/ibdiagtools/topologies/Switch.pm
      inflating: patch_12.1.2.2.0.150917/ibdiagtools/topologies/verifylib.pm
      inflating: patch_12.1.2.2.0.150917/ibdiagtools/topologies/Rack.pm
      inflating: patch_12.1.2.2.0.150917/ibdiagtools/setup-ssh
     extracting: patch_12.1.2.2.0.150917/ibdiagtools/xmonib.sh
      inflating: patch_12.1.2.2.0.150917/ibdiagtools/dcli
      inflating: patch_12.1.2.2.0.150917/ibdiagtools/ibping_test
      inflating: patch_12.1.2.2.0.150917/ibdiagtools/checkbadlinks.pl
     extracting: patch_12.1.2.2.0.150917/ibdiagtools/VERSION_FILE
      inflating: patch_12.1.2.2.0.150917/ibdiagtools/infinicheck
      inflating: patch_12.1.2.2.0.150917/ibdiagtools/verify-topology
      inflating: patch_12.1.2.2.0.150917/ibdiagtools/tar_ibdiagtools
      inflating: patch_12.1.2.2.0.150917/ibdiagtools/topology-zfs
       creating: patch_12.1.2.2.0.150917/plugins/
      inflating: patch_12.1.2.2.0.150917/plugins/000-check_dummy_bash
      inflating: patch_12.1.2.2.0.150917/plugins/000-check_dummy_perl
      inflating: patch_12.1.2.2.0.150917/plugins/010-check_17854520.sh
      inflating: patch_12.1.2.2.0.150917/11_2_1_2_1.pm
      inflating: patch_12.1.2.2.0.150917/12.1.2.2.0.150917.patch.tar
      inflating: patch_12.1.2.2.0.150917/sundcs_36p_repository_2.1.5_1.pkg
      inflating: patch_12.1.2.2.0.150917/ExadataImageNotification.pl
      inflating: patch_12.1.2.2.0.150917/exadata.img.hw
      inflating: patch_12.1.2.2.0.150917/README.txt
       creating: patch_12.1.2.2.0.150917/etc/
       creating: patch_12.1.2.2.0.150917/etc/config/
      inflating: patch_12.1.2.2.0.150917/etc/config/inventory.xml
      inflating: patch_12.1.2.2.0.150917/sgutil.pm
      inflating: patch_12.1.2.2.0.150917/dcli
      inflating: patch_12.1.2.2.0.150917/patchmgr
      inflating: patch_12.1.2.2.0.150917/11_2_1_2_2.pm
      inflating: patch_12.1.2.2.0.150917/imageLogger
      inflating: patch_12.1.2.2.0.150917/preconfig.pm
      inflating: patch_12.1.2.2.0.150917/12.1.2.2.0.150917.iso
      inflating: patch_12.1.2.2.0.150917/ipconf.pl
      inflating: patch_12.1.2.2.0.150917/ExadataSendNotification.pm
      inflating: patch_12.1.2.2.0.150917/README.html
      inflating: patch_12.1.2.2.0.150917/upgradeIBSwitch.sh
      inflating: patch_12.1.2.2.0.150917/11_1_3_2_0.pm
      inflating: patch_12.1.2.2.0.150917/dostep.sh.tmpl
      inflating: patch_12.1.2.2.0.150917/exadata.img.env

    • Ensure root user ssh equivalence is setup between compute node and all storage cells

    [root@dm01db01 ESS_Patch]# dcli -g ~/cell_group -l root ‘hostname’
    dm01cel01: dm01cel01.domain.com
    dm01cel02: dm01cel02.domain.com
    dm01cel03: dm01cel03.domain.com
    dm01cel04: dm01cel04.domain.com
    dm01cel05: dm01cel05.domain.com
    dm01cel06: dm01cel06.domain.com
    dm01cel07: dm01cel07.domain.com
    dm01cel08: dm01cel08.domain.com
    dm01cel09: dm01cel09.domain.com
    dm01cel10: dm01cel10.domain.com
    dm01cel11: dm01cel11.domain.com
    dm01cel12: dm01cel12.domain.com
    dm01cel13: dm01cel13.domain.com
    dm01cel14: dm01cel14.domain.com

    • Change directory to the actual patch directory after unzip

    [root@dm01db01 ESS_Patch]# cd patch_12.1.2.2.0.150917/

    • Copy the cell_group file to the storage software directory

    [root@dm01db01 patch_12.1.2.2.0.150917]# cp ~/cell_group .

    [root@dm01db01 patch_12.1.2.2.0.150917]# ls -l
    total 1543432
    -r-xr-xr-x 1 root root      10769 Oct  9  2013 11_1_3_2_0.pm
    -r-xr-xr-x 1 root root      29096 Oct  9  2013 11_2_1_1_0.pm
    -r-xr-xr-x 1 root root      32529 Oct  9  2013 11_2_1_2_1.pm
    -r-xr-xr-x 1 root root      33620 Oct  9  2013 11_2_1_2_2.pm
    -r-xr-xr-x 1 root root      43240 Apr 19  2014 11_2_2_1_0.pm
    -rw-rw-r– 1 root root 1343023104 Sep 17 19:54 12.1.2.2.0.150917.iso
    -rw-rw-r– 1 root root    2140160 Sep 17 19:54 12.1.2.2.0.150917.patch.tar
    -rwxr-xr– 1 root root        140 Oct  3 02:02 cell_group
    -r-xr-xr-x 1 root root      49094 Sep 17 19:46 dcli
    -r-xr-xr-x 1 root root     111833 Sep 17 19:54 dostep.sh
    -r-xr-xr-x 1 root root     111833 Sep 17 19:54 dostep.sh.tmpl
    drwxrwxr-x 3 root root       4096 Sep 17 19:54 etc
    -r-xr-xr-x 1 root root      56712 Sep 17 19:46 ExadataImageNotification.pl
    -r-xr-xr-x 1 root root       2343 Dec  2  2014 exadata.img.env
    -r-xr-xr-x 1 root root      16131 May 29 02:42 exadata.img.hw
    -r-xr-xr-x 1 root root      53928 Oct  9  2013 exadataLogger.pm
    -r-xr-xr-x 1 root root       1570 Sep 17 19:46 ExadataSendNotification.pm
    -r-xr-xr-x 1 root root       6133 Oct  9  2013 ExaXMLNode.pm
    drwxr-xr-x 4 root root       4096 Sep 17 19:54 ibdiagtools
    -r-xr-xr-x 1 root root      42496 Jul 15 02:54 imageLogger
    -r-xr-xr-x 1 root root     511906 Sep  4 02:48 ipconf.pl
    drwxrwxr-x 2 root root       4096 Sep 17 19:54 linux.db.rpms
    -rw-rw-r– 1 root root       3155 Sep 17 19:54 md5sum_files.lst
    -r-xr-xr-x 1 root root     187138 Sep 17 19:54 patchmgr
    drwxr-xr-x 2 root root       4096 Sep 17 19:46 plugins
    -r-xr-xr-x 1 root root      41891 Jul 29 02:39 preconfig.pm
    -rw-rw-r– 1 root root      73916 Sep 22 15:41 README.html
    -r-xr-xr-x 1 root root        148 Sep 17 19:46 README.txt
    -r-xr-xr-x 1 root root      47458 Sep  3 05:04 sgutil.pm
    -r–r–r– 1 root root  116010429 Sep 17 19:46 sundcs_36p_repository_2.1.5_1.pkg
    -r–r–r– 1 root root  116051693 Sep 17 19:46 sundcs_36p_repository_2.1.6_2.pkg
    -r-xr-xr-x 1 root root     114855 Sep 17 19:46 upgradeIBSwitch.sh

    • It is recommended to reset the storage cells to a known state using the following command

    [root@dm01db01 patch_12.1.2.2.0.150917]# ./patchmgr -cells cell_group -reset_force

    2015-10-03 02:03:00 -0500 :DONE: reset_force
    • Clean up any previous patchmgr utility runs using the following command

    [root@dm01db01 patch_12.1.2.2.0.150917]# ./patchmgr -cells cell_group -cleanup

    2015-10-03 02:04:14 -0500        :Working: DO: Cleanup …
    2015-10-03 02:04:16 -0500        :SUCCESS: DONE: Cleanup
    • Verify that the storage cells meet prerequisite checks using the following command.

    Use the -rolling option if you plan to use rolling updates.
    Use the -smtp_from and -smtp_to options to send patching progress e-mail notifications.

    [root@dm01db01 patch_12.1.2.2.0.150917]# ./patchmgr -cells cell_group -patch_check_prereq -smtp_from “dm01db01” -smtp_to “abdul.mohammed@netsoftmate.com”

    2015-10-11 04:17:59 -0500        :Working: DO: Check cells have ssh equivalence for root user. Up to 10 seconds per cell …
    2015-10-11 04:18:02 -0500        :SUCCESS: DONE: Check cells have ssh equivalence for root user.
    2015-10-11 04:18:13 -0500        :Working: DO: Initialize files, check space and state of cell services. Up to 1 minute …
    2015-10-11 04:18:52 -0500        :SUCCESS: DONE: Initialize files, check space and state of cell services.
    2015-10-11 04:18:52 -0500        :Working: DO: Copy, extract prerequisite check archive to cells. If required start md11 mismatched partner size correction. Up to 40 minutes …
    2015-10-11 04:19:08 -0500 Wait correction of degraded md11 due to md partner size mismatch. Up to 30 minutes.

    2015-10-11 04:19:09 -0500        :SUCCESS: DONE: Copy, extract prerequisite check archive to cells. If required start md11 mismatched partner size correction.
    2015-10-11 04:19:09 -0500        :Working: DO: Check prerequisites on all cells. Up to 2 minutes …
    2015-10-11 04:20:33 -0500        :SUCCESS: DONE: Check prerequisites on all cells.
    2015-10-11 04:20:33 -0500        :Working: DO: Execute plugin check for Patch Check Prereq …
    2015-10-11 04:20:33 -0500 :INFO: Patchmgr plugin start: Prereq check for exposure to bug 17854520 v1.3. Details
    in logfile /u01/stage/ESS_Patch/patch_12.1.2.2.0.150917/patchmgr.stdout.
    2015-10-11 04:20:33 -0500 :SUCCESS: No exposure to bug 17854520 with non-rolling patching
    2015-10-11 04:20:33 -0500        :SUCCESS: DONE: Execute plugin check for Patch Check Prereq.

    [root@dm01db01 patch_12.1.2.2.0.150917]#

    • The prerequisite checks completed successfully.

    We can now start the patch application.
    Use the -rolling option if you plan to use rolling updates.
    Use the -smtp_from and -smtp_to options to send patching progress e-mail notifications.

    [root@dm01db01 patch_12.1.2.2.0.150917]# ./patchmgr -cells ~/cell_group -patch -smtp_from “dm01db01” -smtp_to “abdul.mohammed@netsoftamte.com”
    ********************************************************************************
    NOTE Cells will reboot during the patch or rollback process.
    NOTE For non-rolling patch or rollback, ensure all ASM instances using
    NOTE the cells are shut down for the duration of the patch or rollback.
    NOTE For rolling patch or rollback, ensure all ASM instances using
    NOTE the cells are up for the duration of the patch or rollback.

    WARNING Do not start more than one instance of patchmgr.
    WARNING Do not interrupt the patchmgr session.
    WARNING Do not alter state of ASM instances during patch or rollback.
    WARNING Do not resize the screen. It may disturb the screen layout.
    WARNING Do not reboot cells or alter cell services during patch or rollback.
    WARNING Do not open log files in editor in write mode or try to alter them.

    NOTE All time estimates are approximate.
    NOTE You may interrupt this patchmgr run in next 60 seconds with CONTROL-c.
    ********************************************************************************

    2015-10-18 05:11:01 -0500        :Working: DO: Check cells have ssh equivalence for root user. Up to 10 seconds per cell …
    2015-10-18 05:11:03 -0500        :SUCCESS: DONE: Check cells have ssh equivalence for root user.
    2015-10-18 05:11:14 -0500        :Working: DO: Initialize files, check space and state of cell services. Up to 1 minute …
    2015-10-18 05:11:43 -0500        :SUCCESS: DONE: Initialize files, check space and state of cell services.
    2015-10-18 05:11:43 -0500        :Working: DO: Copy, extract prerequisite check archive to cells. If required start md11 mismatched partner size correction. Up to 40 minutes …
    2015-10-18 05:11:59 -0500 Wait correction of degraded md11 due to md partner size mismatch. Up to 30 minutes.

    2015-10-18 05:12:00 -0500        :SUCCESS: DONE: Copy, extract prerequisite check archive to cells. If required start md11 mismatched partner size correction.
    2015-10-18 05:12:00 -0500        :Working: DO: Check prerequisites on all cells. Up to 2 minutes …
    2015-10-18 05:13:18 -0500        :SUCCESS: DONE: Check prerequisites on all cells.
    2015-10-18 05:13:18 -0500        :Working: DO: Copy the patch to all cells. Up to 3 minutes …
    2015-10-18 05:15:59 -0500        :SUCCESS: DONE: Copy the patch to all cells.
    2015-10-18 05:16:01 -0500        :Working: DO: Execute plugin check for Patch Check Prereq …
    2015-10-18 05:16:01 -0500 :INFO: Patchmgr plugin start: Prereq check for exposure to bug 17854520 v1.3. Details
    in logfile /u01/stage/ESS_Patch/patch_12.1.2.2.0.150917/patchmgr.stdout.
    2015-10-18 05:16:01 -0500 :SUCCESS: No exposure to bug 17854520 with non-rolling patching
    2015-10-18 05:16:01 -0500        :SUCCESS: DONE: Execute plugin check for Patch Check Prereq.
    2015-10-18 05:16:25 -0500 1 of 5 :Working: DO: Initiate patch on cells. Cells will remain up. Up to 5 minutes
    2015-10-18 05:16:40 -0500 1 of 5 :SUCCESS: DONE: Initiate patch on cells.
    2015-10-18 05:16:40 -0500 2 of 5 :Working: DO: Waiting to finish pre-reboot patch actions. Cells will remain up. Up to 45 minutes …
    2015-10-18 05:17:40 -0500 Wait for patch pre-reboot procedures

    2015-10-18 05:29:05 -0500 2 of 5 :SUCCESS: DONE: Waiting to finish pre-reboot patch actions.
    2015-10-18 05:29:06 -0500        :Working: DO: Execute plugin check for Patching …
    2015-10-18 05:29:07 -0500        :SUCCESS: DONE: Execute plugin check for Patching.
    2015-10-18 05:29:07 -0500 3 of 5 :Working: DO: Finalize patch on cells. Cells will reboot. Up to 5 minutes …
    2015-10-18 05:29:28 -0500 3 of 5 :SUCCESS: DONE: Finalize patch on cells.
    2015-10-18 05:29:28 -0500 4 of 5 :Working: DO: Wait for cells to reboot and come online. Up to 120 minutes …
    2015-10-18 05:30:28 -0500 Wait for patch finalization and reboot

    TIMEOUT for following cells

     dm01cel01 2015-10-18 08:51:52 -0500
     dm01cel02 2015-10-18 08:51:52 -0500
     dm01cel03 2015-10-18 08:51:52 -0500
     dm01cel04 2015-10-18 08:51:52 -0500
     dm01cel05 2015-10-18 08:51:52 -0500
     dm01cel06 2015-10-18 08:51:52 -0500
     dm01cel07 2015-10-18 08:51:52 -0500
     dm01cel08 2015-10-18 08:51:52 -0500
     dm01cel09 2015-10-18 08:51:52 -0500
     dm01cel10 2015-10-18 08:51:52 -0500
     dm01cel11 2015-10-18 08:51:52 -0500
     dm01cel12 2015-10-18 08:51:52 -0500
     dm01cel13 2015-10-18 08:51:52 -0500
     dm01cel14 2015-10-18 08:51:52 -0500

    /u01/stage/ESS_Patch/patch_12.1.2.2.0.150917/patchmgr.stdout,
    /u01/stage/ESS_Patch/patch_12.1.2.2.0.150917/patchmgr.stderr
    2015-10-18 08:51:55 -0500 4 of 5 : DONE: Wait for cells to reboot and come online.
    2015-10-18 08:51:55 -0500 5 of 5 :Working: DO: Check the state of patch on cells. Up to 5 minutes …
    2015-10-18 08:54:09 -0500 5 of 5 :SUCCESS: DONE: Check the state of patch on cells.
    2015-10-18 08:54:09 -0500        :Working: DO: Execute plugin check for Post Patch …
    2015-10-18 08:54:13 -0500        :SUCCESS: DONE: Execute plugin check for Post Patch.

    • Check the Storage cell software is showing the new version as follows:

    [root@dm01db01 ~]# dcli -g cell_group -l root ‘imageinfo | grep “Active image version”‘
    dm01cel01: Active image version: 12.1.2.2.0.150917
    dm01cel02: Active image version: 12.1.2.2.0.150917
    dm01cel03: Active image version: 12.1.2.2.0.150917
    dm01cel04: Active image version: 12.1.2.2.0.150917
    dm01cel05: Active image version: 12.1.2.2.0.150917
    dm01cel06: Active image version: 12.1.2.2.0.150917
    dm01cel07: Active image version: 12.1.2.2.0.150917
    dm01cel08: Active image version: 12.1.2.2.0.150917
    dm01cel09: Active image version: 12.1.2.2.0.150917
    dm01cel10: Active image version: 12.1.2.2.0.150917
    dm01cel11: Active image version: 12.1.2.2.0.150917
    dm01cel12: Active image version: 12.1.2.2.0.150917
    dm01cel13: Active image version: 12.1.2.2.0.150917
    dm01cel14: Active image version: 12.1.2.2.0.150917

    • Check the previous Storage cell software is marked Inactive as follows:

    [root@dm01db01 ~]# dcli -g cell_group -l root ‘imageinfo | grep “Inactive image version”‘
    dm01cel01: Inactive image version: 12.1.2.1.1.150316.2
    dm01cel02: Inactive image version: 12.1.2.1.1.150316.2
    dm01cel03: Inactive image version: 12.1.2.1.1.150316.2
    dm01cel04: Inactive image version: 12.1.2.1.1.150316.2
    dm01cel05: Inactive image version: 12.1.2.1.1.150316.2
    dm01cel06: Inactive image version: 12.1.2.1.1.150316.2
    dm01cel07: Inactive image version: 12.1.2.1.1.150316.2
    dm01cel08: Inactive image version: 12.1.2.1.1.150316.2
    dm01cel09: Inactive image version: 12.1.2.1.1.150316.2
    dm01cel10: Inactive image version: 12.1.2.1.1.150316.2
    dm01cel11: Inactive image version: 12.1.2.1.1.150316.2
    dm01cel12: Inactive image version: 12.1.2.1.1.150316.2
    dm01cel13: Inactive image version: 12.1.2.1.1.150316.2
    dm01cel14: Inactive image version: 12.1.2.1.1.150316.2

    [root@dm01db01 ~]#

    • Clean up the cells using the -cleanup option to clean up all the temporary patch or rollback files on the cells

    [root@dm01db01 patch_12.1.2.2.0.150917]# ./patchmgr -cells cell_group -cleanup

    2015-11-04 13:02:12 -0600        :Working: DO: Cleanup …
    2015-11-04 13:02:48 -0600        :SUCCESS: DONE: Cleanup

    This concludes our Exadata Storage Cells patching.

    Next we will see how to Patch Exadata Infiniband Switches.

    0

    PREVIOUS POSTSPage 17 of 18NEXT POSTS