<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-2414933436751311863</id><updated>2012-02-11T11:37:19.744-08:00</updated><category term='log flood'/><category term='indexes'/><category term='resize'/><category term='prompt'/><category term='LibraryCacheNotEmptyOnClose'/><category term='protocol'/><category term='statspack'/><category term='controlfile'/><category term='puschitz'/><category term='transport'/><category term='ORA-03137'/><category term='bug'/><category term='FCF'/><category term='sgement space reuse'/><category term='11.2.0.2'/><category term='sga'/><category term='offline'/><category term='shared pool'/><category term='OBIEE'/><category term='rda'/><category term='listener'/><category term='internal error'/><category term='hard parse'/><category term='upgrade'/><category term='SCN'/><category term='query'/><category term='flashback archive'/><category term='statm'/><category term='owl'/><category term='restore'/><category term='dbms_file_transfer'/><category term='tail'/><category term='awk'/><category term='blockrecovery'/><category term='copy'/><category term='kgmgchd1'/><category term='remotely'/><category term='lock account'/><category term='11g'/><category term='java sinppet'/><category term='OMF'/><category term='EMD upload error'/><category term='openvpn'/><category term='email'/><category term='nosql'/><category term='pfile'/><category term='bind variables'/><category term='apconsole'/><category term='jprofiler'/><category term='11.2.0.1'/><category term='network_link'/><category term='solaris'/><category term='db_securefile'/><category term='10.2.0.4'/><category term='compress'/><category term='proc'/><category term='Maemo'/><category term='patch'/><category term='sh'/><category term='12c'/><category term='result set'/><category term='modify'/><category term='foreign key'/><category term='compatible.asm'/><category term='CLSC_RECEIVE'/><category term='nologging'/><category term='java'/><category term='kqlindp-bad-user'/><category term='5447395'/><category term='remap_date'/><category term='shared server'/><category term='JI'/><category term='pl/sql'/><category term='crsd.log'/><category term='policy'/><category term='impdp'/><category term='streams'/><category term='memory'/><category term='dbua'/><category term='PSU'/><category term='ntp'/><category term='dbstart'/><category term='active dataguard'/><category term='exp'/><category term='work around'/><category term='ASM'/><category term='result cache'/><category term='parallel Query'/><category term='Patch 9655006'/><category term='output'/><category term='shared memory'/><category term='uploadXMLFiles'/><category term='standby controlfile'/><category term='osw'/><category term='raw'/><category term='shutdown'/><category term='network'/><category term='udev'/><category term='visible'/><category term='error'/><category term='global database name'/><category term='php5'/><category term='oraInventory'/><category term='diskmon'/><category term='support'/><category term='Kcbz_check_objd_typ_3'/><category term='contention'/><category term='client'/><category term='cluster'/><category term='occi'/><category term='add'/><category term='rac'/><category term='kfod'/><category term='iso'/><category term='status'/><category term='redo block size'/><category term='rhel5'/><category term='input'/><category term='tomcat'/><category term='oel5'/><category term='sql developer'/><category term='hidden parameters'/><category term='recover'/><category term='real time sql monitoring'/><category term='runcluvfy'/><category term='4483084'/><category term='ora 4031'/><category term='ksfd: async disk io'/><category term='blob'/><category term='design pattern'/><category term='dbwn'/><category term='shm'/><category term='fal'/><category term='asmlib'/><category term='os watcher'/><category term='node'/><category term='materialized view'/><category term='protege'/><category term='arcn'/><category term='enterprise manager'/><category term='Wait Events'/><category term='OALL8'/><category term='start'/><category term='relational division'/><category term='Lbrary'/><category term='services'/><category term='dataguard'/><category term='semaphore'/><category term='dbshut'/><category term='CRS-2674'/><category term='update'/><category term='alias'/><category term='time zone'/><category term='11.2.0.3'/><category term='netstat'/><category term='aq_tm_processes'/><category term='time synchronization'/><category term='oracle.plsql'/><category term='scalar subquery'/><category term='check'/><category term='Mission Control'/><category term='sqlloader'/><category term='parse'/><category term='startup'/><category term='factor'/><category term='genoccish'/><category term='fresh fast'/><category term='ssh'/><category term='dispatcher'/><category term='redo sending'/><category term='change port'/><category term='active database'/><category term='block devices'/><category term='clustering factor'/><category term='ubunut'/><category term='JDBC'/><category term='replace'/><category term='division'/><category term='apache http server'/><category term='keep'/><category term='Cloud Control'/><category term='ORA-15061'/><category term='failover'/><category term='clone'/><category term='ora-600'/><category term='remote debugging'/><category term='sql'/><category term='grid infrastructure'/><category term='kernel'/><category term='crs'/><category term='writes'/><category term='basic replication'/><category term='sysdba'/><category term='latch'/><category term='index'/><category term='web site'/><category term='hanganalyze'/><category term='6627640'/><category term='ftp'/><category term='CRS-2632'/><category term='replication'/><category term='compatible.rdbms'/><category term='db_domain'/><category term='datafile'/><category term='interconnect'/><category term='metalink'/><category term='kccsbck_first'/><category term='install'/><category term='latch free'/><category term='jrockit'/><category term='segment size'/><category term='emc'/><category term='sqlldr'/><category term='gather stats'/><category term='acfs'/><category term='chkconfig'/><category term='swing'/><category term='memory_target'/><category term='profiler'/><category term='utl_mail'/><category term='soft parse'/><category term='average'/><category term='sqlplus'/><category term='4390875'/><category term='sar'/><category term='ontology'/><category term='XML-20108'/><category term='4430244'/><category term='10g'/><category term='VIP'/><category term='rfs'/><category term='powerpath'/><category term='encryption'/><category term='opatch'/><category term='dataguard broker'/><category term='yum'/><category term='standard'/><category term='OLAPIHISTORYRETENTION'/><category term='resetlogs'/><category term='instance recovery'/><category term='switchover'/><category term='wallet'/><category term='link'/><category term='performance'/><category term='sem'/><category term='ocr'/><category term='cron'/><category term='grid control'/><category term='duplication'/><category term='cpu'/><category term='jax-ws'/><category term='backup'/><category term='ORA-01078'/><category term='java7'/><category term='DSTv11'/><category term='xml'/><category term='inbound connection timed out'/><category term='bonding'/><category term='virtualbox'/><category term='buffers'/><category term='stop'/><category term='oradebug'/><category term='admon'/><category term='lftp'/><category term='security'/><category term='filepath'/><category term='lgwr'/><category term='sequence'/><category term='DEFERRED_SEGMENT_CREATION'/><category term='emctl'/><category term='cloud'/><category term='restore points'/><category term='olap'/><category term='move'/><category term='JDBC Logging'/><category term='oracle'/><category term='role separation'/><category term='permissions'/><category term='tns'/><category term='mtom'/><category term='swrl'/><category term='rhel4'/><category term='Multipath'/><category term='verifier'/><category term='session'/><category term='weblogic'/><category term='stats'/><category term='partition'/><category term='dbms_cube_exp'/><category term='expdp'/><category term='remove'/><category term='agent'/><category term='locking'/><category term='ORA-01460'/><category term='up2date'/><category term='iptraf'/><category term='invisible'/><category term='systemstate'/><category term='em'/><category term='imp'/><category term='public'/><category term='cache'/><category term='useful'/><category term='Connect'/><category term='revoking privileges'/><category term='5155885'/><category term='ons'/><category term='wait'/><category term='load'/><category term='brief'/><category term='skgznpcre3'/><category term='dbms_sqltune'/><category term='business intelligence'/><category term='oralce'/><category term='cvu'/><category term='partitioning'/><category term='import_sql_profile'/><category term='rpm'/><category term='deleted'/><category term='compression'/><category term='fdba'/><category term='11gR2'/><category term='enterprise'/><category term='Global Temporary Table'/><category term='monitor'/><category term='script'/><category term='Kkslgbv0'/><category term='windows'/><category term='netca'/><category term='flashback'/><category term='clusterware'/><category term='database'/><category term='Nokia N900'/><category term='archive gaps'/><category term='linux'/><category term='3136'/><category term='spfile'/><category term='PRCR-1079'/><category term='PSU 11.2.0.1.2'/><category term='silent installation'/><category term='vi'/><category term='8898852'/><category term='php'/><category term='convert'/><category term='dictionary scripts'/><category term='mount'/><category term='chain'/><category term='rename'/><category term='auto start'/><category term='single'/><category term='11gR1'/><category term='mongodb'/><category term='incremental'/><category term='connection leak'/><category term='lob'/><category term='four digits'/><category term='close'/><category term='roll forward'/><category term='gc lost blocks'/><category term='GParted'/><category term='mercury'/><category term='physical standby'/><category term='tablespaces'/><category term='search'/><category term='lns'/><category term='null cols'/><category term='dblinks'/><category term='vote'/><category term='formats'/><category term='rman'/><category term='ddl'/><category term='CRS-2640'/><category term='PERFSTAT.STATS$MUTEX_SLEEP_PK'/><category term='metadata'/><category term='flashback_time'/><category term='dbw'/><category term='bitmap'/><category term='oneway'/><title type='text'>A! Help</title><subtitle type='html'>There are two types of researchers. Those who have done something and those who haven't. The latter will say there are 143 ways to do something, and the former will say 142 of them don't work. - Quote from a System V researcher</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://asanga-pradeep.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://asanga-pradeep.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default?start-index=101&amp;max-results=100'/><author><name>Asanga</name><uri>http://www.blogger.com/profile/06917616787415349832</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_90fhbVRwXDU/TECqZgHU0eI/AAAAAAAAAIo/hwI2BMzwDcI/S220/profile.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>257</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-2414933436751311863.post-3143727024185276659</id><published>2012-02-11T11:32:00.000-08:00</published><updated>2012-02-11T11:32:51.763-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='auto start'/><category scheme='http://www.blogger.com/atom/ns#' term='grid control'/><category scheme='http://www.blogger.com/atom/ns#' term='11g'/><category scheme='http://www.blogger.com/atom/ns#' term='Cloud Control'/><category scheme='http://www.blogger.com/atom/ns#' term='upgrade'/><category scheme='http://www.blogger.com/atom/ns#' term='12c'/><category scheme='http://www.blogger.com/atom/ns#' term='agent'/><title type='text'>Upgrading Grid Control 11g to 12c - 2</title><content type='html'>&lt;a href="http://www.asanga-pradeep.blogspot.com/2012/02/upgrading-grid-control-11g-to-12c-1.html"&gt;Earlier post&lt;/a&gt; showed the installing of pre-upgrade patch and switching agents to 12c. This post shows the rest of the upgrade steps which is upgrading of OMS and deinstalling the old OMS and agents.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.oracle.com/technetwork/oem/grid-control/downloads/linuxx8664soft-085949.html"&gt;Download the new Grid control software&lt;/a&gt;, copy the downloaded files to the host where grid control is currently installed and unzip the two files.&lt;br /&gt;&lt;br /&gt;Shutdown the OMS with &lt;br /&gt;&lt;pre&gt;emctl stop oms&lt;/pre&gt;It is important to stop it without the "-all" option. If the OMS is stopped with "-all" option then following warning will appear during the upgrade.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-vnBIG2BQtzA/Tza4DcqkB2I/AAAAAAAAAoo/28zLIvzVnWM/s1600/repos11.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="240" src="http://2.bp.blogspot.com/-vnBIG2BQtzA/Tza4DcqkB2I/AAAAAAAAAoo/28zLIvzVnWM/s320/repos11.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;Another thing that can come up is the following error.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-YYaip8-17J8/Tza4prjPQGI/AAAAAAAAAo0/fBztPn0a_9s/s1600/repos6.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="230" src="http://2.bp.blogspot.com/-YYaip8-17J8/Tza4prjPQGI/AAAAAAAAAo0/fBztPn0a_9s/s320/repos6.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;To fix this start the OMS and run &lt;br /&gt;&lt;pre&gt;emctl config emkey -copy_to_repos -sysman_pwd gridb321&lt;br /&gt;Oracle Enterprise Manager 11g Release 1 Grid Control&lt;br /&gt;Copyright (c) 1996, 2010 Oracle Corporation.  All rights reserved.&lt;br /&gt;The EMKey has been copied to the Management Repository. This operation will cause the EMKey to become unsecure.&lt;br /&gt;After the required operation has been completed, secure the EMKey by running "emctl config emkey -remove_from_repos".&lt;/pre&gt;After this stop the oms again (without the -all option) and rerun the installer. &lt;br /&gt;&lt;br /&gt;There other warnings and errors where some would allow to continue whereas others would require some steps to correct these warnings.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-DfUzO2tKKO4/Tza5qj4Ke-I/AAAAAAAAApA/4e3iesCHDCQ/s1600/repos7.png" imageanchor="1" style="margin-left:1em; margin-right:1em"&gt;&lt;img border="0" height="238" width="320" src="http://1.bp.blogspot.com/-DfUzO2tKKO4/Tza5qj4Ke-I/AAAAAAAAApA/4e3iesCHDCQ/s320/repos7.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-AjHOgSofmTk/Tza5t4Mq8bI/AAAAAAAAApM/MB1FLeoP3S0/s1600/repos8.png" imageanchor="1" style="margin-left:1em; margin-right:1em"&gt;&lt;img border="0" height="239" width="320" src="http://2.bp.blogspot.com/-AjHOgSofmTk/Tza5t4Mq8bI/AAAAAAAAApM/MB1FLeoP3S0/s320/repos8.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;To fix these warnings&lt;pre&gt;SQL&gt; grant execute on dbms_random to dbsnmp;&lt;br /&gt;Grant succeeded.&lt;br /&gt;&lt;br /&gt;SQL&gt; grant execute on dbms_random to sysman;&lt;br /&gt;Grant succeeded.&lt;br /&gt;&lt;br /&gt;SQL&gt; select account_status,username from dba_users where username='ORACLE_OCM';&lt;br /&gt;&lt;br /&gt;ACCOUNT_STATUS     USERNAME&lt;br /&gt;------------------ -----------&lt;br /&gt;EXPIRED &amp; LOCKED   ORACLE_OCM&lt;br /&gt;&lt;br /&gt;SQL&gt; alter user oracle_ocm account unlock;&lt;br /&gt;User altered.&lt;br /&gt;&lt;br /&gt;SQL&gt; alter user oracle_ocm identified by ******;&lt;br /&gt;User altered.&lt;br /&gt;&lt;br /&gt;SQL&gt; select * from v$log;&lt;br /&gt;&lt;br /&gt;    GROUP#    THREAD#  SEQUENCE#      BYTES    MEMBERS ARC STATUS           FIRST_CHANGE# FIRST_TIM&lt;br /&gt;---------- ---------- ---------- ---------- ---------- --- ---------------- ------------- ---------&lt;br /&gt;         1          1        376   52428800          2 YES INACTIVE               6438727 10-FEB-12&lt;br /&gt;         2          1        377   52428800          2 YES INACTIVE               6452498 10-FEB-12&lt;br /&gt;         3          1        378   52428800          2 NO  CURRENT                6483486 10-FEB-12&lt;br /&gt;&lt;br /&gt;SQL&gt; alter database drop logfile group 1; -- do for other groups as well&lt;br /&gt;Database altered.&lt;br /&gt;&lt;br /&gt;SQL&gt; alter database add logfile group 1 size 300M;&lt;br /&gt;Database altered.&lt;br /&gt;&lt;br /&gt;SQL&gt;  select * from v$log;&lt;br /&gt;&lt;br /&gt;    GROUP#    THREAD#  SEQUENCE#      BYTES    MEMBERS ARC STATUS           FIRST_CHANGE# FIRST_TIM&lt;br /&gt;---------- ---------- ---------- ---------- ---------- --- ---------------- ------------- ---------&lt;br /&gt;         1          1        379  314572800          2 NO  CURRENT                6521242 10-FEB-12&lt;br /&gt;         2          1          0  314572800          2 YES UNUSED                       0&lt;br /&gt;         3          1          0  314572800          2 YES UNUSED                       0&lt;/pre&gt;Some steps (eg step 5) in the install process take longer to complete and at times there will be movement on the progress bar. It is not stuck and it will help to keep and eye on the logs as well. Logs for installation is available in Middleware12/oms/sysman/logs (Middleware12 is directory for new installation). As part of the install WebLogic server 10.3.5 will be installed.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-fKlN_FU4ZKw/Tza7WOZRrXI/AAAAAAAAApY/WDxxqtLyvBc/s1600/repos1.png" imageanchor="1" style="margin-left:1em; margin-right:1em"&gt;&lt;img border="0" height="239" width="320" src="http://2.bp.blogspot.com/-fKlN_FU4ZKw/Tza7WOZRrXI/AAAAAAAAApY/WDxxqtLyvBc/s320/repos1.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-RoOX98ybCYg/Tza7Wd3-nDI/AAAAAAAAApk/N8VoJwRWcKE/s1600/repos2.png" imageanchor="1" style="margin-left:1em; margin-right:1em"&gt;&lt;img border="0" height="239" width="320" src="http://4.bp.blogspot.com/-RoOX98ybCYg/Tza7Wd3-nDI/AAAAAAAAApk/N8VoJwRWcKE/s320/repos2.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-d-_vPgv-PW0/Tza7W284AcI/AAAAAAAAAp0/hBZHo-jfyT4/s1600/repos3.png" imageanchor="1" style="margin-left:1em; margin-right:1em"&gt;&lt;img border="0" height="237" width="320" src="http://4.bp.blogspot.com/-d-_vPgv-PW0/Tza7W284AcI/AAAAAAAAAp0/hBZHo-jfyT4/s320/repos3.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-ANz64z75tJk/Tza7nzll_WI/AAAAAAAAAp8/ttip0Ufglws/s1600/repos4.png" imageanchor="1" style="margin-left:1em; margin-right:1em"&gt;&lt;img border="0" height="238" width="320" src="http://1.bp.blogspot.com/-ANz64z75tJk/Tza7nzll_WI/AAAAAAAAAp8/ttip0Ufglws/s320/repos4.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-3ttSGxMAk8s/Tza7oENXMLI/AAAAAAAAAqM/QKjm6-MHgrY/s1600/repos5.png" imageanchor="1" style="margin-left:1em; margin-right:1em"&gt;&lt;img border="0" height="237" width="320" src="http://4.bp.blogspot.com/-3ttSGxMAk8s/Tza7oENXMLI/AAAAAAAAAqM/QKjm6-MHgrY/s320/repos5.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-0KktPpOrbTc/Tza7ov-585I/AAAAAAAAAqU/8SOZHxy5Y30/s1600/repos9.png" imageanchor="1" style="margin-left:1em; margin-right:1em"&gt;&lt;img border="0" height="239" width="320" src="http://4.bp.blogspot.com/-0KktPpOrbTc/Tza7ov-585I/AAAAAAAAAqU/8SOZHxy5Y30/s320/repos9.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-ddo5uAgjLiM/Tza8BXJDvzI/AAAAAAAAAqg/6bCyFqibPeg/s1600/repos10.png" imageanchor="1" style="margin-left:1em; margin-right:1em"&gt;&lt;img border="0" height="239" width="320" src="http://1.bp.blogspot.com/-ddo5uAgjLiM/Tza8BXJDvzI/AAAAAAAAAqg/6bCyFqibPeg/s320/repos10.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-CKttn6HCSNM/Tza8BhQt2cI/AAAAAAAAAqs/yXr-tCmy9X4/s1600/repos12.png" imageanchor="1" style="margin-left:1em; margin-right:1em"&gt;&lt;img border="0" height="240" width="320" src="http://4.bp.blogspot.com/-CKttn6HCSNM/Tza8BhQt2cI/AAAAAAAAAqs/yXr-tCmy9X4/s320/repos12.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-M6nyxVFFunA/Tza8CQsSZdI/AAAAAAAAAq8/SBiJl6fzB7g/s1600/repos13.png" imageanchor="1" style="margin-left:1em; margin-right:1em"&gt;&lt;img border="0" height="240" width="320" src="http://4.bp.blogspot.com/-M6nyxVFFunA/Tza8CQsSZdI/AAAAAAAAAq8/SBiJl6fzB7g/s320/repos13.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-G5RhXgkFtfs/Tza8VvMVz3I/AAAAAAAAArE/eo8eDX9zOBY/s1600/repos14.png" imageanchor="1" style="margin-left:1em; margin-right:1em"&gt;&lt;img border="0" height="239" width="320" src="http://4.bp.blogspot.com/-G5RhXgkFtfs/Tza8VvMVz3I/AAAAAAAAArE/eo8eDX9zOBY/s320/repos14.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-EXB0eB5Fksg/Tza8WEe5sOI/AAAAAAAAArU/Ar_6fcmxT24/s1600/repos15.png" imageanchor="1" style="margin-left:1em; margin-right:1em"&gt;&lt;img border="0" height="238" width="320" src="http://2.bp.blogspot.com/-EXB0eB5Fksg/Tza8WEe5sOI/AAAAAAAAArU/Ar_6fcmxT24/s320/repos15.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;pre&gt;# /opt/app/oracle/Middleware12/oms/allroot.sh&lt;br /&gt;&lt;br /&gt;Starting to execute allroot.sh .........&lt;br /&gt;&lt;br /&gt;Starting to execute /opt/app/oracle/Middleware12/oms/root.sh ......&lt;br /&gt;Running Oracle 11g root.sh script...&lt;br /&gt;&lt;br /&gt;The following environment variables are set as:&lt;br /&gt;    ORACLE_OWNER= oracle&lt;br /&gt;    ORACLE_HOME=  /opt/app/oracle/Middleware12/oms&lt;br /&gt;&lt;br /&gt;Enter the full pathname of the local bin directory: [/usr/local/bin]:&lt;br /&gt;The file "dbhome" already exists in /usr/local/bin.  Overwrite it? (y/n)&lt;br /&gt;[n]:&lt;br /&gt;The file "oraenv" already exists in /usr/local/bin.  Overwrite it? (y/n)&lt;br /&gt;[n]:&lt;br /&gt;The file "coraenv" already exists in /usr/local/bin.  Overwrite it? (y/n)&lt;br /&gt;[n]:&lt;br /&gt;&lt;br /&gt;Entries will be added to the /etc/oratab file as needed by&lt;br /&gt;Database Configuration Assistant when a database is created&lt;br /&gt;Finished running generic part of root.sh script.&lt;br /&gt;Now product-specific root actions will be performed.&lt;br /&gt;/etc exist&lt;br /&gt;/opt/app/oracle/Middleware12/oms&lt;br /&gt;Finished execution of  /opt/app/oracle/Middleware12/oms/root.sh ......&lt;/pre&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-PXWZ6hLenow/Tza8WkeOLZI/AAAAAAAAArc/n20tT8uGSPw/s1600/repos16.png" imageanchor="1" style="margin-left:1em; margin-right:1em"&gt;&lt;img border="0" height="238" width="320" src="http://1.bp.blogspot.com/-PXWZ6hLenow/Tza8WkeOLZI/AAAAAAAAArc/n20tT8uGSPw/s320/repos16.png" /&gt;&lt;/a&gt;&lt;/div&gt;At the end of the upgrade the 12c agents switched &lt;a href="http://asanga-pradeep.blogspot.com/2012/02/upgrading-grid-control-11g-to-12c-1.html"&gt;earlier&lt;/a&gt; can now communicate with the OMS. Checking the status of the agents shows&lt;pre&gt;emctl  status agent&lt;br /&gt;Oracle Enterprise Manager 12c Cloud Control 12.1.0.1.0&lt;br /&gt;Copyright (c) 1996, 2011 Oracle Corporation.  All rights reserved.&lt;br /&gt;---------------------------------------------------------------&lt;br /&gt;Agent Version     : 12.1.0.1.0&lt;br /&gt;OMS Version       : 12.1.0.1.0&lt;br /&gt;Protocol Version  : 12.1.0.1.0&lt;br /&gt;Agent Home        : /opt/app/oracle/grid_agent/agent12g/agent_inst&lt;br /&gt;Agent Binaries    : /opt/app/oracle/grid_agent/agent12g/core/12.1.0.1.0&lt;br /&gt;Agent Process ID  : 4072&lt;br /&gt;Parent Process ID : 3935&lt;br /&gt;Agent URL         : https://rac1. .net:3872/emd/main&lt;br /&gt;Repository URL    : https://hpc4. .net:4900/empbs/upload&lt;br /&gt;Started at        : 2012-02-09 16:26:48&lt;br /&gt;Started by user   : oracle&lt;br /&gt;Last Reload       : (none)&lt;br /&gt;Last successful upload                       : 2012-02-10 12:59:01&lt;br /&gt;Last attempted upload                        : 2012-02-10 12:59:01&lt;br /&gt;Total Megabytes of XML files uploaded so far : 2.44&lt;br /&gt;Number of XML files pending upload           : 0&lt;br /&gt;Size of XML files pending upload(MB)         : 0&lt;br /&gt;Available disk space on upload filesystem    : 13.31%&lt;br /&gt;Collection Status                            : Collections enabled&lt;br /&gt;Last attempted heartbeat to OMS              : 2012-02-10 13:02:12&lt;br /&gt;Last successful heartbeat to OMS             : 2012-02-10 13:02:12&lt;br /&gt;&lt;br /&gt;---------------------------------------------------------------&lt;br /&gt;Agent is Running and Ready&lt;/pre&gt;Status from old agent shows it's running but not communicating with OMS anymore&lt;pre&gt;emctl status agent&lt;br /&gt;Oracle Enterprise Manager 11g Release 1 Grid Control 11.1.0.1.0&lt;br /&gt;Copyright (c) 1996, 2010 Oracle Corporation.  All rights reserved.&lt;br /&gt;---------------------------------------------------------------&lt;br /&gt;Content-Length: 0&lt;br /&gt;Server: Jetty(7.0.1.v20091125)&lt;br /&gt;&lt;br /&gt;---------------------------------------------------------------&lt;br /&gt;Agent is Running but Not Ready&lt;/pre&gt;This completes the upgrade part of grid control from 11g&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-cNHDqvr1O9o/Tza9z9Q3BqI/AAAAAAAAAro/gPFuSznZNcE/s1600/grid11ghome.png" imageanchor="1" style="margin-left:1em; margin-right:1em"&gt;&lt;img border="0" height="228" width="320" src="http://3.bp.blogspot.com/-cNHDqvr1O9o/Tza9z9Q3BqI/AAAAAAAAAro/gPFuSznZNcE/s320/grid11ghome.png" /&gt;&lt;/a&gt;&lt;/div&gt;to 12c&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-I92INByQcHc/Tza94LfIyAI/AAAAAAAAAr0/JtgXeSWXLh8/s1600/12cgridhome.png" imageanchor="1" style="margin-left:1em; margin-right:1em"&gt;&lt;img border="0" height="174" width="320" src="http://1.bp.blogspot.com/-I92INByQcHc/Tza94LfIyAI/AAAAAAAAAr0/JtgXeSWXLh8/s320/12cgridhome.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;12c grid control Home page.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-xQFx-uWzNq0/Tza-GTqueaI/AAAAAAAAAsA/E_xPESEZUco/s1600/summarypage.png" imageanchor="1" style="margin-left:1em; margin-right:1em"&gt;&lt;img border="0" height="174" width="320" src="http://4.bp.blogspot.com/-xQFx-uWzNq0/Tza-GTqueaI/AAAAAAAAAsA/E_xPESEZUco/s320/summarypage.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;It could be seen that agents from exisiting hosts have already started communicating with new OMS.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-fZ433j-gcTU/Tza-bcZQVII/AAAAAAAAAsM/VhDYVWu9GtI/s1600/hostpage.png" imageanchor="1" style="margin-left:1em; margin-right:1em"&gt;&lt;img border="0" height="174" width="320" src="http://2.bp.blogspot.com/-fZ433j-gcTU/Tza-bcZQVII/AAAAAAAAAsM/VhDYVWu9GtI/s320/hostpage.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;12c's new ASH Analytics page&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-byrHFGawLqg/Tza_FlbJMMI/AAAAAAAAAsY/dcMXBKaHCP8/s1600/newashanalytics.png" imageanchor="1" style="margin-left:1em; margin-right:1em"&gt;&lt;img border="0" height="174" width="320" src="http://4.bp.blogspot.com/-byrHFGawLqg/Tza_FlbJMMI/AAAAAAAAAsY/dcMXBKaHCP8/s320/newashanalytics.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Last step is to deinstall the old agents and OMS. &lt;br /&gt;To deinstall the agents from local and remote hosts including RAC follow the &lt;a href="http://asanga-pradeep.blogspot.com/2012/02/deinstalling-cluster-base-grid-control.html"&gt;agent deinstall post&lt;/a&gt; or How to Remove the 11.1.0.1.0 Grid Control Management Agent with the Silent Method [ID 1068036.1].&lt;br /&gt;&lt;br /&gt;For OMS use &lt;a href="http://docs.oracle.com/cd/E11857_01/install.111/e16847/deinstall_em_gui.htm#CHDGJFID"&gt;How to Deinstall 11g Grid Control Components in Graphical Mode&lt;/a&gt; &lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-mcoxh2zO8us/TzbA4JgZ2wI/AAAAAAAAAsk/QUstEmUNRxc/s1600/removeoldoms.png" imageanchor="1" style="margin-left:1em; margin-right:1em"&gt;&lt;img border="0" height="250" width="320" src="http://2.bp.blogspot.com/-mcoxh2zO8us/TzbA4JgZ2wI/AAAAAAAAAsk/QUstEmUNRxc/s320/removeoldoms.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;More inforation is available from &lt;a href="http://docs.oracle.com/cd/E11857_01/install.111/e16847/deinstall_em_gui.htm#CHDFHIAF"&gt;Enterprise Manager Grid Control Advanced Installation and Configuration Guide&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;To enable/disable the auto start of any agent&lt;pre&gt;chkconfig gcstartup on/off&lt;br /&gt;chkconfig --list | grep gcstartup&lt;br /&gt;gcstartup       0:off   1:off   2:on    3:on    4:on    5:on    6:off&lt;/pre&gt;&lt;br /&gt;Useful metalink notes&lt;br /&gt;How to Remove the 11.1.0.1.0 Grid Control Management Agent with the Silent Method &lt;b&gt;[ID 1068036.1]&lt;/b&gt;&lt;br /&gt;12c: Cluster Database Target Remains in Pending Delete Status Indefinetely after Re-adding &lt;b&gt;[ID 1403833.1]&lt;/b&gt;&lt;br /&gt;12C Cloud Control: How to De-install 12C Agent &lt;b&gt;[ID 1368088.1]&lt;/b&gt;&lt;br /&gt;How To De-Install EM 12c Cloud Control &lt;b&gt;[ID 1363418.1]&lt;/b&gt;&lt;br /&gt;How to Delete One Node from a RAC Cluster in EM 12c? &lt;b&gt;[ID 1391107.1]&lt;/b&gt;&lt;br /&gt;How to Deploy the Latest Database Plugin to the OMS and the Agent in 12C Cloud Control &lt;b&gt;[ID 1388143.1]&lt;/b&gt;&lt;br /&gt;EM 12c: How to Install EM 12c Agent using Silent Install Method with Response File &lt;b&gt;[ID 1360083.1]&lt;/b&gt;&lt;br /&gt;EM 12c: How to Install Enterprise Manager 12.1.0.1 Using Silent Method &lt;b&gt;[ID 1361643.1]&lt;/b&gt;&lt;br /&gt;How to install Enterprise Manager Cloud Control 12c Agent on Linux &lt;b&gt;[ID 1360183.1]&lt;/b&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2414933436751311863-3143727024185276659?l=asanga-pradeep.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/3143727024185276659'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/3143727024185276659'/><link rel='alternate' type='text/html' href='http://asanga-pradeep.blogspot.com/2012/02/upgrading-grid-control-11g-to-12c-2.html' title='Upgrading Grid Control 11g to 12c - 2'/><author><name>Asanga</name><uri>http://www.blogger.com/profile/06917616787415349832</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_90fhbVRwXDU/TECqZgHU0eI/AAAAAAAAAIo/hwI2BMzwDcI/S220/profile.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/-vnBIG2BQtzA/Tza4DcqkB2I/AAAAAAAAAoo/28zLIvzVnWM/s72-c/repos11.png' height='72' width='72'/></entry><entry><id>tag:blogger.com,1999:blog-2414933436751311863.post-7095061598750620197</id><published>2012-02-11T10:20:00.000-08:00</published><updated>2012-02-11T11:33:30.767-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='grid control'/><category scheme='http://www.blogger.com/atom/ns#' term='11g'/><category scheme='http://www.blogger.com/atom/ns#' term='Cloud Control'/><category scheme='http://www.blogger.com/atom/ns#' term='upgrade'/><category scheme='http://www.blogger.com/atom/ns#' term='12c'/><category scheme='http://www.blogger.com/atom/ns#' term='agent'/><title type='text'>Upgrading Grid Control 11g to 12c  - 1</title><content type='html'>This blog upgrades the &lt;a href="http://asanga-pradeep.blogspot.com/2010/12/installing-grid-control-11gr1-and.html"&gt;earlier installed Grid Control 11g&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;There are three approaches to upgrade as per &lt;a href="http://docs.oracle.com/cd/E24628_01/upgrade.121/e22625/things_to_know.htm#BACDGAFC"&gt;Enterprise Manager Cloud Control Upgrade Guide&lt;/a&gt; (direct quote)&lt;br /&gt;"&lt;i&gt;1-system upgrade, understandably, must always be done on the same platform as the earlier release of the Enterprise Manager system because you are upgrading on the same host.&lt;br /&gt;&lt;br /&gt;2-system upgrade is possible on the same platform as the earlier release of the Enterprise Manager system, and from Linux (32-bit) to Linux (64-bit) (or vice versa) because you are upgrading on a remote host.&lt;br /&gt;&lt;br /&gt;1-system upgrade on a different host is possible on the same platform as the earlier release of the Enterprise Manager system, and from Linux (32-bit) to Linux (64-bit) (or vice versa) because you are upgrading on a remote host, much like 2-system upgrade approach.&lt;/i&gt;".&lt;br /&gt;&lt;br /&gt;&lt;a href="http://docs.oracle.com/cd/E24628_01/upgrade.121/e22625/overview_upg_approaches.htm#CJABADDC"&gt;Comparison of the three approaches.&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;This blog uses 1-system upgrade on the same host path. The upgrade consists of four main steps. Installing the pre-upgrade patch which allows the agent upgrade. Upgrade of agents and then finally grid control upgrade and post-upgrade steps. Oracle documentation provides a &lt;a href="http://docs.oracle.com/cd/E24628_01/upgrade.121/e22625/upgrading_em_one_sys.htm#CIHIADEC"&gt;detail breakdown of these steps&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;There are few &lt;a href="http://docs.oracle.com/cd/E24628_01/upgrade.121/e22625/things_to_know.htm#BACIDHFB"&gt;things to know&lt;/a&gt; about the upgrade.&lt;br /&gt;&lt;br /&gt;Upgrades do not upgrade the database, if the existing database is certified for grid control &lt;b&gt;see 412431.1&lt;/b&gt; then it shouldn't be an issue. For this DB is 11.1.0.7.0.&lt;br /&gt;&lt;br /&gt;12c Agents communicate only with 12c OMS so agents are upgrade before OMS and time between agent upgrade and OMS upgrade there won't be any communication between agent and OMS and there won't be any monitoring. &lt;br /&gt;&lt;br /&gt;Any agent could be upgrades as long as 12c management software is available.&lt;br /&gt;&lt;br /&gt;Do not upgrade EM cloud control on a NFS mounted drive.&lt;br /&gt;&lt;br /&gt;EM cloud control will install jdk 1.6_24 and Oracle WebLogic Server 11g Release 1 (10.3.5) if these are not present. For this existing web logic version is 10.3.2&lt;br /&gt;and jdk 1.6_30&lt;br /&gt;&lt;br /&gt;Earlier agents ports are carried forward with the upgrade.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.oracle.com/technetwork/oem/grid-control/downloads/oem-upgrade-console-502238.html"&gt;Get the pre-upgrade patch&lt;/a&gt; and apply it to OMS. &lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-b-BHhPgM_p0/TzaYrQbSFUI/AAAAAAAAAi0/PwUb_isoXLU/s1600/preupgradeloc.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="310" src="http://4.bp.blogspot.com/-b-BHhPgM_p0/TzaYrQbSFUI/AAAAAAAAAi0/PwUb_isoXLU/s320/preupgradeloc.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;Oracle documents mention the pre-upgrade patch as &lt;b&gt;10044087&lt;/b&gt; but this is now replaced with patch &lt;b&gt;13503844&lt;/b&gt;. So if the the download link prompt this patch it is fine. Follow the readme.txt in this patch bundle to install it. One of the pre-req for this patch is "&lt;i&gt;It is Mandatory to have PSU1 (10065631) or later applied on your environment.&lt;/i&gt;"&lt;br /&gt;&lt;br /&gt;Metalink note &lt;i&gt;How to Determine the List of Patch Set Update(PSU) Applied to the Enterprise Manager OMS and Agent Oracle Homes?&lt;/i&gt; &lt;b&gt;[ID 1358092.1]&lt;/b&gt; shows the latest patches available for OMS and agents for both unix and windows. At the time of this blog post the latest patch was &lt;b&gt;13248190&lt;/b&gt; for OMS and &lt;b&gt;9346243&lt;/b&gt; for Agent. So those were applied. Database had PSU 11.1.0.7.5 applied.&lt;br /&gt;&lt;br /&gt;Following metalink notes may help with PSU patch applying issues.&lt;br /&gt;Troubleshooting the Improved Patching Solution for Grid Control 11.1GC Management Server &lt;b&gt;[ID 1326515.1]&lt;/b&gt;&lt;br /&gt;Grid Control 11g: post_install script for PSU 4 Patch 12423703 fails with error for "MGMT_SET_JOB_Q_PROC" &lt;b&gt;[ID 1362945.1]&lt;/b&gt;&lt;br /&gt;Grid Control 11g: Post Install Script For PSU Patch 12423703 gives Error: "ORA-20110:Unexpected error executing MGMT_SET_JOB_Q_PROC" &lt;b&gt;[ID 1359157.1]&lt;/b&gt;&lt;br /&gt;Applying Post Install Scripts For Patch Getting Error: "ORA-00068: invalid value 0 for parameter job_queue_processes" &lt;b&gt;[ID 1375352.1]&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Once the PSU patches applied it's time to apply the pre-upgrade console patch &lt;b&gt;13503844&lt;/b&gt;.&lt;br /&gt;&lt;pre&gt;13503844]$ /opt/app/oracle/Middleware/oms11g/OPatch/opatch apply&lt;br /&gt;Oracle Interim Patch Installer version 11.1.0.9.4&lt;br /&gt;Copyright (c) 2011, Oracle Corporation.  All rights reserved.&lt;br /&gt;&lt;br /&gt;Oracle Home       : /opt/app/oracle/Middleware/oms11g&lt;br /&gt;Central Inventory : /opt/app/oraInventory&lt;br /&gt;   from           : /opt/app/oracle/Middleware/oms11g/oraInst.loc&lt;br /&gt;OPatch version    : 11.1.0.9.4&lt;br /&gt;OUI version       : 11.1.0.8.0&lt;br /&gt;Log file location : /opt/app/oracle/Middleware/oms11g/cfgtoollogs/opatch/13503844_Feb_09_2012_10_56_45/apply2012-02-09_10-56-44AM_1.log&lt;br /&gt;&lt;br /&gt;OPatch detects the Middleware Home as "/opt/app/oracle/Middleware"&lt;br /&gt;&lt;br /&gt;OPatch will do the following:&lt;br /&gt;[Oracle Home discovery]                      : Configure and Validate Oracle Home info.&lt;br /&gt;[Prerequisite for apply]                     : Invoke prerequisites to see if patch can be applied.&lt;br /&gt;[Patch conflict detection for apply patch]   : Check if any conflict with already installed patches in Oracle Home.&lt;br /&gt;&lt;br /&gt;Applying interim patch '13503844' to OH '/opt/app/oracle/Middleware/oms11g'&lt;br /&gt;Verifying environment and performing prerequisite checks...&lt;br /&gt;To continue, OPatch will do the following:&lt;br /&gt;[Back up for restore]           : Back up 68 files for Oracle Home restore in case of patching error.&lt;br /&gt;[Back up for rollback]          : Back up 39 files for future patch rollback.&lt;br /&gt;[Patch Oracle Home for apply]   : Copy 39 file(s) to Oracle Home;&lt;br /&gt;                                  Archive 4 jar file(s) with 254 class file(s).&lt;br /&gt;[Update inventory for apply]    : Modify the inventory to record  patch [13503844].&lt;br /&gt;&lt;br /&gt;Do you want to proceed? [y|n]&lt;br /&gt;y&lt;br /&gt;User Responded with: Y&lt;br /&gt;All checks passed.&lt;br /&gt;Provide your email address to be informed of security issues, install and&lt;br /&gt;initiate Oracle Configuration Manager. Easier for you if you use your My&lt;br /&gt;Oracle Support Email address/User Name.&lt;br /&gt;Visit http://www.oracle.com/support/policies.html for details.&lt;br /&gt;Email address/User Name:&lt;br /&gt;&lt;br /&gt;You have not provided an email address for notification of security issues.&lt;br /&gt;Do you wish to remain uninformed of security issues ([Y]es, [N]o) [N]:  y&lt;br /&gt;Backing up files...&lt;br /&gt;&lt;br /&gt;Patching component oracle.sysman.oms.core, 11.1.0.1.0...&lt;br /&gt;&lt;br /&gt;Verifying the update...&lt;br /&gt;Patch 13503844 successfully applied&lt;br /&gt;Log file location: /opt/app/oracle/Middleware/oms11g/cfgtoollogs/opatch/13503844_Feb_09_2012_10_56_45/apply2012-02-09_10-56-44AM_1.log&lt;br /&gt;&lt;br /&gt;OPatch succeeded.&lt;br /&gt;&lt;br /&gt;13503844]$ $ORACLE_HOME/bin/rcuJDBCEngine sys/gridb@192.168.0.76:1521:gridb JDBC_SCRIPT $ORACLE_HOME/sysman/preupgc/puc_dblink_pkgdef.sql&lt;br /&gt;Completed SQL script execution normally.&lt;br /&gt;1 scripts were processed&lt;br /&gt;&lt;br /&gt;13503844]$ $ORACLE_HOME/bin/rcuJDBCEngine sys/gridb@192.168.0.76:1521:gridb JDBC_SCRIPT $ORACLE_HOME/sysman/preupgc/puc_dblink_pkgbody.sql&lt;br /&gt;Completed SQL script execution normally.&lt;br /&gt;1 scripts were processed&lt;br /&gt;&lt;br /&gt;13503844]$ $ORACLE_HOME/bin/rcuJDBCEngine sysman/gridb321@192.168.0.76:1521:gridb JDBC_SCRIPT $ORACLE_HOME/sysman/preupgc/pre_upg_console.sql&lt;br /&gt;l_target_guids.COUNT : 4&lt;br /&gt;&lt;br /&gt;oracle.sysman.beacon SMPADDON 11.1.0.1.0 Oracle Beacon  Plugin&lt;br /&gt;oracle.sysman.emrep SMPADDON 11.1.0.1.0 Oracle Management And Repository Plugin&lt;br /&gt;oracle.sysman.oh SMPADDON 11.1.0.1.0 Oracle OracleHome&lt;br /&gt;oracle.sysman.csa SMPADDON 11.1.0.1.0 Oracle Client System Analyzer&lt;br /&gt;oracle.sysman.db SMPADDON 11.1.0.1.0 Oracle Database Plugin&lt;br /&gt;oracle.sysman.emas SMPADDON 11.1.0.1.0 Oracle Fusion Middleware Plugin&lt;br /&gt;oracle.sysman.empa ADDON 11.1.0.1.0 Oracle Siebel Plugin&lt;br /&gt;oracle.sysman.vt ADDON 11.1.0.1.0 Oracle Virtualization Plugin&lt;br /&gt;oracle.fmw.bhv ADDON 11.1.0.1.0 Oracle Beehive Plugin&lt;br /&gt;&lt;br /&gt;Completed SQL script execution normally.&lt;br /&gt;24 scripts were processed&lt;/pre&gt;When the patch is applied it add a link in the deployment tab page under upgrade topic. &lt;br /&gt;Below is a screenshot of this page before pre-upgrade patch is applied.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-9uJDg96jkQg/Tzadev_FNiI/AAAAAAAAAjA/P3EswRKhAKs/s1600/beforepatch.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="174" src="http://4.bp.blogspot.com/-9uJDg96jkQg/Tzadev_FNiI/AAAAAAAAAjA/P3EswRKhAKs/s320/beforepatch.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;Below is a screenshot of the same page after the pre-upgrade console patch applied.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-1bxPffXSwos/Tzadq_oqJqI/AAAAAAAAAjM/2QhZhCiEL5o/s1600/afterpatch.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="174" src="http://2.bp.blogspot.com/-1bxPffXSwos/Tzadq_oqJqI/AAAAAAAAAjM/2QhZhCiEL5o/s320/afterpatch.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;This link will allow navigation into upgrade console page which has option to chose the upgrade type, agent upgrade status and over view page describing the steps in the upgrade. Below is the screenshot of the upgrade console page. &lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-5YnvlBcqOp4/Tzahb7FJusI/AAAAAAAAAjY/QO-aLwdgZjQ/s1600/upgradeconsole.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="174" src="http://1.bp.blogspot.com/-5YnvlBcqOp4/Tzahb7FJusI/AAAAAAAAAjY/QO-aLwdgZjQ/s320/upgradeconsole.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;The overview link on this page gives information about each upgrade approach. Select the upgrade approach and click on the overview link. Below is screenshot of 1-system on same host and 1-system on different host overview page.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-Ey-SCplY5hI/TzaiOXNVmUI/AAAAAAAAAjk/gAWkVdm9pcg/s1600/upgradeconsole2.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="174" src="http://3.bp.blogspot.com/-Ey-SCplY5hI/TzaiOXNVmUI/AAAAAAAAAjk/gAWkVdm9pcg/s320/upgradeconsole2.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-tPxtoDvumA8/TzaiXMIxnfI/AAAAAAAAAjw/TkeXWqB4IxE/s1600/1systeoverview1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="174" src="http://2.bp.blogspot.com/-tPxtoDvumA8/TzaiXMIxnfI/AAAAAAAAAjw/TkeXWqB4IxE/s320/1systeoverview1.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-k7JnQ25Hc4g/Tzaia70eZSI/AAAAAAAAAj8/_jXAxJfxYek/s1600/overview.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="174" src="http://2.bp.blogspot.com/-k7JnQ25Hc4g/Tzaia70eZSI/AAAAAAAAAj8/_jXAxJfxYek/s320/overview.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;a href="http://www.oracle.com/technetwork/oem/grid-control/downloads/oem-upgrade-console-502238.html"&gt;&lt;br /&gt;Download agent core plugin and other needed plugins&lt;/a&gt; and copy these files into a directory in the host where grid control is running.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-JRd6dwzeAPU/TzajPnQ-pXI/AAAAAAAAAkI/uQXkLQtpnNU/s1600/plugins.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="320" src="http://1.bp.blogspot.com/-JRd6dwzeAPU/TzajPnQ-pXI/AAAAAAAAAkI/uQXkLQtpnNU/s320/plugins.png" width="277" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Below is the list of downloaded plugins.&lt;br /&gt;&lt;pre&gt;-rw-r--r-- 1 oracle oinstall    495016 Feb  9 11:58 12.1.0.1.0_oracle.sysman.oh_2000_0.opar&lt;br /&gt;-rw-r--r-- 1 oracle oinstall    499849 Feb  9 11:58 12.1.0.1.0_oracle.sysman.csa_2000_0.opar&lt;br /&gt;-rw-r--r-- 1 oracle oinstall    297231 Feb  9 11:58 12.1.0.1.0_oracle.sysman.emrep_2000_0.opar&lt;br /&gt;-rw-r--r-- 1 oracle oinstall   3925371 Feb  9 11:58 12.1.0.1.0_oracle.em.soee_2000_0.opar&lt;br /&gt;-rw-r--r-- 1 oracle oinstall 230699506 Feb  9 11:59 12.1.0.1.0_AgentCore_226.zip&lt;br /&gt;-rw-r--r-- 1 oracle oinstall 223979520 Feb  9 11:59 12.1.0.1.0_AgentCore_46.zip&lt;br /&gt;-rw-r--r-- 1 oracle oinstall 621251038 Feb  9 11:59 12.1.0.1.0_oracle.sysman.db_2000_0.opar&lt;br /&gt;-rw-r--r-- 1 oracle oinstall 106452968 Feb  9 12:08 12.1.0.1.0_oracle.sysman.beacon_2000_0.opar&lt;br /&gt;-rw-r--r-- 1 oracle oinstall 440206388 Feb  9 12:17 12.1.0.1.0_oracle.sysman.emas_2000_0.opar&lt;br /&gt;&lt;/pre&gt;Select 1-system upgrade type and then click  mange software link in the upgrade console page. This will show the agent upgradeability. without the above plugin being discovered agents will be shown as unable to upgrade. Below screenshots show the current state of agent upgradeability as no plugin or agent software is validated.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-2n7gxO_HVGc/TzakaS09QQI/AAAAAAAAAkU/VC1CyXTwcSk/s1600/managesoftware1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="174" src="http://3.bp.blogspot.com/-2n7gxO_HVGc/TzakaS09QQI/AAAAAAAAAkU/VC1CyXTwcSk/s320/managesoftware1.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-S3qjepJm-f4/TzakdC7p_JI/AAAAAAAAAkg/BX6LQRmQzx8/s1600/managesoftware2.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="174" src="http://2.bp.blogspot.com/-S3qjepJm-f4/TzakdC7p_JI/AAAAAAAAAkg/BX6LQRmQzx8/s320/managesoftware2.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Give the directory location of the software and validate.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-yfOFvrp5ueM/Tzak8dUy5gI/AAAAAAAAAks/YOhlwTWHLRk/s1600/validate.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="72" src="http://4.bp.blogspot.com/-yfOFvrp5ueM/Tzak8dUy5gI/AAAAAAAAAks/YOhlwTWHLRk/s320/validate.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;When the plugins and agent software is validate all the agents become upgradable. Resolve any issues, missing plugins and re-validate before continuing.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-OV8NYQ3zuK0/Tzaln00AqgI/AAAAAAAAAk4/PHGCBKtK8ZI/s1600/aftervalidate1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="174" src="http://4.bp.blogspot.com/-OV8NYQ3zuK0/Tzaln00AqgI/AAAAAAAAAk4/PHGCBKtK8ZI/s320/aftervalidate1.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-ZXb9AQjUrMU/TzalqlKqC1I/AAAAAAAAAlE/2QSWyt0iJgQ/s1600/aftervalidate2.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="174" src="http://1.bp.blogspot.com/-ZXb9AQjUrMU/TzalqlKqC1I/AAAAAAAAAlE/2QSWyt0iJgQ/s320/aftervalidate2.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;As part of the validate process plugins will be extracted into plugin_bin folder.&lt;br /&gt;&lt;pre&gt;plugin_bin]$ ls -lrt&lt;br /&gt;drwxr----- 3 oracle oinstall  4096 Feb  9 12:18 oracle.sysman.oh&lt;br /&gt;drwxr----- 3 oracle oinstall  4096 Feb  9 12:18 oracle.sysman.emrep&lt;br /&gt;drwxr----- 3 oracle oinstall  4096 Feb  9 12:18 oracle.sysman.emas&lt;br /&gt;drwxr----- 3 oracle oinstall  4096 Feb  9 12:18 oracle.em.soee&lt;br /&gt;drwxr----- 3 oracle oinstall  4096 Feb  9 12:18 oracle.sysman.beacon&lt;br /&gt;drwxr----- 3 oracle oinstall  4096 Feb  9 12:18 oracle.sysman.db&lt;br /&gt;drwxr----- 3 oracle oinstall  4096 Feb  9 12:19 oracle.sysman.csa&lt;/pre&gt;Clicking on the upgradable link next to each green pie chart will show the upgradeability of each agent and each target.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-UqEeFdzzD6E/TzarLURuZ_I/AAAAAAAAAmk/jDAgynQXffk/s1600/upgradabelagents.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="174" src="http://4.bp.blogspot.com/-UqEeFdzzD6E/TzarLURuZ_I/AAAAAAAAAmk/jDAgynQXffk/s320/upgradabelagents.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-2CZqE5XLmrg/TzarOkpT6iI/AAAAAAAAAmw/GVMXh72PpJU/s1600/upgrabletargets.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="174" src="http://2.bp.blogspot.com/-2CZqE5XLmrg/TzarOkpT6iI/AAAAAAAAAmw/GVMXh72PpJU/s320/upgrabletargets.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Once all agents are upgradeable click on "Agent Upgrade Status" link which is under "Other Links" in upgrade console page.At this stage all the status should be not started.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-gAufxfOtvUw/TzamjxzkuZI/AAAAAAAAAlQ/j3rAV_xJCTw/s1600/agentupgdatestesbefore.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="174" src="http://4.bp.blogspot.com/-gAufxfOtvUw/TzamjxzkuZI/AAAAAAAAAlQ/j3rAV_xJCTw/s320/agentupgdatestesbefore.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Click deploy and configure agents button. Multiple agents could be selected to be deployed and configured but this require host and agent credentials if these are not set then oracle and root credentials must be same for all hosts. Here agents are deployed and configured one at a time. Use credentials, selecting sudo gave error "sudo is not present".&lt;br /&gt;&lt;br /&gt;Select the host deploy and configure the new agent. &lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-x9pObK7kpks/Tzanv0OVlBI/AAAAAAAAAlc/gjd9GY16Ea8/s1600/agentupdarageview2.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="174" src="http://1.bp.blogspot.com/-x9pObK7kpks/Tzanv0OVlBI/AAAAAAAAAlc/gjd9GY16Ea8/s320/agentupdarageview2.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Clicking the deploy and configure button open up the page below which allows to specify the new directory for agent host credentials.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-P9kIACPUL-U/TzaoQsDysJI/AAAAAAAAAlo/nYtjJoBc62E/s1600/deployandconfig1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="227" src="http://1.bp.blogspot.com/-P9kIACPUL-U/TzaoQsDysJI/AAAAAAAAAlo/nYtjJoBc62E/s320/deployandconfig1.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Click continue and give root user credentials.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-a02SJwo0sHA/TzaoZhX8dII/AAAAAAAAAl0/4p3evxIubt4/s1600/deployandconfig2.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="227" src="http://3.bp.blogspot.com/-a02SJwo0sHA/TzaoZhX8dII/AAAAAAAAAl0/4p3evxIubt4/s320/deployandconfig2.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;When the submit button is clicked it will start the deploy and configure job.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-Tjfcki721jY/TzapEOMbtQI/AAAAAAAAAmA/lmcybaKSrqI/s1600/deployjobrun.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="227" src="http://4.bp.blogspot.com/-Tjfcki721jY/TzapEOMbtQI/AAAAAAAAAmA/lmcybaKSrqI/s320/deployjobrun.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;As said earlier it is also possible to deploy and configure on multiple hosts. This is useful in RAC environments.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-zJBxKtxFV7k/TzapqQ2gUoI/AAAAAAAAAmY/5kvKB7q5qhc/s1600/deployandconfigRAC.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="174" src="http://2.bp.blogspot.com/-zJBxKtxFV7k/TzapqQ2gUoI/AAAAAAAAAmY/5kvKB7q5qhc/s320/deployandconfigRAC.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;When the job has finished the status will be shown. If job fails inspect the logs which could be accessed through the links given as steps in the same page.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-4G5wKw2yFrU/TzapcZa0gRI/AAAAAAAAAmM/4eaDM27e9UA/s1600/deployjobrun2.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="227" src="http://2.bp.blogspot.com/-4G5wKw2yFrU/TzapcZa0gRI/AAAAAAAAAmM/4eaDM27e9UA/s320/deployjobrun2.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Once the agent deployment is successful run agent readiness check.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-TzQn1fR0bUg/TzawGzjrdjI/AAAAAAAAAm8/FDpF3B1LPm8/s1600/agentrediness1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="227" src="http://3.bp.blogspot.com/-TzQn1fR0bUg/TzawGzjrdjI/AAAAAAAAAm8/FDpF3B1LPm8/s320/agentrediness1.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-7_QbNtDcdlI/TzawKn4EqVI/AAAAAAAAAnI/exaRWpABwGc/s1600/agentredinessjob.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="227" src="http://3.bp.blogspot.com/-7_QbNtDcdlI/TzawKn4EqVI/AAAAAAAAAnI/exaRWpABwGc/s320/agentredinessjob.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;At the end of agent readiness check configuration and deployment status will be success.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-qn6mB37nIGM/TzawS8qcPOI/AAAAAAAAAnU/n_4tMlW5omM/s1600/verifyhealthreport1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="18" src="http://4.bp.blogspot.com/-qn6mB37nIGM/TzawS8qcPOI/AAAAAAAAAnU/n_4tMlW5omM/s320/verifyhealthreport1.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;At the end agent readiness check Health Check Status column has "report pending verification". This requires manually verifying it is alright to proceed. Click on view and verify health check report button and inspect the report and confirm if it is error free.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-o5zhsPLHP1Y/TzaxTlVuQSI/AAAAAAAAAng/T8MXfjTEPNU/s1600/verifyhealthreport2.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="81" src="http://1.bp.blogspot.com/-o5zhsPLHP1Y/TzaxTlVuQSI/AAAAAAAAAng/T8MXfjTEPNU/s320/verifyhealthreport2.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-mTnMnXMTsmQ/TzaxZXn6q1I/AAAAAAAAAns/-pQfvU60ZMI/s1600/verifyhealthreport3.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="84" src="http://4.bp.blogspot.com/-mTnMnXMTsmQ/TzaxZXn6q1I/AAAAAAAAAns/-pQfvU60ZMI/s320/verifyhealthreport3.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;After this agent is ready for the switch.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-5-iOlHLvYIo/TzaxrBZolaI/AAAAAAAAAn4/VgfxHAjN86Y/s1600/switchagent1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="17" src="http://1.bp.blogspot.com/-5-iOlHLvYIo/TzaxrBZolaI/AAAAAAAAAn4/VgfxHAjN86Y/s320/switchagent1.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;This where the down time starts. When switch agent is started the current 11g agent will be stopped and disabled. The 12c new agent will be started but cannot report to 11g OMS until it's upgrade. Therefore until the OMS is upgraded there will be no monitoring. To keep this unmonitored time to a minimum carry out the steps before "switch agent" all the agents. Considering the agents listed in this blog agent on host hpc1 will not be switched until hpc4 and rac1 and rac2 all have completed their agent deployments and health checks. &lt;br /&gt;Agent switch could be done one agent a time or multiple agents at the same time. Below are the screenshots from switching agents on all the RAC nodes at the same time.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-1SRKWzmJlow/TzazLOSCoMI/AAAAAAAAAoE/H35KjH4gxF4/s1600/switchagent2.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="243" src="http://3.bp.blogspot.com/-1SRKWzmJlow/TzazLOSCoMI/AAAAAAAAAoE/H35KjH4gxF4/s320/switchagent2.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-hdM0V1UXNnA/TzazTjGUS-I/AAAAAAAAAoQ/Rr8-J8xvsfw/s1600/switchagentjob.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="174" src="http://3.bp.blogspot.com/-hdM0V1UXNnA/TzazTjGUS-I/AAAAAAAAAoQ/Rr8-J8xvsfw/s320/switchagentjob.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Agent upgrade status after all the agents are switched.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-zl08e2Iq4Lw/Tzazp2SYdmI/AAAAAAAAAoc/Kptw2eTTYY0/s1600/switchagent3.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="174" src="http://4.bp.blogspot.com/-zl08e2Iq4Lw/Tzazp2SYdmI/AAAAAAAAAoc/Kptw2eTTYY0/s320/switchagent3.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;When all the agents are switched to 12c agents and monitoring has effectively halted until OMS is upgraded. Status of the new agent states its up and ready but still unable to communicate with OMS.&lt;br /&gt;&lt;pre&gt;./emctl status agent&lt;br /&gt;Oracle Enterprise Manager 12c Cloud Control 12.1.0.1.0&lt;br /&gt;Copyright (c) 1996, 2011 Oracle Corporation.  All rights reserved.&lt;br /&gt;---------------------------------------------------------------&lt;br /&gt;Agent Version     : 12.1.0.1.0&lt;br /&gt;OMS Version       : (unknown)&lt;br /&gt;Protocol Version  : 12.1.0.1.0&lt;br /&gt;Agent Home        : /opt/app/oracle/grid_agent/agent12g/agent_inst&lt;br /&gt;Agent Binaries    : /opt/app/oracle/grid_agent/agent12g/core/12.1.0.1.0&lt;br /&gt;Agent Process ID  : 4072&lt;br /&gt;Parent Process ID : 3935&lt;br /&gt;Agent URL         : https://rac1.   .net:3872/emd/main&lt;br /&gt;Repository URL    : https://hpc4.   .net:4900/empbs/upload&lt;br /&gt;Started at        : 2012-02-09 16:26:48&lt;br /&gt;Started by user   : oracle&lt;br /&gt;Last Reload       : (none)&lt;br /&gt;&lt;b&gt;Last successful upload                       : (none)&lt;br /&gt;Last attempted upload                        : (none)&lt;/b&gt;&lt;br /&gt;Total Megabytes of XML files uploaded so far : 0&lt;br /&gt;Number of XML files pending upload           : 82&lt;br /&gt;Size of XML files pending upload(MB)         : 0.54&lt;br /&gt;Available disk space on upload filesystem    : 13.59%&lt;br /&gt;Collection Status                            : Collections enabled&lt;br /&gt;Last attempted heartbeat to OMS              : 2012-02-09 16:32:58&lt;br /&gt;&lt;b&gt;Last successful heartbeat to OMS             : (none)&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;---------------------------------------------------------------&lt;br /&gt;Agent is Running and Ready&lt;/pre&gt;To keep the un-monitored time to a minimum begin the OMS upgrade soon after the agent switch. &lt;br /&gt;&lt;br /&gt;&lt;a href="http://asanga-pradeep.blogspot.com/2012/02/upgrading-grid-control-11g-to-12c-2.html"&gt;Part 2 shows the OMS upgrade.&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Useful metalink notes&lt;br /&gt;&lt;br /&gt;Upgrade Advisor: Enterprise Manager 1-System Upgrade from 11.1.0.1 to 12.1.0.1 &lt;b&gt;[ID 328.1]&lt;/b&gt;&lt;br /&gt;12c: Upgrading the 11.1.0.1 Enterprise Manager on Linux x86_64 to 12.1.0.1 with the 1-System Method &lt;b&gt;[ID 1364931.1]&lt;/b&gt;&lt;br /&gt;How to Determine the List of Patch Set Update(PSU) Applied to the Enterprise Manager OMS and Agent Oracle Homes? &lt;b&gt;[ID 1358092.1]&lt;/b&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2414933436751311863-7095061598750620197?l=asanga-pradeep.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/7095061598750620197'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/7095061598750620197'/><link rel='alternate' type='text/html' href='http://asanga-pradeep.blogspot.com/2012/02/upgrading-grid-control-11g-to-12c-1.html' title='Upgrading Grid Control 11g to 12c  - 1'/><author><name>Asanga</name><uri>http://www.blogger.com/profile/06917616787415349832</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_90fhbVRwXDU/TECqZgHU0eI/AAAAAAAAAIo/hwI2BMzwDcI/S220/profile.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-b-BHhPgM_p0/TzaYrQbSFUI/AAAAAAAAAi0/PwUb_isoXLU/s72-c/preupgradeloc.png' height='72' width='72'/></entry><entry><id>tag:blogger.com,1999:blog-2414933436751311863.post-1414248966014483497</id><published>2012-02-09T16:55:00.000-08:00</published><updated>2012-02-09T16:55:33.220-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='kgmgchd1'/><category scheme='http://www.blogger.com/atom/ns#' term='bug'/><category scheme='http://www.blogger.com/atom/ns#' term='ora-600'/><title type='text'>ORA-00600 [kgmgchd1]</title><content type='html'>ORA-00600: internal error code, arguments: [kgmgchd1] appeared on 11.1.0.7 (11.1.0.7.9). &lt;br /&gt;&lt;br /&gt;There are number of bugs related to this 11792492 which also duplicated as bug 6769075.&lt;br /&gt;&lt;br /&gt;Download and apply Patch 6769075.&lt;br /&gt;&lt;br /&gt;ORA-00600 [kgmgchd1] in 11.1.0.7 &lt;b&gt;[ID 1333584.1]&lt;/b&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2414933436751311863-1414248966014483497?l=asanga-pradeep.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/1414248966014483497'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/1414248966014483497'/><link rel='alternate' type='text/html' href='http://asanga-pradeep.blogspot.com/2012/02/ora-00600-kgmgchd1.html' title='ORA-00600 [kgmgchd1]'/><author><name>Asanga</name><uri>http://www.blogger.com/profile/06917616787415349832</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_90fhbVRwXDU/TECqZgHU0eI/AAAAAAAAAIo/hwI2BMzwDcI/S220/profile.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-2414933436751311863.post-3923721731755547451</id><published>2012-02-09T04:44:00.000-08:00</published><updated>2012-02-09T04:44:37.601-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='grid control'/><category scheme='http://www.blogger.com/atom/ns#' term='remove'/><category scheme='http://www.blogger.com/atom/ns#' term='agent'/><title type='text'>Deinstalling Cluster base Grid Control Agents</title><content type='html'>To remove grid control agents from a clustered configuration or standalone database use&lt;pre&gt;&lt;b&gt;/opt/app/oracle/grid_agent/agent11g/oui/bin/runInstaller -deinstall -silent "REMOVE_HOMES={/opt/app/oracle/grid_agent/agent11g}" -removeallfiles&lt;/b&gt;&lt;br /&gt;Starting Oracle Universal Installer...&lt;br /&gt;&lt;br /&gt;Checking swap space: must be greater than 500 MB.   Actual 4094 MB    Passed&lt;br /&gt;Preparing to launch Oracle Universal Installer from /tmp/OraInstall2012-02-09_12-46-19PM. Please wait ...[oracle@rac1 bin]$ Oracle Universal Installer, Version 11.1.0.8.0 Production&lt;br /&gt;Copyright (C) 1999, 2010, Oracle. All rights reserved.&lt;br /&gt;&lt;br /&gt;Starting deinstall&lt;br /&gt;&lt;br /&gt;Deinstall in progress (Thursday, February 9, 2012 12:47:08 PM GMT)&lt;br /&gt;Configuration assistant "Agent Deinstall Assistant" succeeded&lt;br /&gt;Configuration assistant "Oracle Configuration Manager Deinstall" succeeded&lt;br /&gt;............................................................... 100% Done.&lt;br /&gt;&lt;br /&gt;Deinstall successful&lt;br /&gt;Removing Cluster Oracle homes&lt;/pre&gt;This would remove agent installations from all the nodes in the cluster.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2414933436751311863-3923721731755547451?l=asanga-pradeep.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/3923721731755547451'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/3923721731755547451'/><link rel='alternate' type='text/html' href='http://asanga-pradeep.blogspot.com/2012/02/deinstalling-cluster-base-grid-control.html' title='Deinstalling Cluster base Grid Control Agents'/><author><name>Asanga</name><uri>http://www.blogger.com/profile/06917616787415349832</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_90fhbVRwXDU/TECqZgHU0eI/AAAAAAAAAIo/hwI2BMzwDcI/S220/profile.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-2414933436751311863.post-4232657244384245666</id><published>2012-01-27T11:42:00.000-08:00</published><updated>2012-01-27T11:42:37.826-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='security'/><title type='text'>Linux Root Exploit CVE-2012-0056</title><content type='html'>A Linux vulnerability has been identified which allows a user to gain root user privilege. This is caused by "&lt;i&gt;failure of the Linux kernel to properly restrict access to the "/proc//mem" file&lt;/i&gt;". &lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.computerworld.com/s/article/9223675/Linux_vendors_rush_to_patch_privilege_escalation_flaw_after_root_exploits_emerge?taxonomyId=85"&gt;Computer world has a detail article&lt;/a&gt; about this (Same article available on &lt;a href="http://www.cio.com/article/698664/Linux_Vendors_Rush_to_Patch_Privilege_Escalation_Flaw_After_Root_Exploits_Emerge?source=CIONLE_nlt_infosec_2012-01-27"&gt;CIO&lt;/a&gt;).&lt;br /&gt;&lt;br /&gt;Redhat has a &lt;a href="https://access.redhat.com/kb/docs/DOC-69129"&gt;support note&lt;/a&gt; regarding this vulnerability and a &lt;a href="https://bugzilla.redhat.com/attachment.cgi?id=556461"&gt;test code&lt;/a&gt; to check if the system is vulnerable.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2414933436751311863-4232657244384245666?l=asanga-pradeep.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/4232657244384245666'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/4232657244384245666'/><link rel='alternate' type='text/html' href='http://asanga-pradeep.blogspot.com/2012/01/linux-root-exploit-cve-2012-0056.html' title='Linux Root Exploit CVE-2012-0056'/><author><name>Asanga</name><uri>http://www.blogger.com/profile/06917616787415349832</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_90fhbVRwXDU/TECqZgHU0eI/AAAAAAAAAIo/hwI2BMzwDcI/S220/profile.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-2414933436751311863.post-3604431920961395358</id><published>2012-01-27T11:20:00.000-08:00</published><updated>2012-01-27T11:24:31.620-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='partition'/><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='virtualbox'/><category scheme='http://www.blogger.com/atom/ns#' term='resize'/><category scheme='http://www.blogger.com/atom/ns#' term='GParted'/><title type='text'>Resizing VirtualBox and Linux Partitions with GParted</title><content type='html'>VirtualBox 4 has an &lt;a href="http://www.virtualbox.org/manual/ch08.html#vboxmanage-modifyvdi"&gt;option to modify&lt;/a&gt; the logical size of the virtual disk after it's been created without affecting the physical size. The size specified in this option is the new overall size of the disk not the increment. If the current size is 100MB and resizing to 200MB would make the disk 200MB not 300MB (100 + 200). Once the size is increased it cannot be decreased (yet). &lt;br /&gt;&lt;br /&gt;Current size of the disk&lt;br /&gt;&lt;pre&gt;-rw------- 1 root root  18G Jan 27 16:43 rac4.vdi&lt;/pre&gt;The size of disk seen by the OS using this virutal disk&lt;br /&gt;&lt;pre&gt;Disk /dev/sda: &lt;b&gt;21.4 GB, 21474836480 bytes&lt;/b&gt;&lt;br /&gt;255 heads, 63 sectors/track, 2610 cylinders&lt;br /&gt;Units = cylinders of 16065 * 512 = 8225280 bytes&lt;/pre&gt;Size of the partitions&lt;br /&gt;&lt;pre&gt;Filesystem            Size  Used Avail Use% Mounted on&lt;br /&gt;&lt;b&gt;/dev/sda3              16G   13G  1.8G  88% /&lt;/b&gt;&lt;br /&gt;/dev/sda1              99M   12M   83M  13% /boot&lt;br /&gt;tmpfs                1006M     0 1006M   0% /dev/shm&lt;/pre&gt;Increase the size with modifyhd option&lt;br /&gt;&lt;pre&gt;VBoxManage modifyhd rac4.vdi --resize 40960&lt;br /&gt;0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%&lt;/pre&gt;Physical size is unaffected. This will grow as the space is used.&lt;br /&gt;&lt;pre&gt;-rw------- 1 root root  18G Jan 27 16:45 rac4.vdi&lt;/pre&gt;But the size of the disk seen by the OS has changed&lt;br /&gt;&lt;pre&gt;&lt;b&gt;Disk /dev/sda: 42.9 GB, 42949672960 bytes&lt;/b&gt;&lt;br /&gt;255 heads, 63 sectors/track, 5221 cylinders&lt;br /&gt;Units = cylinders of 16065 * 512 = 8225280 bytes&lt;/pre&gt;The additional space is unallocated and linux partitions are not affected after this increase.&lt;br /&gt;&lt;pre&gt;Filesystem            Size  Used Avail Use% Mounted on&lt;br /&gt;&lt;b&gt;/dev/sda3              16G   13G  1.8G  88% /&lt;/b&gt;&lt;br /&gt;/dev/sda1              99M   12M   83M  13% /boot&lt;br /&gt;tmpfs                1006M     0 1006M   0% /dev/shm&lt;/pre&gt;Using the &lt;a href="http://gparted.sourceforge.net/livecd.php"&gt;Gnome Partition Editor (GParted)&lt;/a&gt; it is possible to resize the linux partition and allocate the unused space to it effectively increasing the size of it. &lt;br /&gt;&lt;br /&gt;Download the Live CD iso of gparted and boot the virtual box server from it.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-LHvI-rtGVuw/TyL0jkOM6JI/AAAAAAAAAgY/llRVRKEAVaA/s1600/1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="274" src="http://3.bp.blogspot.com/-LHvI-rtGVuw/TyL0jkOM6JI/AAAAAAAAAgY/llRVRKEAVaA/s320/1.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Select the default option and complete the startup.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-7vs4IWmnHsg/TyL1V7Hr0xI/AAAAAAAAAg8/mBGSvw0APks/s1600/2.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="206" src="http://3.bp.blogspot.com/-7vs4IWmnHsg/TyL1V7Hr0xI/AAAAAAAAAg8/mBGSvw0APks/s320/2.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-SQFfvmfDTvg/TyL05XLBH-I/AAAAAAAAAgw/1P5SlaCltjo/s1600/3.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="208" src="http://3.bp.blogspot.com/-SQFfvmfDTvg/TyL05XLBH-I/AAAAAAAAAgw/1P5SlaCltjo/s320/3.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-uSHqeapwAdw/TyL1fck5lGI/AAAAAAAAAhI/8td0qDc0Kkw/s1600/4.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="208" src="http://3.bp.blogspot.com/-uSHqeapwAdw/TyL1fck5lGI/AAAAAAAAAhI/8td0qDc0Kkw/s320/4.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;GParted shows the size of current partitions (15.9 GB) and the unallocated space (20 GB).&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-wzjZJIwgUkQ/TyL1yWupX7I/AAAAAAAAAhU/YjhYdvUN66w/s1600/5.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="214" src="http://3.bp.blogspot.com/-wzjZJIwgUkQ/TyL1yWupX7I/AAAAAAAAAhU/YjhYdvUN66w/s320/5.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Right click on the partition to resize and select resize/move item from the popup menu.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-rx_szPa1YH4/TyL2ElSqytI/AAAAAAAAAhg/g06zgYLnamw/s1600/6.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="214" src="http://1.bp.blogspot.com/-rx_szPa1YH4/TyL2ElSqytI/AAAAAAAAAhg/g06zgYLnamw/s320/6.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Resize the partition by either dragging the highlighted box or adjusting the numerical spinners.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-KlLdfOsjjHo/TyL2rHBwcoI/AAAAAAAAAhs/4Mnn3tWrpoU/s1600/7.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="214" src="http://1.bp.blogspot.com/-KlLdfOsjjHo/TyL2rHBwcoI/AAAAAAAAAhs/4Mnn3tWrpoU/s320/7.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-62WC2kJxD-4/TyL2vgQQLcI/AAAAAAAAAh4/9NjuQm5jWdg/s1600/8.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="216" src="http://3.bp.blogspot.com/-62WC2kJxD-4/TyL2vgQQLcI/AAAAAAAAAh4/9NjuQm5jWdg/s320/8.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-KeU4XGeIjkc/TyL3gO_FRfI/AAAAAAAAAiE/bb_PWA6RzyA/s1600/9.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="215" src="http://2.bp.blogspot.com/-KeU4XGeIjkc/TyL3gO_FRfI/AAAAAAAAAiE/bb_PWA6RzyA/s320/9.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Click apply to complete the resizing.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-G1L8oBXXboE/TyL3uSRBBfI/AAAAAAAAAiQ/um4XGTN7UEg/s1600/10.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="215" src="http://3.bp.blogspot.com/-G1L8oBXXboE/TyL3uSRBBfI/AAAAAAAAAiQ/um4XGTN7UEg/s320/10.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-purptgP281Q/TyL30o2l3DI/AAAAAAAAAic/2n8KQOsljK0/s1600/11.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="214" src="http://4.bp.blogspot.com/-purptgP281Q/TyL30o2l3DI/AAAAAAAAAic/2n8KQOsljK0/s320/11.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-YbcWWvZ0N_k/TyL33oe0tTI/AAAAAAAAAio/SIoY8vLU6xY/s1600/12.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="215" src="http://3.bp.blogspot.com/-YbcWWvZ0N_k/TyL33oe0tTI/AAAAAAAAAio/SIoY8vLU6xY/s320/12.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Restart the virtual server and see the size of linux partition changed.&lt;br /&gt;&lt;pre&gt;Filesystem            Size  Used Avail Use% Mounted on&lt;br /&gt;&lt;b&gt;/dev/sda3              35G   13G   21G  39% /&lt;/b&gt;&lt;br /&gt;/dev/sda1              99M   12M   83M  13% /boot&lt;br /&gt;tmpfs                1006M     0 1006M   0% /dev/shm&lt;/pre&gt;Size of the new partition is 35 GB (15 GB previously allocated and 20 GB added with GParted).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2414933436751311863-3604431920961395358?l=asanga-pradeep.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/3604431920961395358'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/3604431920961395358'/><link rel='alternate' type='text/html' href='http://asanga-pradeep.blogspot.com/2012/01/resizing-virtualbox-and-linux.html' title='Resizing VirtualBox and Linux Partitions with GParted'/><author><name>Asanga</name><uri>http://www.blogger.com/profile/06917616787415349832</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_90fhbVRwXDU/TECqZgHU0eI/AAAAAAAAAIo/hwI2BMzwDcI/S220/profile.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/-LHvI-rtGVuw/TyL0jkOM6JI/AAAAAAAAAgY/llRVRKEAVaA/s72-c/1.png' height='72' width='72'/></entry><entry><id>tag:blogger.com,1999:blog-2414933436751311863.post-1064852497790472194</id><published>2012-01-27T04:39:00.000-08:00</published><updated>2012-01-27T04:39:12.295-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='connection leak'/><category scheme='http://www.blogger.com/atom/ns#' term='JDBC'/><title type='text'>Connection Leak Detection on Applications Servers</title><content type='html'>Connection leak detection on a 3-tier application servers present a challenge as the connecting database user name would be same for all the connections. Therefore when a connection leak happens unless the usecase is known, or if it's a something recently started then leak is probably due to some new deployment it's diffcult to detect from the database site. One way is finding the number of session with the same sqlid for previous sql&lt;pre&gt;select inst_id,machine,username, prev_sql_id,count(*) from gv$session where username='ASANGA' group by inst_id,machine,username, prev_sql_id order by 1,2,3,4&lt;/pre&gt;SQL id with the highest count is a suspect but may not always be the case.&lt;br /&gt;&lt;br /&gt;Use of logon triggers would be of no use if a connection pool is used as when connections are handed out from the pool logon trigger doesn't fire.&lt;br /&gt;&lt;br /&gt;To identify the exact point in the code where the leak happening is to populate the CLIENT_INFO column with line and class name before handing over the connection. One way this could be accomplished is by overrding the getConnection method.&lt;pre&gt;Throwable throwable = new Throwable();&lt;br /&gt;StackTraceElement[] stackTraceElements = throwable.getStackTrace();&lt;br /&gt;StackTraceElement element = stackTraceElements[stackTraceElements.length &gt; 0 ? 1 : 0];&lt;br /&gt;CallableStatement clm = connection.prepareCall("begin DBMS_APPLICATION_INFO.set_client_info(?); end;");&lt;br /&gt;clm.setString(1, element.getClassName() + " : " + element.getMethodName() + " : " + element.getLineNumber());&lt;br /&gt;clm.execute();&lt;br /&gt;clm.close();&lt;/pre&gt;The above code snippet will populate the CLIENT_INFO column with the class name, method name and line number.Quering the v$session will show these values&lt;pre&gt;select username,client_info from v$session where username is not null;&lt;br /&gt;&lt;br /&gt;USERNAME CLIENT_INFO&lt;br /&gt;-------- ---------------------------&lt;br /&gt;ASANGA   com.Test : main : 86&lt;br /&gt;ASANGA   com.Test : main : 79&lt;br /&gt;ASANGA   com.Test : main : 79&lt;br /&gt;ASANGA   com.Test : main : 79&lt;br /&gt;ASANGA   com.Test : main : 85&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2414933436751311863-1064852497790472194?l=asanga-pradeep.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/1064852497790472194'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/1064852497790472194'/><link rel='alternate' type='text/html' href='http://asanga-pradeep.blogspot.com/2012/01/connection-leak-detection-on.html' title='Connection Leak Detection on Applications Servers'/><author><name>Asanga</name><uri>http://www.blogger.com/profile/06917616787415349832</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_90fhbVRwXDU/TECqZgHU0eI/AAAAAAAAAIo/hwI2BMzwDcI/S220/profile.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-2414933436751311863.post-8082358489467937455</id><published>2012-01-19T03:04:00.000-08:00</published><updated>2012-01-24T08:28:25.549-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='11gR2'/><category scheme='http://www.blogger.com/atom/ns#' term='10g'/><category scheme='http://www.blogger.com/atom/ns#' term='PSU'/><category scheme='http://www.blogger.com/atom/ns#' term='SCN'/><category scheme='http://www.blogger.com/atom/ns#' term='11gR1'/><category scheme='http://www.blogger.com/atom/ns#' term='oracle'/><title type='text'>2012 January PSU and the growth in the System Change Number (SCN) bug.</title><content type='html'>With 2012 January PSU/CPU Oracle has patched the SCN growth bug, the case when a database is having a high rate change for SCN. &lt;a href="http://www.computerworld.com/s/article/9223506/Fundamental_Oracle_flaw_revealed?taxonomyId=18"&gt;Computer world has an comprehensive article&lt;/a&gt; about this issue.&lt;br /&gt;&lt;br /&gt;Following metalink notes provides means to test if the database is affected by this bug.&lt;br /&gt;Information on the System Change Number (SCN) and how it is used in the Oracle Database &lt;b&gt;[ID 1376995.1]&lt;/b&gt;&lt;br /&gt;Installing, Executing and Interpreting output from the "scnhealthcheck.sql" script &lt;b&gt;[ID 1393363.1]&lt;/b&gt;&lt;br /&gt;Evidence to collect when reporting "high SCN rate" issues to Oracle Support &lt;b&gt;[ID 1388639.1]&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;scnhealthcheck.sql mentioned in &lt;b&gt;1393363.1&lt;/b&gt; could be used to verify if the database is affected.&lt;br /&gt;&lt;pre&gt;SQL&amp;gt; @scnhealthcheck.sql&lt;br /&gt;--------------------------------------------------------------&lt;br /&gt;ScnHealthCheck&lt;br /&gt;--------------------------------------------------------------&lt;br /&gt;Current Date: 2012/01/19 10:39:57&lt;br /&gt;Current SCN:  4165911&lt;br /&gt;Version:      11.2.0.3.0&lt;br /&gt;--------------------------------------------------------------&lt;br /&gt;Result: A - SCN Headroom is good&lt;br /&gt;Apply the latest recommended patches&lt;br /&gt;based on your maintenance schedule&lt;br /&gt;For further information review MOS document id 1393363.1&lt;br /&gt;--------------------------------------------------------------&lt;/pre&gt;Recommendations are if the output is Result: A - SCN Headroom is good then system SCN health is good apply the recommended patches (756671.1) during the normal maintenance schedule.&lt;br /&gt;&lt;br /&gt;If the output is Result: B - SCN Headroom is low then apply the recommended patches immediately outside the normal maintenance schedule and continue to monitor the SCN health. Once patched headroom will increase overtime (could take days or weeks) to script to report Result: A - SCN Headroom is good.&lt;br /&gt;&lt;br /&gt;If the output is Result: C - SCN Headroom is low then apply the recommended patches immediately and collect required information listed on 1388639.1 and raise a SR so additional advice could be given.&lt;br /&gt;&lt;br /&gt;With this PSU a new &lt;a href="http://asanga-pradeep.blogspot.com/2010/08/checking-hidden-parameters.html"&gt;hidden parameter&lt;/a&gt; called "_external_scn_rejection_threshold_hours" has been introduced in connection with this bug. Once the patch is applied Oracle recommend setting this to 24 on 10g and 11gR1 systems. Value of _external_scn_rejection_threshold_hours after patched applied on 11gR1 (11.1.0.7)&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-eASqBsxnQhQ/Txf_dzTRSbI/AAAAAAAAAgM/25wYZMDOSgU/s1600/11gr1.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="174" src="http://2.bp.blogspot.com/-eASqBsxnQhQ/Txf_dzTRSbI/AAAAAAAAAgM/25wYZMDOSgU/s320/11gr1.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;To set the value to 24&lt;br /&gt;&lt;pre&gt;alter system set "_external_scn_rejection_threshold_hours" = 24 &lt;br /&gt;   comment='Set threshold on dd/mon/yyyy - See MOS Document 1393363.1' &lt;br /&gt;   scope=spfile ;&lt;/pre&gt;On 11gR2 systems this set to 24 by default once the patch is applied.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-uowxsGGAuow/Txf-uHg20hI/AAAAAAAAAgA/SJUJh8hXLTk/s1600/Untitled.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="174" src="http://4.bp.blogspot.com/-uowxsGGAuow/Txf-uHg20hI/AAAAAAAAAgA/SJUJh8hXLTk/s320/Untitled.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;Apart from the the test cases mentioned in 1376995.1 &lt;a href="http://www.ioug.org/"&gt;IOUG&lt;/a&gt; newsletter mentioned  another "&lt;i&gt;way to test is to look at the backups with a restore process to validate SCN values and recoverability which is part of a best practice for database administrators. With these tests and test plans for applying the Patch Set Updates (PSU) or traditional Critical Patch Update patches, the vulnerabilities can be validated with appropriate fixes of the environment.&lt;/i&gt;"&lt;br /&gt;&lt;br /&gt;More clarifications on the issue from &lt;a href="http://www.computerworld.com/s/article/9223647/The_Oracle_flaw_Clarifications_and_more_information?taxonomyId=9"&gt;computer world&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2414933436751311863-8082358489467937455?l=asanga-pradeep.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/8082358489467937455'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/8082358489467937455'/><link rel='alternate' type='text/html' href='http://asanga-pradeep.blogspot.com/2012/01/2012-january-psu-and-growth-in-system.html' title='2012 January PSU and the growth in the System Change Number (SCN) bug.'/><author><name>Asanga</name><uri>http://www.blogger.com/profile/06917616787415349832</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_90fhbVRwXDU/TECqZgHU0eI/AAAAAAAAAIo/hwI2BMzwDcI/S220/profile.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/-eASqBsxnQhQ/Txf_dzTRSbI/AAAAAAAAAgM/25wYZMDOSgU/s72-c/11gr1.jpg' height='72' width='72'/></entry><entry><id>tag:blogger.com,1999:blog-2414933436751311863.post-8967081321431183695</id><published>2012-01-18T05:39:00.000-08:00</published><updated>2012-02-02T08:47:55.377-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='expdp'/><category scheme='http://www.blogger.com/atom/ns#' term='olap'/><category scheme='http://www.blogger.com/atom/ns#' term='impdp'/><category scheme='http://www.blogger.com/atom/ns#' term='dbms_cube_exp'/><category scheme='http://www.blogger.com/atom/ns#' term='11gR1'/><category scheme='http://www.blogger.com/atom/ns#' term='oracle'/><title type='text'>dbms_cube_exp.schema_info_imp_beg error while importing with impdp</title><content type='html'>Following error came up when doing a schema import from a 11gR1 standard edition database to another 11gR1 standard edition database.Beginning of import&lt;br /&gt;&lt;pre&gt;ORA-39083: Object type PROCACT_SCHEMA failed to create with error:&lt;br /&gt;ORA-12663: Services required by client not available on the server&lt;br /&gt;ORA-36961: Oracle OLAP is not available.&lt;br /&gt;Failing sql is:&lt;br /&gt;BEGIN &lt;br /&gt;dbms_cube_exp.schema_info_imp_beg(0, '11.01.00.00.00');&lt;br /&gt;dbms_cube_exp.schema_info_imp_end(0, '11.01.00.00.00');COMMIT; END;&lt;/pre&gt;and at the end &lt;br /&gt;&lt;pre&gt;ORA-39083: Object type PROCACT_SCHEMA failed to create with error:&lt;br /&gt;ORA-12663: Services required by client not available on the server&lt;br /&gt;ORA-36961: Oracle OLAP is not available.&lt;br /&gt;Failing sql is:&lt;br /&gt;BEGIN &lt;br /&gt;dbms_cube_exp.schema_info_imp_beg(1, '11.01.00.00.00');&lt;br /&gt;dbms_cube_exp.schema_info_imp_loop(1, '11.01.00.00.00', '&amp;amp;lt;?xml version="1.0" encoding="UTF-16"?&amp;gt;&lt;br /&gt;&amp;amp;lt;Metadata&lt;br /&gt;Version="1.1"&lt;br /&gt;CreateOnly="True"&amp;gt;&lt;br /&gt;&amp;amp;lt;/Metadata&amp;gt;');&lt;br /&gt;dbms_cube_exp.schema_info_imp_end(1, '11.01.00.00.00');COMMIT; END; &lt;/pre&gt;The import completed without any further errors and schema objects were available on the imported database. Metalink note DataPump Import (IMPDP) Receives The Errors ORA-39083 PLS-201 identifier DBMS_CUBE_EXP.SCHEMA_INFO_IMP_BEG &lt;b&gt;[ID 789549.1]&lt;/b&gt; mentions that this is a ignorable error. &lt;br /&gt;&lt;br /&gt;OLAP is not an option available with standard edition database but it gets added in an invalid state when a database is created using one of the provided database templates (transaction processing database) with oracle. Although option get installed it remains in a invalid state.&lt;br /&gt;Metalink note "How To Find Out If OLAP Is Being Used And How To Remove OLAP &lt;b&gt;[Doc ID 739032.1]&lt;/b&gt;" could be used to verify if olap is installed and used. (being used in a standard edition system is unlikely). The remove steps listed in this metalink note cannot be run on standard edition as those files are not installed with standard edition. &lt;br /&gt;&lt;br /&gt;There's another metalink that list "How to Remove OLAP From the Standard Edition database. &lt;b&gt;[ID 1362752.1]&lt;/b&gt;" which is by dropping the OLAPSYS&amp;nbsp; user and running utlrp afterwards. This will remove the OLAP Catalog option from the database but OLAP Analytic Workspace and Oracle OLAP API  will remain in an invalid state.&lt;br /&gt;&lt;pre&gt;SQL&amp;gt; select comp_id, comp_name, version, status&lt;br /&gt;  2         from dba_registry&lt;br /&gt;  3         where comp_name like '%OLAP%';&lt;br /&gt;&lt;br /&gt;COMP_ COMP_NAME                 VERSION    STATUS&lt;br /&gt;----- ------------------------- ---------- --------&lt;br /&gt;APS   OLAP Analytic Workspace   11.1.0.7.0 INVALID&lt;br /&gt;XOQ   Oracle OLAP API           11.1.0.7.0 INVALID&lt;/pre&gt;Metalink note Remove Invalid OLAP Objects From SYS And OLAPSYS Schemas &lt;b&gt;[ID 565773.1]&lt;/b&gt; could be used to resolve any invalid objects issues after the removal of olap catalog.&lt;br /&gt;&lt;br /&gt;SR has been raised to find out ways to remove these options from a standard edition database.&lt;br /&gt;&lt;br /&gt;Useful metalink notes&lt;br /&gt;How To Remove or De-activate OLAP After Migrating From 9i To 10g or 11g &lt;b&gt;[ID 467643.1]&lt;/b&gt;&lt;br /&gt;ORA-39127 SYS.DBMS_CUBE_EXP.INSTANCE_EXTENDED_INFO_EXP ORA-44002 On Expdp After Upgrade To 11.2.0.2 &lt;b&gt;[ID 1353491.1]&lt;/b&gt;&lt;br /&gt;How To Find Out If OLAP Is Being Used And How To Remove OLAP &lt;b&gt;[Doc ID 739032.1]&lt;/b&gt;&lt;br /&gt;How to Remove OLAP From the Standard Edition database. &lt;b&gt;[ID 1362752.1]&lt;/b&gt;&lt;br /&gt;Remove Invalid OLAP Objects From SYS And OLAPSYS Schemas &lt;b&gt;[ID 565773.1]&lt;/b&gt;&lt;br /&gt;How To Remove Or To Reinstall The OLAP Option To 10g And 11g &lt;b&gt;[ID 332351.1]&lt;/b&gt;&lt;br /&gt;DataPump Import(IMPDP) Receives The Errors ORA-39083 PLS-201 identifier DBMS_CUBE_EXP.SCHEMA_INFO_IMP_BEG &lt;b&gt;[ID 789549.1]&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size: large;"&gt;Workaround&lt;/span&gt;&lt;br /&gt;First of all it must be &lt;b&gt;strenuously stressed&lt;/b&gt; that this workaround is &lt;b&gt;not an official oracle supported one&lt;/b&gt; (yet! maybe!). &lt;br /&gt;&lt;br /&gt;Copied the olap folder ($ORACLE_HOME/olap) from a enterprise installation into standard edition home and ran the remove scripts mentioned in &lt;b&gt;Doc ID 739032.1&lt;/b&gt;.&lt;br /&gt;&lt;pre&gt;@?/olap/admin/catnoamd.sql&lt;br /&gt;@?/olap/admin/olapidrp.plb&lt;br /&gt;@?/olap/admin/catnoaps.sql&lt;br /&gt;@?/olap/admin/catnoxoq.sql&lt;/pre&gt;Afterwards ran @?/rdbms/admin/utlrp and execution didn't show any errors. But three sys object related OLAP came as invalid&lt;br /&gt;&lt;pre&gt;SQL&amp;gt; select object_name,object_type from dba_objects where owner='SYS' and status &amp;lt;&amp;gt; 'VALID';&lt;br /&gt;&lt;br /&gt;OBJECT_NAME              OBJECT_TYPE&lt;br /&gt;------------             -------------&lt;br /&gt;INTERACTIONEXECUTE        FUNCTION&lt;br /&gt;XOQ_VALIDATE              PROCEDURE&lt;br /&gt;CWM2_OLAP_INSTALLER       PACKAGE BODY&lt;/pre&gt;Dropped them and ran utlrp again still no errors. The OLAP option that remained invalid in the dba_registry is now shown as removed.&lt;br /&gt;&lt;pre&gt;SQL&amp;gt; select comp_id, comp_name, version, status&lt;br /&gt;  2         from dba_registry&lt;br /&gt;  3         where comp_name like '%OLAP%';&lt;br /&gt;&lt;br /&gt;COMP_ COMP_NAME                 VERSION    STATUS&lt;br /&gt;----- ------------------------- ---------- --------&lt;br /&gt;APS   OLAP Analytic Workspace   11.1.0.7.0 REMOVED&lt;br /&gt;XOQ   Oracle OLAP API           11.1.0.7.0 REMOVED&lt;/pre&gt;&lt;br /&gt;&lt;span style="font-size: large;"&gt;Update 02 February 2012&lt;/span&gt;&lt;br /&gt;Outcome from the SR was these options were never intended to be in SE (Standard Edition) but could get in through imp and using the template that has some EE (Enterprise Edition) components (was the case here). So there's no "official" way to remove these components from SE and require a custom approach since the script provided to remove these components from EE are not even installed on SE. Therefore it wouldn't be a issue if those scripts are copied from EE to SE to remove the unsupported components.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2414933436751311863-8967081321431183695?l=asanga-pradeep.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/8967081321431183695'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/8967081321431183695'/><link rel='alternate' type='text/html' href='http://asanga-pradeep.blogspot.com/2012/01/dbmscubeexpschemainfoimpbeg-error-while.html' title='dbms_cube_exp.schema_info_imp_beg error while importing with impdp'/><author><name>Asanga</name><uri>http://www.blogger.com/profile/06917616787415349832</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_90fhbVRwXDU/TECqZgHU0eI/AAAAAAAAAIo/hwI2BMzwDcI/S220/profile.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-2414933436751311863.post-1184580466689778704</id><published>2012-01-18T05:12:00.000-08:00</published><updated>2012-01-18T05:12:52.586-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='xml'/><category scheme='http://www.blogger.com/atom/ns#' term='error'/><category scheme='http://www.blogger.com/atom/ns#' term='opatch'/><category scheme='http://www.blogger.com/atom/ns#' term='XML-20108'/><category scheme='http://www.blogger.com/atom/ns#' term='oracle'/><title type='text'>Running Opatch throws up org.xml.sax.SAXParseException: : XML-20108: (Fatal Error) Start of root element expected</title><content type='html'>The server was hosting multiple Oracle homes from 10gR2, 11gR1 and 11gR2. Primarily used for testing PSU patch before applying to production system. There hasn't been any new installation of Oracle homes and inventory has been without any errors. &lt;br /&gt;&lt;br /&gt;Trying to apply the PSU Jan threw up the following error. &lt;br /&gt;&lt;pre&gt;Oracle Interim Patch Installer version 11.2.0.1.9&lt;br /&gt;Copyright (c) 2011, Oracle Corporation.  All rights reserved.&lt;br /&gt;&lt;br /&gt;Oracle Home       : /opt/app/oracle/product/11.2.0/ent11.2.0.3&lt;br /&gt;Central Inventory : /opt/app/oraInventory&lt;br /&gt;   from           : /opt/app/oracle/product/11.2.0/ent11.2.0.3/oraInst.loc&lt;br /&gt;OPatch version    : 11.2.0.1.9&lt;br /&gt;OUI version       : 11.2.0.3.0&lt;br /&gt;Log file location : /opt/app/oracle/product/11.2.0/ent11.2.0.3/cfgtoollogs/opatch/opatch2012-01-18_12-16-37PM.log&lt;br /&gt;&lt;br /&gt;org.xml.sax.SAXParseException: &lt;line 1,="" 1="" column=""&gt;: XML-20108: (Fatal Error) Start of root element expected.&lt;br /&gt;        at oracle.xml.parser.v2.XMLError.flushErrorHandler(XMLError.java:415)&lt;br /&gt;        at oracle.xml.parser.v2.XMLError.flushErrors1(XMLError.java:284)&lt;br /&gt;        at oracle.xml.parser.v2.NonValidatingParser.parseRootElement(NonValidatingParser.java:331)&lt;br /&gt;        at oracle.xml.parser.v2.NonValidatingParser.parseDocument(NonValidatingParser.java:293)&lt;br /&gt;        at oracle.xml.parser.v2.XMLParser.parse(XMLParser.java:209)&lt;br /&gt;        at oracle.sysman.oii.oiii.OiiiOracleHomeInfoXMLReader.updateHomeProperties(OiiiOracleHomeInfoXMLReader.java:86)&lt;br /&gt;        at oracle.sysman.oii.oiii.OiiiInstallInventory.updateOracleHomesProperties(OiiiInstallInventory.java:803)&lt;br /&gt;        at oracle.sysman.oii.oiii.OiiiInstallInventory.updateOracleHomesProperties(OiiiInstallInventory.java:781)&lt;br /&gt;        at oracle.sysman.oii.oiii.OiiiInstallInventory.readHomes(OiiiInstallInventory.java:737)&lt;br /&gt;        at oracle.sysman.oii.oiii.OiiiInstallAreaControl.loadPartialInstallInv(OiiiInstallAreaControl.java:776)&lt;br /&gt;        at oracle.sysman.oii.oiii.OiiiInstallAreaControl.initInstallInv(OiiiInstallAreaControl.java:821)&lt;br /&gt;        at oracle.sysman.oii.oiii.OiiiInstallAreaControl.loadInstallInventory(OiiiInstallAreaControl.java:592)&lt;br /&gt;        at oracle.sysman.oii.oiii.OiiiInstallAreaControl.initAreaControl(OiiiInstallAreaControl.java:1977)&lt;br /&gt;        at oracle.sysman.oii.oiii.OiiiInstallAreaControl.initAreaControl(OiiiInstallAreaControl.java:1930)&lt;br /&gt;        at oracle.sysman.oii.oiic.OiicStandardInventorySession.initSession(OiicStandardInventorySession.java:301)&lt;br /&gt;        at oracle.sysman.oii.oiic.OiicStandardInventorySession.initSession(OiicStandardInventorySession.java:240)&lt;br /&gt;        at oracle.sysman.oii.oiic.OiicStandardInventorySession.initSession(OiicStandardInventorySession.java:189)&lt;br /&gt;        at oracle.opatch.OUIInventorySession.initSession(OUIInventorySession.java:63)&lt;br /&gt;        at oracle.opatch.OUISessionManager.setupSession(OUISessionManager.java:150)&lt;br /&gt;        at oracle.opatch.OUISessionManager.lockCentralInventory(OUISessionManager.java:267)&lt;br /&gt;        at oracle.opatch.OUISessionManager.instantiate(OUISessionManager.java:87)&lt;br /&gt;        at oracle.opatch.OUISessionManager.updateOPatchEnvironment(OUISessionManager.java:661)&lt;br /&gt;        at oracle.opatch.InventorySessionManager.updateOPatchEnvironment(InventorySessionManager.java:91)&lt;br /&gt;        at oracle.opatch.OPatchSession.main(OPatchSession.java:1661)&lt;br /&gt;        at oracle.opatch.OPatch.main(OPatch.java:653)&lt;/line&gt;&lt;/pre&gt;No matter which Oracle home was choosen the same error came up. &lt;br /&gt;&lt;br /&gt;Two metalink notes related to the issue are&lt;br /&gt;OPatch Is Failing With "org.xml.sax.SAXParseException" XML-20108: (Fatal Error) &lt;b&gt;[ID 1365569.1]&lt;/b&gt;&lt;br /&gt;Opatch command throws warning:org.xml.sax.SAXParseException: : XML-20108: (Fatal Error) Start of root element expected. &lt;b&gt;[ID 1344580.1]&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Issue mentioned in the first metalink note isn't the case here as the opatch version matches the oracle home version.&lt;br /&gt;The second one mentions if $ORACLE_HOME/inventory/ContentsXML/oraclehomeproperties.xml file is 0 bytes then this error is shown. But the size of this file in the oracle home wasn't 0 bytes&lt;br /&gt;&lt;pre&gt;ls -l $ORACLE_HOME/inventory/ContentsXML/oraclehomeproperties.xml&lt;br /&gt;-rw-rw---- 1 oracle oinstall 526 Nov 16 14:20 /opt/app/oracle/product/11.2.0/ent11.2.0.3/inventory/ContentsXML/oraclehomeproperties.xml&lt;/pre&gt;It seemed the cause mentioned in the second metalink note is also not the case. But checking all the homes in the server it was found that there was one oracle home (home running 11gR1) which had this file with 0 bytes. There was a cloned copy of this home on which the file wasn't 0 bytes. Copying it into the this oracle home's inventory/ContentsXML resolved this issue. &lt;br /&gt;&lt;br /&gt;Therefore when there are multiple oracle homes in a server and if inventory/ContentsXML/oraclehomeproperties.xml file gets corrupted in at least one of them the opatch will throw the above mentioned XML parse error.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2414933436751311863-1184580466689778704?l=asanga-pradeep.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/1184580466689778704'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/1184580466689778704'/><link rel='alternate' type='text/html' href='http://asanga-pradeep.blogspot.com/2012/01/running-opatch-throws-up.html' title='Running Opatch throws up org.xml.sax.SAXParseException: &lt;Line 1, Column 1&gt;: XML-20108: (Fatal Error) Start of root element expected'/><author><name>Asanga</name><uri>http://www.blogger.com/profile/06917616787415349832</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_90fhbVRwXDU/TECqZgHU0eI/AAAAAAAAAIo/hwI2BMzwDcI/S220/profile.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-2414933436751311863.post-7467862762818026841</id><published>2012-01-17T09:17:00.000-08:00</published><updated>2012-01-17T09:17:55.229-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='index'/><category scheme='http://www.blogger.com/atom/ns#' term='locking'/><category scheme='http://www.blogger.com/atom/ns#' term='bitmap'/><title type='text'>Bitmap Index Locking</title><content type='html'>Bitmap indexes are useful when the cardinality of a column is low and it is required to join multiples of such columns. Primarily designed for used in data warehouse environments where DML activities are infrequent. Bitmap index can introduce performance overheads if used in a OLTP systems where DML activities are frequent. Reason is the way rows are locked to make changes to the bitmap index when a row is changed or inserted into the table.&lt;br /&gt;&lt;br /&gt;This blog is to show these locks in action. Bitmap indexes are only available with Oracle Enterprise Edition.&lt;br /&gt;&lt;br /&gt;Setup the initial environment&lt;br /&gt;&lt;pre&gt;create table y (a number, b varchar2(20));&lt;br /&gt;&lt;br /&gt;begin&lt;br /&gt;    for i in  1 .. 10&lt;br /&gt;    loop&lt;br /&gt;      insert into y values(mod(i,5),dbms_random.string('X',10));&lt;br /&gt;    end loop;&lt;br /&gt;end;&lt;br /&gt;    /&lt;br /&gt;&lt;br /&gt;select DBMS_ROWID.ROWID_OBJECT(rowid) "OBJECT",&lt;br /&gt;       DBMS_ROWID.ROWID_RELATIVE_FNO(rowid) "FILE",&lt;br /&gt;       DBMS_ROWID.ROWID_BLOCK_NUMBER(rowid) "BLOCK",&lt;br /&gt;       DBMS_ROWID.ROWID_ROW_NUMBER(rowid) "ROW", rowid,y.* from y order by 5,6;&lt;br /&gt;    &lt;br /&gt;    OBJECT       FILE      BLOCK        ROW ROWID                       A B&lt;br /&gt;---------- ---------- ---------- ---------- ------------------ ---------- ----------&lt;br /&gt;     93735          4        583          0 AAAW4nAAEAAAAJHAAA          1 1ML8L3NZBE&lt;br /&gt;     93735          4        583          1 AAAW4nAAEAAAAJHAAB          2 E79SCS1B26&lt;br /&gt;     93735          4        583          2 AAAW4nAAEAAAAJHAAC          3 OAMU9H2Y7B&lt;br /&gt;     93735          4        583          3 AAAW4nAAEAAAAJHAAD          4 OAIF1LZZLE&lt;br /&gt;     93735          4        583          4 AAAW4nAAEAAAAJHAAE          0 FU68J1S48B&lt;br /&gt;     93735          4        583          5 AAAW4nAAEAAAAJHAAF          1 7WD1OB3O6T&lt;br /&gt;     93735          4        583          6 AAAW4nAAEAAAAJHAAG          2 FC9UTGS8RY&lt;br /&gt;     93735          4        583          7 AAAW4nAAEAAAAJHAAH          3 7H58F7BEZH&lt;br /&gt;     93735          4        583          8 AAAW4nAAEAAAAJHAAI          4 S9UKCCLM38&lt;br /&gt;     93735          4        583          9 AAAW4nAAEAAAAJHAAJ          0 EEBV89AYHA&lt;br /&gt;&lt;br /&gt;10 rows selected.&lt;br /&gt;&lt;br /&gt;create bitmap index aidx on y(a) compute statistics;&lt;/pre&gt;Values shown for column B will be different replace them accordingly.&lt;br /&gt;&lt;br /&gt;The bitmap index entry would contain the column A as the index key and low rowid and high row id range encompassing all the rows in that bitmap key entry and the bitmap for the specific rowid range. &lt;a href="http://docs.oracle.com/cd/E11882_01/server.112/e25789/indexiot.htm#CBBFJFDD"&gt;See the bitmap index storage section&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;The above bitmap index could be conceptually visualised as&lt;br /&gt;&lt;pre&gt;A       low rowid           high rowid          bitmap&lt;br /&gt;1,  AAAW4nAAEAAAAJHAAA,  AAAW4nAAEAAAAJHAAJ,  1000010000&lt;br /&gt;2,  AAAW4nAAEAAAAJHAAA,  AAAW4nAAEAAAAJHAAJ,  0100001000&lt;br /&gt;3,  AAAW4nAAEAAAAJHAAA,  AAAW4nAAEAAAAJHAAJ,  0010000100&lt;br /&gt;4,  AAAW4nAAEAAAAJHAAA,  AAAW4nAAEAAAAJHAAJ,  0001000010&lt;br /&gt;0,  AAAW4nAAEAAAAJHAAA,  AAAW4nAAEAAAAJHAAJ,  0000100001&lt;/pre&gt;Now to see how locking takes place open two sql plus sessions and set auto commit off on one of them run a DML to change column A value from 1 to 2 for a single row.&lt;br /&gt;&lt;pre&gt;SQL&amp;gt; update y set a = 2 where b  = '1ML8L3NZBE';&lt;br /&gt;&lt;br /&gt;1 row updated.&lt;/pre&gt;As a result of this update two bitmap index entries will lock. Those are the index entry for 1 (to remove bitmap value 1 and set it to 0 for the row) and index entry for 2 (to set bitmap value from 0 to 1 for the row).&lt;br /&gt;&lt;br /&gt;Because of this trying to update column A value from 1 to any other for another row (1 ---&amp;gt; 0,2,3,4) or any other value trying to change to 1 (0,2,3,4 --&amp;gt; 1) from two different sessions will result in session executing in second being blocked and will wait for first session to commit.&lt;br /&gt;&lt;br /&gt;Similarly any other row that try to change its column A value to 2 will also block and wait. That is 0,1,3,4 ---&amp;gt; 2 and 2 ---&amp;gt; 0,1,3,4 will block and wait. &lt;br /&gt;&lt;br /&gt;To test run the following updates from second session. &lt;br /&gt;&lt;pre&gt;-- the other row with 1 on column A will be blocked and wait&lt;br /&gt;--Wait will appear as a enq: TX row lock contention&lt;br /&gt;update y set a = 4 where b = '7WD1OB3O6T'; &lt;br /&gt;&lt;br /&gt;-- row with 0 on column A trying to update to 1 blocked&lt;br /&gt;update y set a = 1 where b = 'EEBV89AYHA';  &lt;br /&gt;&lt;br /&gt;--another row with 2 on column A trying to update blocked and wait&lt;br /&gt;update y set a = 3 where b = 'FC9UTGS8RY'; -- (could have used E79SCS1B26 as well) &lt;br /&gt;&lt;br /&gt;-- row with 0 on column A trying to update to 2 blocked and wait&lt;br /&gt;update y set a = 2 where b = 'EEBV89AYHA'; &lt;/pre&gt;Trying to delete any of the other rows with values 1 (B = 7WD1OB3O6T) or 2 (B = E79SCS1B26 or B = FC9UTGS8RY) will also block and wait. But it is it is possible to insert rows with values 1 or 2 for column A.&lt;br /&gt;&lt;br /&gt;This is why it is considered bad practice to use bitmap indexes on tables with frequent DML activities.&lt;br /&gt;&lt;br /&gt;Rollback the update statement on the first session and execute a insert statement&lt;br /&gt;&lt;pre&gt;insert into y values (1,'ABCDEF');&lt;/pre&gt;now trying to update or delete any row with value 1 on column A will block and wait.&lt;br /&gt;&lt;br /&gt;The above locking will take place as long as low rowid and high rowid  of the rows in questions are the same index entry. If updating row's rowids are in two different index entries then the updates and deletes will go through without blocking. Taking the above example if new index entries are created in the bitmap index (represented by rowid range starting with BBBW) as below&lt;br /&gt;&lt;pre&gt;A       low rowid           high rowid          bitmap&lt;br /&gt;1,  AAAW4nAAEAAAAJHAAA,  AAAW4nAAEAAAAJHAAJ,  1000010000&lt;br /&gt;2,  AAAW4nAAEAAAAJHAAA,  AAAW4nAAEAAAAJHAAJ,  0100001000&lt;br /&gt;3,  AAAW4nAAEAAAAJHAAA,  AAAW4nAAEAAAAJHAAJ,  0010000100&lt;br /&gt;4,  AAAW4nAAEAAAAJHAAA,  AAAW4nAAEAAAAJHAAJ,  0001000010&lt;br /&gt;0,  AAAW4nAAEAAAAJHAAA,  AAAW4nAAEAAAAJHAAJ,  0000100001&lt;br /&gt;1,  BBBW4nAAEAAAAJHAAA,  BBBW4nAAEAAAAJHAAJ,  1000010000&lt;br /&gt;2,  BBBW4nAAEAAAAJHAAA,  BBBW4nAAEAAAAJHAAJ,  0100001000&lt;br /&gt;3,  BBBW4nAAEAAAAJHAAA,  BBBW4nAAEAAAAJHAAJ,  0010000100&lt;br /&gt;4,  BBBW4nAAEAAAAJHAAA,  BBBW4nAAEAAAAJHAAJ,  0001000010&lt;br /&gt;0,  BBBW4nAAEAAAAJHAAA,  BBBW4nAAEAAAAJHAAJ,  0000100001&lt;/pre&gt;then when a row is updated in 1,AAAW4nAAEAAAAJHAAA-AAAW4nAAEAAAAJHAAJ rowid range it is possible to update another row in 1,BBBW4nAAEAAAAJHAAA-BBBW4nAAEAAAAJHAAJ &lt;br /&gt;row id range without being blocked. This could be tested by inserting many more rows to the table which will result in additional index entries being created. Run the following from a different session to the two that is opened&lt;br /&gt;&lt;pre&gt;begin&lt;br /&gt;    for i in  1 .. 90000&lt;br /&gt;    loop&lt;br /&gt;    insert into y values(mod(i,5),dbms_random.string('X',10));&lt;br /&gt;   end loop;&lt;br /&gt;    end;&lt;br /&gt;    /&lt;br /&gt;commit;&lt;br /&gt;&lt;br /&gt;select DBMS_ROWID.ROWID_OBJECT(rowid) "OBJECT",&lt;br /&gt;           DBMS_ROWID.ROWID_RELATIVE_FNO(rowid) "FILE",&lt;br /&gt;           DBMS_ROWID.ROWID_BLOCK_NUMBER(rowid) "BLOCK",&lt;br /&gt;           DBMS_ROWID.ROWID_ROW_NUMBER(rowid) "ROW", rowid,y.* from y where a = 1 order by 5,6;&lt;br /&gt;     &lt;br /&gt;...&lt;br /&gt;...&lt;br /&gt;   OBJECT       FILE      BLOCK        ROW ROWID                       A B&lt;br /&gt;---------- ---------- ---------- ---------- ------------------ ---------- ----------&lt;br /&gt;     93735          4       5375        356 AAAW4nAAEAAABT/AFk          1 PQCAAA3OI7&lt;br /&gt;     93735          4       5375        361 AAAW4nAAEAAABT/AFp          1 6G20GPXCSL&lt;br /&gt;     93735          4       5375        366 AAAW4nAAEAAABT/AFu          1 XH9BDPW8XL&lt;br /&gt;     93735          4       5375        371 AAAW4nAAEAAABT/AFz          1 WFAI39JSNU&lt;br /&gt;     93735          4       5375        376 AAAW4nAAEAAABT/AF4          1 GXE3899NJE&lt;br /&gt;     93735          4       5375        381 AAAW4nAAEAAABT/AF9          1 X8X0I0PMRB&lt;br /&gt;&lt;br /&gt;18002 rows selected.&lt;/pre&gt;Running &lt;br /&gt;&lt;pre&gt;update y set a = 2 where b  ='GXE3899NJE';&lt;/pre&gt;on session 1 and  &lt;br /&gt;&lt;pre&gt;update y set a = 2 where b  ='X8X0I0PMRB';&lt;/pre&gt;on session two will result in session 2 being blocked. It is safe to presume (may not always be the case) those two rowids are in the same range. But&lt;br /&gt;&lt;pre&gt;update y set a = 2 where b  ='GXE3899NJE';&lt;/pre&gt;and &lt;br /&gt;&lt;pre&gt;update y set a = 2 where b  = '1ML8L3NZBE';&lt;/pre&gt;will not block each other presuming these rowids are in different index entries.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2414933436751311863-7467862762818026841?l=asanga-pradeep.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/7467862762818026841'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/7467862762818026841'/><link rel='alternate' type='text/html' href='http://asanga-pradeep.blogspot.com/2012/01/bitmap-index-locking.html' title='Bitmap Index Locking'/><author><name>Asanga</name><uri>http://www.blogger.com/profile/06917616787415349832</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_90fhbVRwXDU/TECqZgHU0eI/AAAAAAAAAIo/hwI2BMzwDcI/S220/profile.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-2414933436751311863.post-5908999646003355338</id><published>2012-01-10T02:06:00.000-08:00</published><updated>2012-01-10T02:06:27.948-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='kfod'/><category scheme='http://www.blogger.com/atom/ns#' term='11gR2'/><category scheme='http://www.blogger.com/atom/ns#' term='10g'/><category scheme='http://www.blogger.com/atom/ns#' term='ASM'/><category scheme='http://www.blogger.com/atom/ns#' term='11gR1'/><category scheme='http://www.blogger.com/atom/ns#' term='oracle'/><title type='text'>KFOD - ASM Tool</title><content type='html'>KFOD tool available in ASM Home (Grid Home) in 11gR2 and Oracle Home in other versions (11gR1 and 10gR2) gives a view of disks from the operating systems point of view. This is useful in diagnosting disk access errors in ASM.&lt;br /&gt;&lt;br /&gt;Options available wth KFOD&lt;pre&gt;kfod help=y&lt;br /&gt;_asm_a/llow_only_raw_disks              KFOD allow only raw devices [_asm_allow_only_raw_disks=TRUE/(FALSE)]&lt;br /&gt;_asm_l/ibraries         ASM Libraries[_asm_libraries=lib1,lib2,...]&lt;br /&gt;_asms/id                ASM Instance[_asmsid=sid]&lt;br /&gt;a/sm_diskstring         ASM Diskstring [asm_diskstring=discoverystring, discoverystring ...]&lt;br /&gt;c/luster                KFOD cluster [cluster=TRUE/(FALSE)]&lt;br /&gt;db/_unique_name         db_unique_name for ASM instance[db_unique_name=dbname]&lt;br /&gt;di/sks          Disks to discover [disks=raw,asm,all]&lt;br /&gt;ds/cvgroup              Include group name [dscvgroup=TRUE/(FALSE)]&lt;br /&gt;g/roup          Disks in diskgroup [group=diskgroup]&lt;br /&gt;h/ostlist               hostlist[hostlist=host1,host2,...]&lt;br /&gt;metadata_a/usize                AU Size for Metadata Size Calculation&lt;br /&gt;metadata_c/lients               Client Count for Metadata Size Calculation&lt;br /&gt;metadata_d/isks         Disk Count for Metadata Size Calculation&lt;br /&gt;metadata_n/odes         Node Count for Metadata Size Calculation&lt;br /&gt;metadata_r/edundancy            Redundancy for Metadata Size Calculation&lt;br /&gt;n/ohdr          KFOD header suppression [nohdr=TRUE/(FALSE)]&lt;br /&gt;o/p             KFOD options type [OP=DISKS/CANDIDATES/MISSING/GROUPS/INSTS/VERSION/CLIENTS/RM/RMVERS/DFLTDSTR/GPNPDSTR/METADATA/ALL]&lt;br /&gt;p/file          ASM parameter file [pfile=parameterfile]&lt;br /&gt;s/tatus         Include disk header status [status=TRUE/(FALSE)]&lt;br /&gt;v/erbose                KFOD verbose errors [verbose=TRUE/(FALSE)]&lt;/pre&gt;&lt;br /&gt;More on metalink note ASM tool to check access to ASM disks &lt;b&gt;[ID 1359873.1]&lt;/b&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2414933436751311863-5908999646003355338?l=asanga-pradeep.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/5908999646003355338'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/5908999646003355338'/><link rel='alternate' type='text/html' href='http://asanga-pradeep.blogspot.com/2012/01/kfod-asm-tool.html' title='KFOD - ASM Tool'/><author><name>Asanga</name><uri>http://www.blogger.com/profile/06917616787415349832</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_90fhbVRwXDU/TECqZgHU0eI/AAAAAAAAAIo/hwI2BMzwDcI/S220/profile.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-2414933436751311863.post-8492155634101713690</id><published>2011-12-05T03:49:00.000-08:00</published><updated>2011-12-05T03:50:15.611-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='contention'/><category scheme='http://www.blogger.com/atom/ns#' term='JI'/><category scheme='http://www.blogger.com/atom/ns#' term='materialized view'/><title type='text'>enq JI - contention</title><content type='html'>This enqueue used to prevent two sessions refreshing a materialized view at the same time. It is unavoidable if the situation allows multiple sessions to refresh at the same time. &lt;br /&gt;&lt;br /&gt;Even when multiple sessions try to refresh the same materialized view the refresh process come to a conclusion, unless one of the session that is holding the enqueue dies or killed without the immediate option. &lt;br /&gt;&lt;br /&gt;Following test case shows two sessions trying to refresh the same materialized view resulting in high JI contention but both session ultimately finishing the refresh task. &lt;br /&gt;&lt;br /&gt;1. Create two tables and the materialized view.&lt;br /&gt;&lt;pre&gt;create table x (a number primary key, b number);&lt;br /&gt;create table y (c number,d number, foreign key (c) references x(a));&lt;br /&gt;&lt;br /&gt;begin&lt;br /&gt;for i in 1 .. 10&lt;br /&gt;loop&lt;br /&gt;insert into x values (i, i + 10);&lt;br /&gt;end loop;&lt;br /&gt;end;&lt;br /&gt;/&lt;br /&gt;&lt;br /&gt;begin&lt;br /&gt;for i in 1 .. 5&lt;br /&gt;loop&lt;br /&gt;insert into y values (i, i + 5);&lt;br /&gt;end loop;&lt;br /&gt;end;&lt;br /&gt;/&lt;br /&gt;&lt;br /&gt;create materialized view log on x with rowid;&lt;br /&gt;create materialized view log on y with rowid;&lt;br /&gt;&lt;br /&gt;CREATE MATERIALIZED VIEW mvtest (p,q,yid,xid) BUILD IMMEDIATE USING INDEX REFRESH FAST ON demand AS select y.d p,x.b q,y.rowid yid,x.rowid xid from y, x where x.a=y.c;&lt;/pre&gt;2. Open three sqlplus sessions for the test. Two (called session 2, 3 from now on) will be running the refresh and other session will be used to synchronize the starting of the to refresh sessions (called session 1 from now on).&lt;br /&gt;&lt;br /&gt;3. On session 1 run the following pl/sql code block to create and explicitly lock an id&lt;br /&gt;&lt;pre&gt;declare&lt;br /&gt;    i pls_integer;&lt;br /&gt;begin&lt;br /&gt;    i := dbms_lock.request(10);&lt;br /&gt;end;&lt;br /&gt;/&lt;/pre&gt;4. On session 2 and 3 run the following code. Both session will hang unable to get the lock id 10 in shared mode (which is held in exclusive mode by session 1). However once they obtain the lock both will try to refresh (fast) the materialized view 1000 times&lt;br /&gt;&lt;pre&gt;declare&lt;br /&gt;    i pls_integer;&lt;br /&gt;begin&lt;br /&gt;    i := dbms_lock.request(10,DBMS_LOCK.S_MODE);&lt;br /&gt;&lt;br /&gt;    for i in 1 .. 1000&lt;br /&gt;    loop&lt;br /&gt;     dbms_snapshot.refresh('mvtest','F'); &lt;br /&gt;    end loop;&lt;br /&gt;end;&lt;br /&gt;/&lt;/pre&gt;5. Release the lock on id 10 by running the following code which will start the refresh process&lt;br /&gt;&lt;pre&gt;declare&lt;br /&gt;    j pls_integer;&lt;br /&gt;begin&lt;br /&gt;    j := dbms_lock.release(10);&lt;br /&gt;end;&lt;br /&gt;/&lt;/pre&gt;6. Observer the JI contention on em console or &lt;a href="http://asanga-pradeep.blogspot.com/2011/11/apconsole.html"&gt;APConsole&lt;/a&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-oxhBDzgl93g/TtyrsVsVUlI/AAAAAAAAAd8/lVqMlmbunTw/s1600/jiwait2.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="174" src="http://1.bp.blogspot.com/-oxhBDzgl93g/TtyrsVsVUlI/AAAAAAAAAd8/lVqMlmbunTw/s320/jiwait2.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;If the dba_waiters view was queries repeatedly while the refresh process is going on, it could be observed that holding session and waiting session columns will have sid or session 2 and session 3 changing intermittently.&lt;br /&gt;&lt;br /&gt;Both session eventually will complete and return to sql prompt.&lt;br /&gt;&lt;br /&gt;However as said earlier if the refresh sessions are serialized this will not result in contention and refresh could complete much quicker. (The last bit of CPU spike at the end of the graph above).&lt;br /&gt;&lt;br /&gt;Some useful metalink notes.&lt;br /&gt;What is JI enqueue used for? &lt;b&gt;[ID 580001.1]&lt;/b&gt;&lt;br /&gt;Materialized View Refresh is Hanging With JI Contention &lt;b&gt;[ID 1358453.1]&lt;/b&gt;&lt;br /&gt;Monitoring Locks During Materialized View Refreshes &lt;b&gt;[ID 258258.1]&lt;/b&gt;&lt;br /&gt;MATERIALIZED VIEW REFRESH: Locking, Performance, Monitoring &lt;b&gt;[ID 258252.1]&lt;/b&gt;&lt;br /&gt;Performance Degradation and JI Lock Contention Observed During Batch Load of Tables With On-Commit Materialized Views &lt;b&gt;[ID 371869.1]&lt;/b&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2414933436751311863-8492155634101713690?l=asanga-pradeep.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/8492155634101713690'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/8492155634101713690'/><link rel='alternate' type='text/html' href='http://asanga-pradeep.blogspot.com/2011/12/enq-ji-contention.html' title='enq JI - contention'/><author><name>Asanga</name><uri>http://www.blogger.com/profile/06917616787415349832</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_90fhbVRwXDU/TECqZgHU0eI/AAAAAAAAAIo/hwI2BMzwDcI/S220/profile.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/-oxhBDzgl93g/TtyrsVsVUlI/AAAAAAAAAd8/lVqMlmbunTw/s72-c/jiwait2.png' height='72' width='72'/></entry><entry><id>tag:blogger.com,1999:blog-2414933436751311863.post-469526527904241491</id><published>2011-12-01T04:36:00.000-08:00</published><updated>2012-01-19T02:37:45.588-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='11gR2'/><category scheme='http://www.blogger.com/atom/ns#' term='11.2.0.3'/><category scheme='http://www.blogger.com/atom/ns#' term='10.2.0.4'/><category scheme='http://www.blogger.com/atom/ns#' term='upgrade'/><category scheme='http://www.blogger.com/atom/ns#' term='10g'/><title type='text'>Upgrading from 10.2.0.4 to 11.2.0.3</title><content type='html'>There's a earlier blog about &lt;a href="http://asanga-pradeep.blogspot.com/2009/09/upgrading-10g-to-11g-r-2-with-dbua.html"&gt;upgrading from 10g to 11gR2.&lt;/a&gt; This blog is to add some missing points in the &lt;a href="http://asanga-pradeep.blogspot.com/2009/09/upgrading-10g-to-11g-r-2-with-dbua.html"&gt;previous&lt;/a&gt; blog and additional information with regard to upgrading from 10.2.0.4 to 11.2.0.3.&lt;br /&gt;&lt;br /&gt;Following metalink notes are useful for this upgrade processes.&lt;br /&gt;Upgrade Advisor: Database from 10.2 to 11.2 &lt;b&gt;[ID 251.1]&lt;/b&gt;&lt;br /&gt;Complete Checklist to Upgrade the Database to 11gR2 using DBUA &lt;b&gt;[ID 870814.1]&lt;/b&gt;&lt;br /&gt;Complete Checklist for Manual Upgrades to 11gR2 &lt;b&gt;[ID 837570.1]&lt;/b&gt;&lt;br /&gt;Oracle Database Upgrade Path Reference List &lt;b&gt;[ID 730365.1]&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;The database to upgrade is a 10.2.0.4 with CPU 2009 July being the latest CPU that has been applied on it. In other words no CPU or PSU released after July 2009 has been applied on this database.&lt;br /&gt;&lt;br /&gt;Secondly it's a standard edition database with the following registry components.&lt;br /&gt;&lt;pre&gt;COMP_NAME                           STATUS&lt;br /&gt;----------------------------------- -------&lt;br /&gt;OLAP Analytic Workspace             INVALID&lt;br /&gt;OLAP Catalog                        INVALID&lt;br /&gt;Oracle OLAP API                     INVALID&lt;br /&gt;JServer JAVA Virtual Machine        VALID&lt;br /&gt;Oracle Data Mining                  VALID&lt;br /&gt;Oracle Database Catalog Views       VALID&lt;br /&gt;Oracle Database Java Packages       VALID&lt;br /&gt;Oracle Database Packages and Types  VALID&lt;br /&gt;Oracle Enterprise Manager           VALID&lt;br /&gt;Oracle Expression Filter            VALID&lt;br /&gt;Oracle Rules Manager                VALID&lt;br /&gt;Oracle Text                         VALID&lt;br /&gt;Oracle Workspace Manager            VALID&lt;br /&gt;Oracle XDK                          VALID&lt;br /&gt;Oracle XML Database                 VALID&lt;br /&gt;Oracle interMedia                   VALID&lt;br /&gt;Spatial                             VALID&lt;/pre&gt;Running &lt;i&gt;utlrp.sql&lt;/i&gt; gives the following output as the number of invalid objects&lt;br /&gt;&lt;pre&gt;OBJECTS WITH ERRORS&lt;br /&gt;-------------------&lt;br /&gt;                  8&lt;br /&gt;DOC&amp;gt; The following query reports the number of errors caught during&lt;br /&gt;..&lt;br /&gt;ERRORS DURING RECOMPILATION&lt;br /&gt;---------------------------&lt;br /&gt;                          0&lt;/pre&gt;4 OLAPSYS packages and 4 public role synonyms are the objects with errors in this case.&lt;br /&gt;OLAP* and several other components are not valid options on a standard edition database. In this case only OLAP* components are invalid but spatial, intermedia, data mining are all not valid for a standard edition database. But the registry will be valid on a fresh installation but after installing CPU or revoking execute on utl* packages for public and etc some of these will become invalid. The &lt;a href="http://asanga-pradeep.blogspot.com/2009/09/upgrading-10g-to-11g-r-2-with-dbua.html"&gt;earlier blog&lt;/a&gt; was of such a fresh installation of 10gR2 that didn't have any components invalid. &lt;br /&gt;&lt;br /&gt;Following metalink notes could be used to install/deinstall various components that are not valid in standard edition (if they were install initially).&lt;br /&gt;How To Find Out If OLAP Is Being Used And How To Remove OLAP &lt;b&gt;[ID 739032.1]&lt;/b&gt;&lt;br /&gt;Remove Invalid OLAP Objects From SYS And OLAPSYS Schemas &lt;b&gt;[ID 565773.1]&lt;/b&gt;&lt;br /&gt;Steps for Manual De-installation of Oracle Spatial &lt;b&gt;[ID 179472.1]&lt;/b&gt;&lt;br /&gt;Removed Spatial Option But Spatial Still Appears In V$Option &lt;b&gt;[ID 273573.1]&lt;/b&gt;&lt;br /&gt;Where to Find the Information to Install, Upgrade, Downgrade and Deinstall interMedia/Oracle Multimedia? &lt;b&gt;[ID 337415.1]&lt;/b&gt;(on 10gR2 deinstall $OH/ord/im/admin/imdinst.sql, on 11gR2 $OH/rdbms/admin/catcmprm.sql ORDIM )&lt;br /&gt;&lt;br /&gt;Trying to uninstall all non valid components could result in more objects with errors which caused problems during a test upgrade and made the upgrade to fail. If it is decided to remove all the components that are not valid in standard edition it is advisable to make sure that there are no invalid objects prior to upgrade. In this case the upgrade will continue with these three OLAP* components invalid.&lt;br /&gt;&lt;br /&gt;The pre-upgrade information tool's output is as follows&lt;br /&gt;&lt;pre&gt;SQL&amp;gt; @utlu112i.sql&lt;br /&gt;Oracle Database 11.2 Pre-Upgrade Information Tool 11-29-2011 16:14:13&lt;br /&gt;Script Version: 11.2.0.3.0 Build: 001&lt;br /&gt;.&lt;br /&gt;**********************************************************************&lt;br /&gt;Database:&lt;br /&gt;**********************************************************************&lt;br /&gt;--&amp;gt; name:          stdb1&lt;br /&gt;--&amp;gt; version:       10.2.0.4.0&lt;br /&gt;--&amp;gt; compatible:    10.2.0.3.0&lt;br /&gt;--&amp;gt; blocksize:     8192&lt;br /&gt;--&amp;gt; platform:      Linux x86 64-bit&lt;br /&gt;--&amp;gt; timezone file: V4&lt;br /&gt;.&lt;br /&gt;**********************************************************************&lt;br /&gt;Tablespaces: [make adjustments in the current environment]&lt;br /&gt;**********************************************************************&lt;br /&gt;--&amp;gt; SYSTEM tablespace is adequate for the upgrade.&lt;br /&gt;.... minimum required size: 725 MB&lt;br /&gt;--&amp;gt; UNDOTBS1 tablespace is adequate for the upgrade.&lt;br /&gt;.... minimum required size: 400 MB&lt;br /&gt;--&amp;gt; SYSAUX tablespace is adequate for the upgrade.&lt;br /&gt;.... minimum required size: 461 MB&lt;br /&gt;--&amp;gt; TEMP tablespace is adequate for the upgrade.&lt;br /&gt;.... minimum required size: 60 MB&lt;br /&gt;.&lt;br /&gt;**********************************************************************&lt;br /&gt;Flashback: OFF&lt;br /&gt;**********************************************************************&lt;br /&gt;**********************************************************************&lt;br /&gt;Update Parameters: [Update Oracle Database 11.2 init.ora or spfile]&lt;br /&gt;Note: Pre-upgrade tool was run on a lower version 64-bit database.&lt;br /&gt;**********************************************************************&lt;br /&gt;--&amp;gt; If Target Oracle is 32-Bit, refer here for Update Parameters:&lt;br /&gt;-- No update parameter changes are required.&lt;br /&gt;.&lt;br /&gt;&lt;br /&gt;--&amp;gt; If Target Oracle is 64-Bit, refer here for Update Parameters:&lt;br /&gt;-- No update parameter changes are required.&lt;br /&gt;.&lt;br /&gt;**********************************************************************&lt;br /&gt;Renamed Parameters: [Update Oracle Database 11.2 init.ora or spfile]&lt;br /&gt;**********************************************************************&lt;br /&gt;-- No renamed parameters found. No changes are required.&lt;br /&gt;.&lt;br /&gt;**********************************************************************&lt;br /&gt;Obsolete/Deprecated Parameters: [Update Oracle Database 11.2 init.ora or spfile]&lt;br /&gt;**********************************************************************&lt;br /&gt;--&amp;gt; background_dump_dest         11.1       DEPRECATED   replaced by  "diagnostic_dest"&lt;br /&gt;--&amp;gt; user_dump_dest               11.1       DEPRECATED   replaced by  "diagnostic_dest"&lt;br /&gt;.&lt;br /&gt;&lt;br /&gt;**********************************************************************&lt;br /&gt;Components: [The following database components will be upgraded or installed]&lt;br /&gt;**********************************************************************&lt;br /&gt;--&amp;gt; Oracle Catalog Views         [upgrade]  VALID&lt;br /&gt;--&amp;gt; Oracle Packages and Types    [upgrade]  VALID&lt;br /&gt;--&amp;gt; JServer JAVA Virtual Machine [upgrade]  VALID&lt;br /&gt;--&amp;gt; Oracle XDK for Java          [upgrade]  VALID&lt;br /&gt;--&amp;gt; Oracle Workspace Manager     [upgrade]  VALID&lt;br /&gt;--&amp;gt; OLAP Analytic Workspace      [upgrade]  INVALID&lt;br /&gt;--&amp;gt; OLAP Catalog                 [upgrade]  INVALID&lt;br /&gt;--&amp;gt; EM Repository                [upgrade]  VALID&lt;br /&gt;--&amp;gt; Oracle Text                  [upgrade]  VALID&lt;br /&gt;--&amp;gt; Oracle XML Database          [upgrade]  VALID&lt;br /&gt;--&amp;gt; Oracle Java Packages         [upgrade]  VALID&lt;br /&gt;--&amp;gt; Oracle interMedia            [upgrade]  VALID&lt;br /&gt;--&amp;gt; Spatial                      [upgrade]  VALID&lt;br /&gt;--&amp;gt; Data Mining                  [upgrade]  VALID&lt;br /&gt;--&amp;gt; Expression Filter            [upgrade]  VALID&lt;br /&gt;--&amp;gt; Rule Manager                 [upgrade]  VALID&lt;br /&gt;--&amp;gt; Oracle OLAP API              [upgrade]  INVALID&lt;br /&gt;.&lt;br /&gt;**********************************************************************&lt;br /&gt;Miscellaneous Warnings&lt;br /&gt;**********************************************************************&lt;br /&gt;WARNING: --&amp;gt; Database is using a timezone file older than version 14.&lt;br /&gt;.... After the release migration, it is recommended that DBMS_DST package&lt;br /&gt;.... be used to upgrade the 10.2.0.4.0 database timezone version&lt;br /&gt;.... to the latest version which comes with the new release.&lt;br /&gt;WARNING: --&amp;gt; Database contains INVALID objects prior to upgrade.&lt;br /&gt;.... The list of invalid SYS/SYSTEM objects was written to&lt;br /&gt;.... registry$sys_inv_objs.&lt;br /&gt;.... The list of non-SYS/SYSTEM objects was written to&lt;br /&gt;.... registry$nonsys_inv_objs.&lt;br /&gt;.... Use utluiobj.sql after the upgrade to identify any new invalid&lt;br /&gt;.... objects due to the upgrade.&lt;br /&gt;.... USER OLAPSYS has 4 INVALID objects.&lt;br /&gt;.... USER PUBLIC has 4 INVALID objects.&lt;br /&gt;WARNING: --&amp;gt; EM Database Control Repository exists in the database.&lt;br /&gt;.... Direct downgrade of EM Database Control is not supported. Refer to the&lt;br /&gt;.... Upgrade Guide for instructions to save the EM data prior to upgrade.&lt;br /&gt;WARNING: --&amp;gt; Your recycle bin is turned on and currently contains no objects.&lt;br /&gt;.... Because it is REQUIRED that the recycle bin be empty prior to upgrading&lt;br /&gt;.... and your recycle bin is turned on, you may need to execute the command:&lt;br /&gt;        PURGE DBA_RECYCLEBIN&lt;br /&gt;.... prior to executing your upgrade to confirm the recycle bin is empty.&lt;br /&gt;.&lt;br /&gt;**********************************************************************&lt;br /&gt;Recommendations&lt;br /&gt;**********************************************************************&lt;br /&gt;Oracle recommends gathering dictionary statistics prior to&lt;br /&gt;upgrading the database.&lt;br /&gt;To gather dictionary statistics execute the following command&lt;br /&gt;while connected as SYSDBA:&lt;br /&gt;&lt;br /&gt;    EXECUTE dbms_stats.gather_dictionary_stats;&lt;br /&gt;&lt;br /&gt;**********************************************************************&lt;br /&gt;Oracle recommends reviewing any defined events prior to upgrading.&lt;br /&gt;&lt;br /&gt;To view existing non-default events execute the following commands&lt;br /&gt;while connected AS SYSDBA:&lt;br /&gt;  Events:&lt;br /&gt;    SELECT (translate(value,chr(13)||chr(10),' ')) FROM sys.v$parameter2&lt;br /&gt;      WHERE  UPPER(name) ='EVENT' AND  isdefault='FALSE'&lt;br /&gt;&lt;br /&gt;  Trace Events:&lt;br /&gt;    SELECT (translate(value,chr(13)||chr(10),' ')) from sys.v$parameter2&lt;br /&gt;      WHERE UPPER(name) = '_TRACE_EVENTS' AND isdefault='FALSE'&lt;br /&gt;&lt;br /&gt;Changes will need to be made in the init.ora or spfile.&lt;br /&gt;&lt;br /&gt;**********************************************************************&lt;/pre&gt;Carry out the steps recommended by this tool such as gathering dictionary and schema statistics and etc. More steps available on &lt;b&gt;837570.1&lt;/b&gt; which are not relevant on this upgrade so they are not listed.&lt;br /&gt;&lt;br /&gt;Another key difference is that 11.2.0.3 provides a way to upgrade the timezone at the same time the database is upgrade. Which was not there on the base 11gR2 release. Compare the 5th picture on the &lt;a href="http://asanga-pradeep.blogspot.com/2009/09/upgrading-10g-to-11g-r-2-with-dbua.html"&gt;previous blog&lt;/a&gt; with the picture below which gives the option to upgrade the timezone.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-4clh5F6zTvo/Ttdklfv8MlI/AAAAAAAAAb4/Z7UV17YblXY/s1600/upgrae11.31.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="226" src="http://3.bp.blogspot.com/-4clh5F6zTvo/Ttdklfv8MlI/AAAAAAAAAb4/Z7UV17YblXY/s320/upgrae11.31.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;There are several metalink notes related to timezone upgrade.&lt;br /&gt;Updating the RDBMS DST version in 11gR2 (11.2.0.1 and up) using DBMS_DST &lt;b&gt;[ID 977512.1]&lt;/b&gt;&lt;br /&gt;Actions For DST Updates When Upgrading To Or Applying The 11.2.0.3 Patchset &lt;b&gt;[ID 1358166.1]&lt;/b&gt;&lt;br /&gt;Before the upgrade the timezone file version was&lt;br /&gt;&lt;pre&gt;upgrade &lt;br /&gt;SQL&amp;gt; select version from v$timezone_file;&lt;br /&gt;&lt;br /&gt;   VERSION&lt;br /&gt;----------&lt;br /&gt;         4&lt;/pre&gt;Key points relevant to this are (quoting from the metalink note &lt;b&gt;1358166.1&lt;/b&gt;)&lt;i&gt;If this reports a timezone version lower then 14 please see point B.3) in this document.&lt;br /&gt;&lt;br /&gt;B.3) If your current timezone version is lower than 14 (typically 4):&lt;br /&gt;&lt;br /&gt;B.3b) When upgrading from 10.1.0.x , 10.2.0.x or 11.1.0.x to 11.2.0.3:&lt;br /&gt;For 10.2.0.2 , 10.2.0.3 , 10.2.0.4 or 10.2.0.5 there is no need to apply any patchset before upgrading to 11.2.0.3&lt;br /&gt;&lt;br /&gt;Upgrade to 11.2.0.3.No need to apply DST patches on the 10.2.0.2 , 10.2.0.3 , 10.2.0.4 or 10.2.0.5 side first. You can skip any DST related upgrade instructions.&lt;br /&gt;The 11.2.0.3 RDBMS DST version after the upgrade to 11.2.0.3 will be the same DST version as used in 10.2.0.2 , 10.2.0.3 , 10.2.0.4 or 10.2.0.5.&lt;br /&gt;&lt;br /&gt;After the upgrade to 11.2.0.3 you can:&lt;br /&gt;(recommended) update the 11.2.0.3 database(s) to DSTv14 (standard DST version of 11.2.0.3) by following Note 977512.1 Updating the RDBMS DST version in 11gR2 (11.2.0.1 and up) using DBMS_DST from step 3a) onwards, when going to DSTv14 there is no need to apply any DST patch to the 11.2.0.3 home&lt;br /&gt;&lt;br /&gt;(optional) update to a higher DST than 14 version if this is needed.&lt;br /&gt;Apply the latest 11.2.0.3 DST update patch after the upgrade to 11.2.0.3 and use DDBMS_DST.&lt;br /&gt;&lt;br /&gt;The lastest DST patch and related note on how to apply this is found in Note 412160.1 Updated Time Zones in Oracle Time Zone File patches under "C) Notes covering the current DST available updates". Simply follow the note for the latest DST update&lt;/i&gt;. If decided it is possible to upgrade the database's timezone after the database upgrade by following the above metalink notes. In this case timezone was upgraded at the same time database was upgraded.&lt;br /&gt;&lt;br /&gt;&lt;script type="text/javascript"&gt;&lt;!--google_ad_client = "ca-pub-5510817526739610";/* leadborad */google_ad_slot = "9860710817";google_ad_width = 728;google_ad_height = 90;//--&gt;&lt;/script&gt;&lt;br /&gt;&lt;script type="text/javascript"        src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;&lt;/script&gt;&lt;br /&gt;&lt;br /&gt;Save the em control incase later on it is decided to downgrade back to 10g. &lt;br /&gt;Create a TNS name entry in the 10g Oracle Home (network/admin) with the same name as the SID before running the above &lt;br /&gt;&lt;pre&gt;/opt/app/oracle/product/11.2.0/dbhome_1/bin/emdwgrd -save -sid stdb1 -path /home/oracle/emdctl&lt;br /&gt;Enter sys password for database stdb1?&lt;br /&gt;&lt;br /&gt;Database Unique Name : stdb1&lt;br /&gt;Tue Nov 29 17:01:29 2011 - Validating DB Connection to stdb1 ... pass&lt;br /&gt;Tue Nov 29 17:01:29 2011 - Verify EM DB Control files ... pass&lt;br /&gt;ENV var EM_REMCP not defined, check if rcp or scp is configured.&lt;br /&gt;RCP = /usr/bin/rcp -rp, REMSH = /usr/bin/rsh&lt;br /&gt;shared = 0&lt;br /&gt;Tue Nov 29 17:01:29 2011 - Creating directory ... created&lt;br /&gt;Tue Nov 29 17:01:30 2011 - Stopping DB Control ... stopped&lt;br /&gt;Tue Nov 29 17:01:35 2011 - Saving DB Control files&lt;br /&gt; ... saved&lt;br /&gt;Tue Nov 29 17:01:35 2011 - Recompiling invalid objects ... recompiled&lt;br /&gt;Tue Nov 29 17:01:36 2011 - Exporting sysman schema for stdb1 ... exported&lt;br /&gt;Tue Nov 29 17:01:59 2011 - DB Control was saved successfully.&lt;br /&gt;Tue Nov 29 17:01:59 2011 - Starting DB Control ... started&lt;br /&gt;Tue Nov 29 17:03:33 2011 - Dump directory was dropped successfully.&lt;/pre&gt;Disable all batch and cron jobs.&lt;br /&gt;&lt;br /&gt;Take a full backup of the database. (Better if it's a cold backup, not necessary)&lt;br /&gt;&lt;br /&gt;Stop the 10g listener and create a listener on 11gR2 home and start it.&lt;br /&gt;&lt;br /&gt;Set ORACLE_BASE ,ORACLE_HOME and PATH environment variable pointing  to the 11gr2 home and run dbua from the 11gR2 home's bin. Upgrade summary is given below.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-OyYbuU-sjOw/TtdrGBLlC6I/AAAAAAAAAcE/gBCkGtaJsqA/s1600/upgrae11.32.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="226" src="http://3.bp.blogspot.com/-OyYbuU-sjOw/TtdrGBLlC6I/AAAAAAAAAcE/gBCkGtaJsqA/s320/upgrae11.32.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Upgrade process will omit some of the components from the upgrade process. &lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-bysTr1uZ258/TtdrkJsBdiI/AAAAAAAAAcQ/Pk9ZqfcEpZI/s1600/upgrae11.33.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="226" src="http://3.bp.blogspot.com/-bysTr1uZ258/TtdrkJsBdiI/AAAAAAAAAcQ/Pk9ZqfcEpZI/s320/upgrae11.33.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;This is also mentioned when selecting the database to upgrade.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-LmldKSo8F6U/TtdsFTd1EVI/AAAAAAAAAc0/EzydBuFXdn0/s1600/upgrae11.36.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="228" src="http://4.bp.blogspot.com/-LmldKSo8F6U/TtdsFTd1EVI/AAAAAAAAAc0/EzydBuFXdn0/s320/upgrae11.36.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-K0_aHyTAi64/TtdrqL-NpzI/AAAAAAAAAcc/ReHb8GAmG9c/s1600/upgrae11.34.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="226" src="http://3.bp.blogspot.com/-K0_aHyTAi64/TtdrqL-NpzI/AAAAAAAAAcc/ReHb8GAmG9c/s320/upgrae11.34.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-eMYeYvWQyRo/Ttdrs4wNRgI/AAAAAAAAAco/0jxDO1T2KQU/s1600/upgrae11.35.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="225" src="http://2.bp.blogspot.com/-eMYeYvWQyRo/Ttdrs4wNRgI/AAAAAAAAAco/0jxDO1T2KQU/s320/upgrae11.35.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;During the upgrade it could be seen that some of the components are not upgraded. These components are not valid on standard edition. Also note timezone upgrade.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-OP3X2ZlImAg/TtdsZTdh_0I/AAAAAAAAAdA/3AL930514WY/s1600/upgrae11.37.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="234" src="http://4.bp.blogspot.com/-OP3X2ZlImAg/TtdsZTdh_0I/AAAAAAAAAdA/3AL930514WY/s320/upgrae11.37.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Upgrade results&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-uXUCOd0NX-k/TtdtQyPlllI/AAAAAAAAAdM/u-FN_P9c4jw/s1600/upgrae11.38.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="269" src="http://2.bp.blogspot.com/-uXUCOd0NX-k/TtdtQyPlllI/AAAAAAAAAdM/u-FN_P9c4jw/s320/upgrae11.38.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-8DTGetgknYc/TtdtWNwrDfI/AAAAAAAAAdY/H0Pq3zBtBno/s1600/upgrae11.39.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="269" src="http://1.bp.blogspot.com/-8DTGetgknYc/TtdtWNwrDfI/AAAAAAAAAdY/H0Pq3zBtBno/s320/upgrae11.39.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/--UCEDq_TT9g/TtdtcDkhbjI/AAAAAAAAAdk/pYEMbgp6M9I/s1600/upgrae11.340.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="267" src="http://3.bp.blogspot.com/--UCEDq_TT9g/TtdtcDkhbjI/AAAAAAAAAdk/pYEMbgp6M9I/s320/upgrae11.340.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-cz0gUgFX0GQ/Ttdti0DI7EI/AAAAAAAAAdw/ryqNr6ErDHU/s1600/upgrae11.341.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="266" src="http://1.bp.blogspot.com/-cz0gUgFX0GQ/Ttdti0DI7EI/AAAAAAAAAdw/ryqNr6ErDHU/s320/upgrae11.341.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;Verifying the timezone upgrade&lt;br /&gt;&lt;pre&gt;SQL&amp;gt; select version from v$timezone_file;&lt;br /&gt;&lt;br /&gt;   VERSION&lt;br /&gt;----------&lt;br /&gt;        14&lt;/pre&gt;Components status in the database registry&lt;br /&gt;&lt;pre&gt;COMP_NAME                                     VERSION                        STATUS&lt;br /&gt;--------------------------------------------- ------------------------------ -----------&lt;br /&gt;Oracle Multimedia                             11.2.0.3.0                     INVALID&lt;br /&gt;OLAP Analytic Workspace                       10.2.0.4.0                     OPTION OFF&lt;br /&gt;OLAP Catalog                                  10.2.0.4.0                     OPTION OFF&lt;br /&gt;Oracle Data Mining                            10.2.0.4.0                     OPTION OFF&lt;br /&gt;Oracle OLAP API                               10.2.0.4.0                     OPTION OFF&lt;br /&gt;Spatial                                       10.2.0.4.0                     OPTION OFF&lt;br /&gt;JServer JAVA Virtual Machine                  11.2.0.3.0                     VALID&lt;br /&gt;Oracle Database Catalog Views                 11.2.0.3.0                     VALID&lt;br /&gt;Oracle Database Java Packages                 11.2.0.3.0                     VALID&lt;br /&gt;Oracle Database Packages and Types            11.2.0.3.0                     VALID&lt;br /&gt;Oracle Enterprise Manager                     11.2.0.3.0                     VALID&lt;br /&gt;Oracle Expression Filter                      11.2.0.3.0                     VALID&lt;br /&gt;Oracle Rules Manager                          11.2.0.3.0                     VALID&lt;br /&gt;Oracle Text                                   11.2.0.3.0                     VALID&lt;br /&gt;Oracle Workspace Manager                      11.2.0.3.0                     VALID&lt;br /&gt;Oracle XDK                                    11.2.0.3.0                     VALID&lt;br /&gt;Oracle XML Database                           11.2.0.3.0                     VALID&lt;br /&gt;&lt;br /&gt;17 rows selected.&lt;/pre&gt;Oracle Multimedia(Oracle interMedia in 10g) is invalid after the upgrade. Following two metalink notes help identifying the reason for this&lt;br /&gt;Things To Check When Oracle Multimedia/interMedia Is INVALID In DBA_REGISTRY Or The Version Is Not The Same As The Database Version &lt;b&gt;[ID 1065954.1]&lt;/b&gt;&lt;br /&gt;Verifying an Installed Version of Oracle Multimedia &lt;b&gt;[ID 458228.1]&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Running the validate_ordim gives the following errors&lt;br /&gt;&lt;pre&gt;SQL&amp;gt; set serveroutput on&lt;br /&gt;SQL&amp;gt; execute validate_ordim;&lt;br /&gt;Locator INVALID OBJECTS: PRVT_IDX - 5 - 11&lt;br /&gt;Locator INVALID OBJECTS: SDO_GEOM - 5 - 11&lt;br /&gt;Locator INVALID OBJECTS: SAMCLUST_IMP_T - 5 - 14&lt;br /&gt;&lt;br /&gt;PL/SQL procedure successfully completed.&lt;/pre&gt;From the output it seems that some of the spatial component related objects are invalid (since spatial option is off after the upgrade) thus oracle media that depends on it also becomes invalid. Remove the Oracle media component with (which also removes spatial component which is depends on media)&lt;br /&gt;&lt;pre&gt;SQL&amp;gt; @?/rdbms/admin/catcmprm.sql ORDIM&lt;br /&gt;About to remove Oracle Multimedia.&lt;br /&gt;Checking to see if anyone is using Oracle Multimedia.&lt;br /&gt;&lt;br /&gt;Oracle Multimedia is not being used&lt;br /&gt;PL/SQL procedure successfully completed.&lt;br /&gt;&lt;br /&gt;Are you sure you want to remove Oracle Multimedia (Y/N): y&lt;br /&gt;PL/SQL procedure successfully completed.&lt;br /&gt;&lt;br /&gt;Removing Oracle Multimedia&lt;br /&gt;PL/SQL procedure successfully completed.&lt;/pre&gt;After remove dba registry status&lt;br /&gt;&lt;pre&gt;COMP_NAME                           VERSION                        STATUS&lt;br /&gt;----------------------------------- ------------------------------ --------------------------------------------&lt;br /&gt;OLAP Analytic Workspace             10.2.0.4.0                     OPTION OFF&lt;br /&gt;OLAP Catalog                        10.2.0.4.0                     OPTION OFF&lt;br /&gt;Oracle Data Mining                  10.2.0.4.0                     OPTION OFF&lt;br /&gt;Oracle OLAP API                     10.2.0.4.0                     OPTION OFF&lt;br /&gt;JServer JAVA Virtual Machine        11.2.0.3.0                     VALID&lt;br /&gt;Oracle Database Catalog Views       11.2.0.3.0                     VALID&lt;br /&gt;Oracle Database Java Packages       11.2.0.3.0                     VALID&lt;br /&gt;Oracle Database Packages and Types  11.2.0.3.0                     VALID&lt;br /&gt;Oracle Enterprise Manager           11.2.0.3.0                     VALID&lt;br /&gt;Oracle Expression Filter            11.2.0.3.0                     VALID&lt;br /&gt;Oracle Rules Manager                11.2.0.3.0                     VALID&lt;br /&gt;Oracle Text                         11.2.0.3.0                     VALID&lt;br /&gt;Oracle Workspace Manager            11.2.0.3.0                     VALID&lt;br /&gt;Oracle XDK                          11.2.0.3.0                     VALID&lt;br /&gt;Oracle XML Database                 11.2.0.3.0                     VALID&lt;br /&gt;&lt;br /&gt;15 rows selected.&lt;/pre&gt;This will increase the number of invalid objects but these will be OLAP related objects and has no impact on the rest of the database operation.&lt;br /&gt;&lt;pre&gt;SQL&amp;gt;select owner,object_type,count(*) from dba_objects where status='INVALID' group by owner,object_type order by owner,object_type ;&lt;br /&gt;&lt;br /&gt;OWNER                          OBJECT_TYPE           COUNT(*)&lt;br /&gt;------------------------------ ------------------- ----------&lt;br /&gt;OLAPSYS                        PACKAGE BODY                 3&lt;br /&gt;OLAPSYS                        VIEW                        25&lt;br /&gt;PUBLIC                         SYNONYM                     25&lt;/pre&gt;It is possible to drop the olapsys user and also drop remaining public synonyms.&lt;pre&gt;DROP USER OLAPSYS CASCADE;&lt;br /&gt;select 'drop '||object_type||' '||substr(object_name,1,40) ||';' from  dba_objects where status='INVALID';&lt;/pre&gt;After this expdp/impdp could run into following error&lt;pre&gt;ORA-39127: unexpected error from call to "SYS"."DBMS_CUBE_EXP"."INSTANCE_EXTENDED_INFO_EXP"&lt;br /&gt;ORA-44002: invalid object name&lt;br /&gt;ORA-06512: at "SYS.DBMS_ASSERT", line 316&lt;br /&gt;ORA-06512: at "SYS.DBMS_METADATA", line 9114&lt;/pre&gt;Metalink notes How To Remove or De-activate OLAP After Migrating From 9i To 10g or 11g &lt;b&gt;[ID 467643.1]&lt;/b&gt; and ORA-39127 SYS.DBMS_CUBE_EXP.INSTANCE_EXTENDED_INFO_EXP ORA-44002 On Expdp After Upgrade To 11.2.0.2 &lt;b&gt;[ID 1353491.1]&lt;/b&gt; explains the solution for this, which is &lt;i&gt;If the OLAP option is not used delete DBMS_CUBE_EXP OLAP package from the export view as follows&lt;/i&gt;&lt;pre&gt;SQL&gt; select PACKAGE,SCHEMA,class from exppkgact$ where (schema,package) not in (select owner,object_name from dba_objects where object_type='PACKAGE');&lt;br /&gt;&lt;br /&gt;PACKAGE                        SCHEMA                              CLASS&lt;br /&gt;------------------------------ ------------------------------ ----------&lt;br /&gt;DBMS_CUBE_EXP                  SYS                                     4&lt;br /&gt;&lt;br /&gt;SQL&gt; delete from sys.exppkgact$ where package = 'DBMS_CUBE_EXP' and schema= 'SYS';&lt;br /&gt;1 row deleted.&lt;br /&gt;SQL&gt; commit;&lt;br /&gt;Commit complete.&lt;/pre&gt;After this export will work as expected and there will no invalid objects nor any invalid database components&lt;pre&gt;@?/rdbms/admin/utlrp&lt;br /&gt;OBJECTS WITH ERRORS&lt;br /&gt;-------------------&lt;br /&gt;                  0&lt;br /&gt;&lt;br /&gt;DOC&gt; The following query reports the number of errors caught during&lt;br /&gt;..&lt;br /&gt;ERRORS DURING RECOMPILATION&lt;br /&gt;---------------------------&lt;br /&gt;                          0&lt;br /&gt;&lt;br /&gt;SQL&gt; select comp_name,version,status from dba_registry order by 3,1,2;&lt;br /&gt;&lt;br /&gt;COMP_NAME                           VERSION                        STATUS&lt;br /&gt;----------------------------------- ------------------------------ -----------&lt;br /&gt;OLAP Analytic Workspace             10.2.0.4.0                     OPTION OFF&lt;br /&gt;Oracle Data Mining                  10.2.0.4.0                     OPTION OFF&lt;br /&gt;Oracle OLAP API                     10.2.0.4.0                     OPTION OFF&lt;br /&gt;JServer JAVA Virtual Machine        11.2.0.3.0                     VALID&lt;br /&gt;Oracle Database Catalog Views       11.2.0.3.0                     VALID&lt;br /&gt;Oracle Database Java Packages       11.2.0.3.0                     VALID&lt;br /&gt;Oracle Database Packages and Types  11.2.0.3.0                     VALID&lt;br /&gt;Oracle Enterprise Manager           11.2.0.3.0                     VALID&lt;br /&gt;Oracle Expression Filter            11.2.0.3.0                     VALID&lt;br /&gt;Oracle Rules Manager                11.2.0.3.0                     VALID&lt;br /&gt;Oracle Text                         11.2.0.3.0                     VALID&lt;br /&gt;Oracle Workspace Manager            11.2.0.3.0                     VALID&lt;br /&gt;Oracle XDK                          11.2.0.3.0                     VALID&lt;br /&gt;Oracle XML Database                 11.2.0.3.0                     VALID&lt;br /&gt;&lt;br /&gt;14 rows selected.&lt;/pre&gt;&lt;br /&gt;This concluded the ugprade to 11.2.0.3. After the upgrade the database will &lt;a href="http://asanga-pradeep.blogspot.com/2011/11/multiple-shared-memory-segments-created.html"&gt;exhibit three shared segment behavior&lt;/a&gt; that is only found on 11.2.0.3.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2414933436751311863-469526527904241491?l=asanga-pradeep.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/469526527904241491'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/469526527904241491'/><link rel='alternate' type='text/html' href='http://asanga-pradeep.blogspot.com/2011/12/upgrading-from-10204-to-11203.html' title='Upgrading from 10.2.0.4 to 11.2.0.3'/><author><name>Asanga</name><uri>http://www.blogger.com/profile/06917616787415349832</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_90fhbVRwXDU/TECqZgHU0eI/AAAAAAAAAIo/hwI2BMzwDcI/S220/profile.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/-4clh5F6zTvo/Ttdklfv8MlI/AAAAAAAAAb4/Z7UV17YblXY/s72-c/upgrae11.31.png' height='72' width='72'/></entry><entry><id>tag:blogger.com,1999:blog-2414933436751311863.post-6671918124492774190</id><published>2011-11-24T15:08:00.000-08:00</published><updated>2011-12-31T09:27:57.711-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='enterprise manager'/><category scheme='http://www.blogger.com/atom/ns#' term='em'/><category scheme='http://www.blogger.com/atom/ns#' term='standard'/><category scheme='http://www.blogger.com/atom/ns#' term='apconsole'/><title type='text'>APConsole</title><content type='html'>I was tired of not having something similar to emconsole for standard edition databases.&lt;br /&gt;&lt;br /&gt;So I developed &lt;b&gt;APConsole&lt;/b&gt;. &lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.keepandshare.com/doc/3312292/apconsole-pdf-november-29-2011-7-44-pm-638k?da=y"&gt;Feature list and contact information (site 1)&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.4shared.com/document/G6hLXG09/APConsole.html"&gt;Feature list and contact information (site 2)&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href= "mailto:apconsole@gmail.com" &gt;Request a Trial Version&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Installation is same as in &lt;a href="http://asanga-pradeep.blogspot.com/2009/06/admon-20.html"&gt;ADMon&lt;/a&gt; (see &lt;a href="http://www.keepandshare.com/doc/view.php?id=1239823&amp;amp;da=y"&gt;ADMON user guide&lt;/a&gt;)&lt;br /&gt;&lt;br /&gt;&lt;a href="http://asanga.host-ed.net/software/apconsole.html"&gt;Full Page Demo&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;embed align="middle" allowscriptaccess="always" height="761" pluginspage="http://www.adobe.com/products/flashplayer/" quality="high" src="http://asanga.host-ed.net/software/apconsole.swf" type="application/x-shockwave-flash" width="1337"&gt;&lt;/embed&gt;&lt;br /&gt;&lt;br /&gt;Comparison of EM Console vs APConsole&lt;br /&gt;APCosnole has a longer x-axis than EM Cosnole therefore the graph's shape may seemed wider but time values are same and also the y-axis values.&lt;br /&gt;&lt;b&gt;&lt;br /&gt;Waits (APConsole vs EM Console)&lt;/b&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-Bgotssi603c/Tt4QQ-R-dpI/AAAAAAAAAeI/PpZcNbFelzA/s1600/apconsolew.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="70" src="http://2.bp.blogspot.com/-Bgotssi603c/Tt4QQ-R-dpI/AAAAAAAAAeI/PpZcNbFelzA/s320/apconsolew.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-KAlmVi7227M/Tt4QZZFJjLI/AAAAAAAAAeU/NWtV_3UgFQw/s1600/emconsolew.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="73" src="http://3.bp.blogspot.com/-KAlmVi7227M/Tt4QZZFJjLI/AAAAAAAAAeU/NWtV_3UgFQw/s320/emconsolew.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;b&gt;IO Throughput (APConsole vs EM Console)&lt;/b&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-yDIKDI4KiJ0/Tt4QyRV7zxI/AAAAAAAAAeg/oA-_8l7MMb0/s1600/throughputapconsole.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="54" src="http://1.bp.blogspot.com/-yDIKDI4KiJ0/Tt4QyRV7zxI/AAAAAAAAAeg/oA-_8l7MMb0/s320/throughputapconsole.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-pt8hrl8vweY/Tt4RHuBSGdI/AAAAAAAAAes/8mWLbP8h_l4/s1600/iothroughputem.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="82" src="http://1.bp.blogspot.com/-pt8hrl8vweY/Tt4RHuBSGdI/AAAAAAAAAes/8mWLbP8h_l4/s320/iothroughputem.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;b&gt;IO Rate (APConsole vs EM Console)&lt;/b&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-AiYKGc79b20/Tt4RfJFzjXI/AAAAAAAAAe4/Qv2MuJ70cKA/s1600/iorateapcnsole.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="54" src="http://4.bp.blogspot.com/-AiYKGc79b20/Tt4RfJFzjXI/AAAAAAAAAe4/Qv2MuJ70cKA/s320/iorateapcnsole.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-17Qi5RMpyos/Tt4RkmL8soI/AAAAAAAAAfE/QJA4B4KmjdE/s1600/iorateem.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="78" src="http://3.bp.blogspot.com/-17Qi5RMpyos/Tt4RkmL8soI/AAAAAAAAAfE/QJA4B4KmjdE/s320/iorateem.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;b&gt;IO Type : Throughput (APConsole vs EM Console)&lt;/b&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-wrUVrwzga6o/Tt4UjEmvZ-I/AAAAAAAAAfQ/aF03M9AY8X0/s1600/iotypethrougapconsole.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="54" src="http://4.bp.blogspot.com/-wrUVrwzga6o/Tt4UjEmvZ-I/AAAAAAAAAfQ/aF03M9AY8X0/s320/iotypethrougapconsole.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-hlR2hKISYwc/Tt4Up6RK-TI/AAAAAAAAAfc/w0fcDYkpfv8/s1600/iotypethroughputem.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="63" src="http://2.bp.blogspot.com/-hlR2hKISYwc/Tt4Up6RK-TI/AAAAAAAAAfc/w0fcDYkpfv8/s320/iotypethroughputem.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;b&gt;IO Type : Rate (APConsole vs EM Console)&lt;/b&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-qG1mInhMRio/Tt4VkyK3t_I/AAAAAAAAAfo/pnfGDApMhws/s1600/iotypeiopsapconsole.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="54" src="http://3.bp.blogspot.com/-qG1mInhMRio/Tt4VkyK3t_I/AAAAAAAAAfo/pnfGDApMhws/s320/iotypeiopsapconsole.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-kKi7-XbSXJE/Tt4VqKhefqI/AAAAAAAAAf0/c2cSg7iugDQ/s1600/ioratetypeem.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="63" src="http://3.bp.blogspot.com/-kKi7-XbSXJE/Tt4VqKhefqI/AAAAAAAAAf0/c2cSg7iugDQ/s320/ioratetypeem.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Database load was generated with DBMS_RESOURCE_MANAGER.CALIBRATE_IO which gave the output of max_iops = 119, latency = 7, max_mbps = 19&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2414933436751311863-6671918124492774190?l=asanga-pradeep.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/6671918124492774190'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/6671918124492774190'/><link rel='alternate' type='text/html' href='http://asanga-pradeep.blogspot.com/2011/11/apconsole.html' title='APConsole'/><author><name>Asanga</name><uri>http://www.blogger.com/profile/06917616787415349832</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_90fhbVRwXDU/TECqZgHU0eI/AAAAAAAAAIo/hwI2BMzwDcI/S220/profile.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/-Bgotssi603c/Tt4QQ-R-dpI/AAAAAAAAAeI/PpZcNbFelzA/s72-c/apconsolew.png' height='72' width='72'/></entry><entry><id>tag:blogger.com,1999:blog-2414933436751311863.post-1688883713590560302</id><published>2011-11-22T07:01:00.000-08:00</published><updated>2011-11-22T07:01:24.508-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='kqlindp-bad-user'/><category scheme='http://www.blogger.com/atom/ns#' term='expdp'/><category scheme='http://www.blogger.com/atom/ns#' term='impdp'/><category scheme='http://www.blogger.com/atom/ns#' term='ora-600'/><category scheme='http://www.blogger.com/atom/ns#' term='11gR1'/><title type='text'>ORA-00600 [kqlindp-bad-user]</title><content type='html'>ORA-00600 [kqlindp-bad-user] error started to happen in a two node RAC running 11.1.0.7 on RHEL 64 bit system. &lt;br /&gt;&lt;br /&gt;Effect on the system was both expdp and impdp was giving the following errors on the client side and ORA-00600 [kqlindp-bad-user] being logged on the alert.log. For import&lt;br /&gt;&lt;pre&gt;UDI-31623: operation generated ORACLE error 31623&lt;br /&gt;ORA-31623: a job is not attached to this session via the specified handle&lt;br /&gt;ORA-06512: at "SYS.DBMS_DATAPUMP", line 2862&lt;br /&gt;ORA-06512: at "SYS.DBMS_DATAPUMP", line 4052&lt;br /&gt;ORA-06512: at line 1&lt;/pre&gt;For export&lt;br /&gt;&lt;pre&gt;UDE-31623: operation generated ORACLE error 31623&lt;br /&gt;ORA-31623: a job is not attached to this session via the specified handle&lt;br /&gt;ORA-06512: at "SYS.DBMS_DATAPUMP", line 2862&lt;br /&gt;ORA-06512: at "SYS.DBMS_DATAPUMP", line 4052&lt;br /&gt;ORA-06512: at line 1 and also any local PL/SQL package execution would a&lt;/pre&gt;The only metalink note (at the time of writing) related to this ora-600 was &lt;i&gt;ORA-600 [kqlindp-bad-user] [ID 753007.1]&lt;/i&gt; which wasn't much help. &lt;br /&gt;&lt;br /&gt;Other issue was execution of PL/SQL packages (even users own ones, not the pl/sql packages on a different schema) throw up the ORA-00600 [kqlindp-bad-user] error. The error was coming up on the client side (JDBC connections) as well as beign logged on the server side.&lt;br /&gt;&lt;br /&gt;There were plenty of metalink notes for errors UDI-31623 and ORA-31623 but none of those solutions helped. &lt;br /&gt;&lt;br /&gt;After raising a SR following steps were recommended which resolved the issue.&lt;br /&gt;&lt;br /&gt;1. Execute the following query and examine the output&lt;br /&gt;&lt;pre&gt;select owner#, name&lt;br /&gt;from sys.obj$ where owner# not in (select user# from sys.user$) and type# != 10;&lt;/pre&gt;This returned set of PL/SQL objects with owner id in this case all the objects seem to be from one owner.&lt;br /&gt;&lt;br /&gt;2. After submitting the above query output Oracle came back with &lt;i&gt;The output of the previous query shows non-existent users referenced by table sys.obj$. If  you run hcheck.full it may show some data dictionary inconsistency. The  ORA-600 error is not directly a consequence of the orphan obj$ rows; it  is caused by one or more of the bad obj# being present in the objerror$  table.&lt;/i&gt;&lt;br /&gt;&lt;br /&gt;Offered solution was &lt;i&gt;take a full backup and in order to fix the issue remove the row from objerror$:&lt;/i&gt;&lt;br /&gt;&lt;pre&gt;startup restrict&lt;br /&gt;delete from sys.objerror$ where obj# in (select obj# from sys.obj$ where owner# = &lt;i&gt;&lt;b&gt;owner_id from previous sql&lt;/b&gt;&lt;/i&gt; and owner# not in (select user# from sys.user$));&lt;br /&gt;commit;&lt;br /&gt;shutdown abort;&lt;/pre&gt;&lt;i&gt;The shutdown abort is required to save changes to the data dictionary. Once the database is shutdown, you must then perform a startup and a clean shutdown before it can be used again.&lt;/i&gt;&lt;br /&gt;&lt;pre&gt;startup restrict;&lt;br /&gt;shutdown immediate;&lt;br /&gt;startup;&lt;/pre&gt;3. This resolved the issue with ORA-00600 [kqlindp-bad-user] coming up when executing pl/sql packages but expdp and impdp still gave errors, but this time it was different error.&lt;br /&gt;&lt;pre&gt;ORA-31626: job does not exist&lt;br /&gt;ORA-31637: cannot create job SYS_EXPORT_FULL_01 for user SYSTEM&lt;br /&gt;ORA-06512: at "SYS.DBMS_SYS_ERROR", line 95&lt;br /&gt;ORA-06512: at "SYS.KUPV$FT_INT", line 601&lt;br /&gt;ORA-39080: failed to create queues "" and "" for Data Pump job&lt;br /&gt;ORA-06512: at "SYS.DBMS_SYS_ERROR", line 95&lt;br /&gt;ORA-06512: at "SYS.KUPC$QUE_INT", line 1550&lt;br /&gt;ORA-01403: no data found&lt;/pre&gt;4. After refereing metalink notes&lt;br /&gt;Impdp or Expdp Fails With ORA-31626 and ORA-31637 &lt;b&gt;[ID 345198.1]&lt;/b&gt;&lt;br /&gt;How To Reload Datapump Utility EXPDP/IMPDP &lt;b&gt;[ID 430221.1]&lt;/b&gt; and&lt;br /&gt;Invalid Objects After Installing a 10.2 Patchset &lt;b&gt;[ID 361025.1]&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;@?/rdbms/admin/catproc.sql + steps in 361025.1 and @?/rdbms/admin/utlrp was executed which resolved the issue.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2414933436751311863-1688883713590560302?l=asanga-pradeep.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/1688883713590560302'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/1688883713590560302'/><link rel='alternate' type='text/html' href='http://asanga-pradeep.blogspot.com/2011/11/ora-00600-kqlindp-bad-user.html' title='ORA-00600 [kqlindp-bad-user]'/><author><name>Asanga</name><uri>http://www.blogger.com/profile/06917616787415349832</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_90fhbVRwXDU/TECqZgHU0eI/AAAAAAAAAIo/hwI2BMzwDcI/S220/profile.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-2414933436751311863.post-3417753224237364145</id><published>2011-11-18T05:37:00.000-08:00</published><updated>2011-11-18T05:37:20.401-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='CLSC_RECEIVE'/><category scheme='http://www.blogger.com/atom/ns#' term='clusterware'/><category scheme='http://www.blogger.com/atom/ns#' term='11gR1'/><title type='text'>CLSC_RECEIVE: (*) ERROR 2</title><content type='html'>crsd.log would have lines similar to &lt;pre&gt;2011-11-17 19:12:19.860: [ COMMCRS][1455892800]clsc_receive: (0x1582a560) error 2&lt;/pre&gt;According to &lt;b&gt;metalink note 733659.1&lt;/b&gt; &lt;i&gt;"This is basically a warning/informational message. The "error 2" is a generic failure code for a single message transmit."&lt;/i&gt;&lt;br /&gt;&lt;br /&gt;More on &lt;b&gt;Crsd.Log Showing The Following Message: CLSC_RECEIVE: (*) ERROR 2 [ID 733659.1]&lt;/b&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2414933436751311863-3417753224237364145?l=asanga-pradeep.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/3417753224237364145'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/3417753224237364145'/><link rel='alternate' type='text/html' href='http://asanga-pradeep.blogspot.com/2011/11/clscreceive-error-2.html' title='CLSC_RECEIVE: (*) ERROR 2'/><author><name>Asanga</name><uri>http://www.blogger.com/profile/06917616787415349832</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_90fhbVRwXDU/TECqZgHU0eI/AAAAAAAAAIo/hwI2BMzwDcI/S220/profile.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-2414933436751311863.post-8551086384263245133</id><published>2011-11-16T07:35:00.000-08:00</published><updated>2012-02-03T07:37:27.258-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='11gR2'/><category scheme='http://www.blogger.com/atom/ns#' term='11.2.0.3'/><category scheme='http://www.blogger.com/atom/ns#' term='shm'/><category scheme='http://www.blogger.com/atom/ns#' term='11.2.0.2'/><category scheme='http://www.blogger.com/atom/ns#' term='memory'/><category scheme='http://www.blogger.com/atom/ns#' term='shared memory'/><category scheme='http://www.blogger.com/atom/ns#' term='sga'/><category scheme='http://www.blogger.com/atom/ns#' term='oracle'/><title type='text'>Multiple Shared Memory Segments Created by Default on 11.2.0.3</title><content type='html'>There appear to be a change in the way shared memory segments are allocated in 11.2.0.3 when using automatic shared memory management (ASMM not AMM). &lt;b&gt;Metalink note 15566.1&lt;/b&gt; describes the three possible ways shared memory segments are allocated to depending on the SHMMAX value and the size of the SGA. They are "&lt;i&gt;one-segment,contiguous multi-segment, and non-contiguous multi-segment.&lt;/i&gt;"&lt;br /&gt;&lt;br /&gt;When the SHMMAX value is larger than the SGA only one shared memory segment would be created. This was the behavior seen from 10gR2 upto 11.2.0.2. But as of 11.2.0.3 no matter how big the SHMMAX three segments get created. &lt;br /&gt;&lt;br /&gt;Below is a comparison of segment creation for two databases one with 11.2.0.2 and other with 11.2.0.3. Both database reside in the same physical server. &lt;br /&gt;&lt;br /&gt;The SHM* values on the server.&lt;br /&gt;&lt;pre&gt;ipcs -lm&lt;br /&gt;&lt;br /&gt;------ Shared Memory Limits --------&lt;br /&gt;max number of segments = 4096&lt;br /&gt;&lt;b&gt;max seg size (kbytes) = 67108864&lt;/b&gt;&lt;br /&gt;max total shared memory (kbytes) = 17179869184&lt;br /&gt;min seg size (bytes) = 1&lt;/pre&gt;The maximum shared segment size possible is 64GB and the system has 12GB of RAM. Server is running RHEL 5 (2.6.18-194.el5). There are no other databases or applications running beside these two databases. Only one of these database will be up and running at one time. Server was rebooted after shutting down one database and before starting the other.&lt;br /&gt;&lt;br /&gt;First the 11.2.0.2 database information&lt;br /&gt;&lt;pre&gt;memory_max_target                    big integer 0&lt;br /&gt;memory_target                        big integer 0&lt;br /&gt;pga_aggregate_target                 big integer 1200M&lt;br /&gt;sga_max_size                         big integer 3600M&lt;br /&gt;sga_target                           big integer 3600M&lt;/pre&gt;&lt;a href="http://asanga-pradeep.blogspot.com/2008/03/shared-memory-semaphores-used-by-oracle.html"&gt;Find the shared memory segments used by this database.&lt;/a&gt;&lt;br /&gt;&lt;pre&gt;$ORACLE_HOME/bin/sysresv&lt;br /&gt;&lt;br /&gt;IPC Resources for ORACLE_SID "ent11g2" :&lt;br /&gt;Shared Memory:&lt;br /&gt;ID              KEY&lt;br /&gt;&lt;b&gt;60751874        0x3b6207ac&lt;/b&gt;&lt;br /&gt;Semaphores:&lt;br /&gt;ID              KEY&lt;br /&gt;10551318        0x74afa7cc&lt;br /&gt;Oracle Instance alive for sid "ent11g2"&lt;/pre&gt;The shared memory ID and key will be used to match the key shown with ipcs command. Since this is the only database running at this time and also shmmax is larger than the sga size only one shared segment is expected&lt;br /&gt;&lt;pre&gt;------ Shared Memory Segments --------&lt;br /&gt;key        shmid      owner      perms      bytes      nattch     status&lt;br /&gt;&lt;b&gt;0x3b6207ac 60751874&lt;/b&gt;   oracle    660        3776970752  29&lt;/pre&gt;The key and shmid match confirming that this is the shared segment created for this database.&lt;br /&gt;&lt;br /&gt;Now the 11.2.0.3 database information (similar size sga as 11.2.0.2)&lt;br /&gt;&lt;pre&gt;memory_max_target                    big integer 0&lt;br /&gt;memory_target                        big integer 0&lt;br /&gt;pga_aggregate_target                 big integer 1200M&lt;br /&gt;sga_max_size                         big integer 3600M&lt;br /&gt;sga_target                           big integer 3600M&lt;/pre&gt;Finding the shared memory segment for the database as above&lt;br /&gt;&lt;pre&gt;$ORACLE_HOME/bin/sysresv&lt;br /&gt;&lt;br /&gt;IPC Resources for ORACLE_SID "ent11g3" :&lt;br /&gt;Shared Memory:&lt;br /&gt;ID              KEY&lt;br /&gt;&lt;b&gt;61079554        0x00000000&lt;br /&gt;61112324        0x00000000&lt;br /&gt;61145093        0xf9058128&lt;/b&gt;&lt;br /&gt;Semaphores:&lt;br /&gt;ID              KEY&lt;br /&gt;10977302        0xf1843220&lt;br /&gt;Oracle Instance alive for sid "ent11g3"&lt;/pre&gt;Three segments have been created. Looking at the ipcs command output&lt;br /&gt;&lt;pre&gt;ipcs -m&lt;br /&gt;&lt;br /&gt;------ Shared Memory Segments --------&lt;br /&gt;key        shmid      owner      perms      bytes      nattch     status&lt;br /&gt;&lt;b&gt;0x00000000 61079554&lt;/b&gt;   oracle    640        33554432     28&lt;br /&gt;&lt;b&gt;0x00000000 61112324&lt;/b&gt;   oracle    640        3741319168   28&lt;br /&gt;&lt;b&gt;0xf9058128 61145093&lt;/b&gt;   oracle    640        2097152      28&lt;/pre&gt;Instead of one as before three shared segments are created. If the size of all these segments are added up it would be equal (33554432 + 3741319168 + 2097152 = 3776970752) to the size of the single segment created with 11.2.0.2 database.&lt;br /&gt;&lt;br /&gt;This is the behavior shown on all 11.2.0.3 databases whether they were &lt;a href="http://asanga-pradeep.blogspot.com/2011/10/upgrading-from-11202-to-11203.html"&gt;upgraded from 11.2.0.2 to 11.2.0.3&lt;/a&gt; or created new as in this case. Another observation is in all cases the last segment is of 2M size and second segment is the largest and close to the actual SGA size while size of the first segment changes depending on the SGA size.&lt;br /&gt;&lt;br /&gt;Unless this a bug introduced in 11.2.0.3, this signals the change in behavior for allocating shared memory segments when using ASMM. &lt;br /&gt;&lt;br /&gt;Interestingly even with AMM the number of created shared memory segments between 11.2.0.2 and 11.2.0.3 are 1 to 3 (this may or may not be related to the above observations and &lt;b&gt;ipcs is not a correct way&lt;/b&gt; of finding out about the shared memory segments when using AMM. More on &lt;b&gt;metalink note 731658.1&lt;/b&gt;)&lt;br /&gt;&lt;br /&gt;With AMM on 11.2.0.2 &lt;br /&gt;&lt;pre&gt;$ORACLE_HOME/bin/sysresv&lt;br /&gt;IPC Resources for ORACLE_SID "ent11g2" :&lt;br /&gt;Shared Memory:&lt;br /&gt;ID              KEY&lt;br /&gt;&lt;b&gt;3244034         0x3b6207ac&lt;/b&gt;&lt;br /&gt;Semaphores:&lt;br /&gt;ID              KEY&lt;br /&gt;3801110         0x74afa7cc&lt;br /&gt;Oracle Instance alive for sid "ent11g2"&lt;/pre&gt;With ipcs -m &lt;br /&gt;&lt;pre&gt;ipcs -m&lt;br /&gt;&lt;br /&gt;------ Shared Memory Segments --------&lt;br /&gt;key        shmid      owner      perms      bytes      nattch     status&lt;br /&gt;&lt;b&gt;0x3b6207ac 3244034&lt;/b&gt;    oracle    660        4096        0&lt;/pre&gt;With AMM on 11.2.0.3&lt;br /&gt;&lt;pre&gt;$ORACLE_HOME/bin/sysresv&lt;br /&gt;IPC Resources for ORACLE_SID "ent11g3" :&lt;br /&gt;Shared Memory:&lt;br /&gt;ID              KEY&lt;br /&gt;&lt;b&gt;3047426         0x00000000&lt;br /&gt;3080196         0x00000000&lt;br /&gt;3112965         0xf9058128&lt;/b&gt;&lt;br /&gt;Semaphores:&lt;br /&gt;ID              KEY&lt;br /&gt;3506198         0xf1843220&lt;br /&gt;Oracle Instance alive for sid "ent11g3"&lt;/pre&gt;ipcs -m output shows three segments&lt;br /&gt;&lt;pre&gt;ipcs -m&lt;br /&gt;&lt;br /&gt;------ Shared Memory Segments --------&lt;br /&gt;key        shmid      owner      perms      bytes      nattch     status&lt;br /&gt;&lt;b&gt;0x00000000 3047426&lt;/b&gt;    oracle    640        4096       0&lt;br /&gt;&lt;b&gt;0x00000000 3080196&lt;/b&gt;    oracle    640        4096       0&lt;br /&gt;&lt;b&gt;0xf9058128 3112965&lt;/b&gt;    oracle    640        4096       0&lt;/pre&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-size: large;"&gt;Update 29 November 2011&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;Had raised a SR about this and oracle seem to be missing the point that 11.2.0.3 is creating more segments than 11.2.0.2. Instead focusing on shmmax values which was set to 64GB saying it's too much. This has no effect on the number of segments,system only creates segments of requested sizes. Only good thing to come out of this so far is a request for a strace output. Start the database with &lt;br /&gt;&lt;pre&gt;strace -f -o start.out sqlplus "/ as sysdba"&lt;/pre&gt;once started exit the SQL prompt. This may get stuck and might require killing the process manually. &lt;br /&gt;ipcs -m output &lt;br /&gt;&lt;pre&gt;ipcs -m&lt;br /&gt;------ Shared Memory Segments --------&lt;br /&gt;key        shmid      owner      perms      bytes      nattch     status&lt;br /&gt;0x00000000 &lt;b&gt;8880130    &lt;/b&gt;oracle    640        &lt;b&gt;33554432    &lt;/b&gt;25&lt;br /&gt;0x00000000 &lt;b&gt;8912900    &lt;/b&gt;oracle    640        &lt;b&gt;3741319168  &lt;/b&gt;25&lt;br /&gt;0xf9058128 &lt;b&gt;8945669    &lt;/b&gt;oracle    640        &lt;b&gt;2097152     &lt;/b&gt;25&lt;/pre&gt;sysresv output&lt;br /&gt;&lt;pre&gt;$ORACLE_HOME/bin/sysresv&lt;br /&gt;&lt;br /&gt;IPC Resources for ORACLE_SID "ent11g3" :&lt;br /&gt;Shared Memory:&lt;br /&gt;ID              KEY&lt;br /&gt;&lt;b&gt;8880130         &lt;/b&gt;0x00000000&lt;br /&gt;&lt;b&gt;8912900         &lt;/b&gt;0x00000000&lt;br /&gt;&lt;b&gt;8945669         &lt;/b&gt;0xf9058128&lt;br /&gt;Semaphores:&lt;br /&gt;ID              KEY&lt;br /&gt;9502742         0xf1843220&lt;br /&gt;Oracle Instance alive for sid "ent11g3"&lt;/pre&gt;From the strace output these segment creation system calls could be picked up. Size of the segment and segment id has been highlighted.&lt;br /&gt;&lt;pre&gt;21293 shmget(IPC_PRIVATE, &lt;b&gt;33554432&lt;/b&gt;, IPC_CREAT|IPC_EXCL|0640) = &lt;b&gt;8880130&lt;/b&gt;&lt;br /&gt;21293 mmap(NULL, 1048576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x2b8cd1281000&lt;br /&gt;21293 getrlimit(RLIMIT_STACK, {rlim_cur=32768*1024, rlim_max=RLIM_INFINITY}) = 0&lt;br /&gt;21293 open("/proc/self/maps", O_RDONLY) = 11&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;21293 shmget(IPC_PRIVATE, &lt;b&gt;3741319168&lt;/b&gt;, IPC_CREAT|IPC_EXCL|0640) = &lt;b&gt;8912900&lt;/b&gt;&lt;br /&gt;21293 getrlimit(RLIMIT_STACK, {rlim_cur=32768*1024, rlim_max=RLIM_INFINITY}) = 0&lt;br /&gt;21293 open("/proc/self/maps", O_RDONLY) = 11&lt;br /&gt;&lt;br /&gt;21293 shmget(0xf9058128, &lt;b&gt;2097152&lt;/b&gt;, IPC_CREAT|IPC_EXCL|0640) = &lt;b&gt;8945669&lt;/b&gt;&lt;br /&gt;21293 shmget(0xf9058129, 4096, 0)       = -1 ENOENT (No such file or directory)&lt;br /&gt;21293 shmget(0xf9058129, 4096, 0)       = -1 ENOENT (No such file or directory)&lt;br /&gt;21293 shmget(0xf9058129, 0, 0)          = -1 ENOENT (No such file or directory)&lt;br /&gt;21293 shmget(0xf905812a, 4096, 0)       = -1 ENOENT (No such file or directory)&lt;br /&gt;21293 shmget(0xf905812a, 4096, 0)       = -1 ENOENT (No such file or directory)&lt;br /&gt;21293 shmget(0xf905812a, 0, 0)          = -1 ENOENT (No such file or directory)&lt;br /&gt;21293 shmget(0xf905812b, 4096, 0)       = -1 ENOENT (No such file or directory)&lt;br /&gt;21293 shmget(0xf905812b, 4096, 0)       = -1 ENOENT (No such file or directory)&lt;br /&gt;21293 shmget(0xf905812b, 0, 0)          = -1 ENOENT (No such file or directory)&lt;br /&gt;21293 getrlimit(RLIMIT_STACK, {rlim_cur=32768*1024, rlim_max=RLIM_INFINITY}) = 0&lt;br /&gt;21293 open("/proc/self/maps", O_RDONLY) = 11&lt;/pre&gt;However on 11.2.0.2 database you only see one segment creation system call on the strace output matching the entire sga size.&lt;br /&gt;&lt;pre&gt;ipcs -m&lt;br /&gt;&lt;br /&gt;------ Shared Memory Segments --------&lt;br /&gt;key        shmid      owner      perms      bytes      nattch     status&lt;br /&gt;0x3b6207ac &lt;b&gt;9142278    &lt;/b&gt;oracle    660        &lt;b&gt;3776970752   &lt;/b&gt;30&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;21778 munmap(0x2af10d7c3000, 4096)      = 0&lt;br /&gt;21778 shmget(0x3b6207ac, &lt;b&gt;3776970752&lt;/b&gt;, IPC_CREAT|IPC_EXCL|0660) = &lt;b&gt;9142278&lt;/b&gt;&lt;br /&gt;21778 shmget(0x3b6207ad, 4096, 0)       = -1 ENOENT (No such file or directory)&lt;br /&gt;21778 shmget(0x3b6207ad, 4096, 0)       = -1 ENOENT (No such file or directory)&lt;br /&gt;21778 shmget(0x3b6207ad, 0, 0)          = -1 ENOENT (No such file or directory)&lt;br /&gt;21778 shmget(0x3b6207ae, 4096, 0)       = -1 ENOENT (No such file or directory)&lt;br /&gt;21778 shmget(0x3b6207ae, 4096, 0)       = -1 ENOENT (No such file or directory)&lt;br /&gt;21778 shmget(0x3b6207ae, 0, 0)          = -1 ENOENT (No such file or directory)&lt;br /&gt;21778 shmget(0x3b6207af, 4096, 0)       = -1 ENOENT (No such file or directory)&lt;br /&gt;21778 shmget(0x3b6207af, 4096, 0)       = -1 ENOENT (No such file or directory)&lt;br /&gt;21778 shmget(0x3b6207af, 0, 0)          = -1 ENOENT (No such file or directory)&lt;br /&gt;21778 mmap(NULL, 1048576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x2af10d7c3000&lt;br /&gt;21778 getrlimit(RLIMIT_STACK, {rlim_cur=32768*1024, rlim_max=RLIM_INFINITY}) = 0&lt;br /&gt;21778 open("/proc/self/maps", O_RDONLY) = 5&lt;/pre&gt;&lt;b&gt;&lt;span style="font-size: large;"&gt;Update 21 December 2011&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;Latest update is this issue could be related to following bug &lt;i&gt;Bug 13360043 - ORA-27123: UNABLE TO ATTACH TO SHARED MEMORY SEGMENT STARTING 11.2.0.3 DATABASE&lt;/i&gt;&lt;br /&gt;Oracle still investigating.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-size: large;"&gt;Update 28 December 2011&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;Oracle asked to comapre the db_block_numa value on both 11.2.0.2 and 11.2.0.3. On both databases it was the same value&lt;br /&gt;&lt;pre&gt;select x.ksppinm, y.ksppstvl from x$ksppi x , x$ksppcv y where x.indx = y.indx and x.ksppinm like '\_db_block_numa%' escape '\' order by x.ksppinm;&lt;br /&gt;&lt;br /&gt;KSPPINM KSPPSTVL&lt;br /&gt;-----------------&lt;br /&gt;_db_block_numa 1&lt;/pre&gt;Then asked to change the enable_NUMA_optimization to TRUE only on 11.2.0.3 and see if the same behavior exists. Logic was with _enable_NUMA_optimization=false and _db_block_numa=1 oracle would allocate only 1 shared segment for the SGA. (Couldn't understand why then change it to true). By default _enable_NUMA_optimization is false, could be found out with &lt;br /&gt;&lt;pre&gt;select x.ksppinm, y.ksppstvl from x$ksppi x , x$ksppcv y where x.indx = y.indx and x.ksppinm like '\_enable_NUMA_optimization%' escape '\' order by x.ksppinm;&lt;/pre&gt;Changed it to true ask instructed but no change.&lt;br /&gt;&lt;br /&gt;Following two metalink notes also listed&lt;br /&gt;11G on HP Creates 6 Shared Memory Segments &lt;b&gt;[Doc ID 601552.1]&lt;/b&gt;&lt;br /&gt;Shared Memory Segment Is Split Up In Different Pieces With NUMA Setting &lt;b&gt;[Doc ID 429872.1]&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-size: large;"&gt;Update 06 January 2012&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;Oracle has finally reproduced the behavior in house. This will be logged as a bug. Blog will be updated with the findings.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-size: large;"&gt;Update 03 February 2012&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;Oracle has created a metalink note explaining this behavior. W&lt;i&gt;hy Multiple Shared Memory Segments are Created From 11.2.0.3 &lt;b&gt;[ID 1399908.1]&lt;/b&gt;&lt;/i&gt;&lt;br /&gt;This segment creation behavior change is the side effect of a fix for the unpublished bug 12654172. &lt;strike&gt;Not yet known if this side effect is localised to 11.2.0.3 and will be "fixed"  with a PSU or in 11.2.0.4 or 12.1&lt;/strike&gt;&lt;br /&gt;It seem this is the expected behavior going forward from 11.2.0.3. This means that one segment model described in 15566.1 won't be there anymore.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2414933436751311863-8551086384263245133?l=asanga-pradeep.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/8551086384263245133'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/8551086384263245133'/><link rel='alternate' type='text/html' href='http://asanga-pradeep.blogspot.com/2011/11/multiple-shared-memory-segments-created.html' title='Multiple Shared Memory Segments Created by Default on 11.2.0.3'/><author><name>Asanga</name><uri>http://www.blogger.com/profile/06917616787415349832</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_90fhbVRwXDU/TECqZgHU0eI/AAAAAAAAAIo/hwI2BMzwDcI/S220/profile.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-2414933436751311863.post-2847554626474275770</id><published>2011-11-16T05:26:00.000-08:00</published><updated>2011-11-16T05:26:57.111-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='time synchronization'/><category scheme='http://www.blogger.com/atom/ns#' term='rac'/><category scheme='http://www.blogger.com/atom/ns#' term='ntp'/><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><title type='text'>Configuring NTP Service on Linux</title><content type='html'>Servers' time fall out of sync with one another after some time. This is problematic if the time gap between each server is wide such that it affects the execution of business logic. In RAC configuration this could even lead to node eviction. &lt;br /&gt;&lt;br /&gt;The solution is to sync all servers with a NTP server that keep accurate time. For this to work the servers must be able to connect to the internet to access these NTP servers. But for security reason this may not always be possible. However it is possible to have a setup as shown below where only one server connect to the NTP servers and all others get their time sync from this "internal" server without having to connect to the internet. &lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-x1E7gaiSkKE/TsOvRWf4TdI/AAAAAAAAAbg/Qv-gJrcInAE/s1600/ntpdiagram.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="189" src="http://3.bp.blogspot.com/-x1E7gaiSkKE/TsOvRWf4TdI/AAAAAAAAAbg/Qv-gJrcInAE/s320/ntpdiagram.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;It is assumed ntp is installed on the Linux servers if not install.&lt;br /&gt;&lt;br /&gt;1.  Backup the current /etc/ntp.conf file on all servers.&lt;br /&gt;&lt;pre&gt;mv /etc/ntp.conf /etc/ntp.conf.orig&lt;/pre&gt;2. On the server that is going to act as the internal NTP server create a new ntp.conf file (make sure it's owned by root and permissions are 644) in /etc and add the following entries. Important parts are shown in bold&lt;br /&gt;&lt;pre&gt;server  &lt;b&gt;ntpserver1.org&lt;/b&gt;           &lt;br /&gt;server  &lt;b&gt;ntpserver2.org&lt;/b&gt;           &lt;br /&gt;&lt;br /&gt;restrict &lt;b&gt;ntpserver1.org&lt;/b&gt;  mask 255.255.255.255 &lt;b&gt;nomodify notrap noquery&lt;/b&gt;&lt;br /&gt;restrict &lt;b&gt;ntpserver1.org&lt;/b&gt;  mask 255.255.255.255 &lt;b&gt;nomodify notrap noquery&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;restrict &lt;b&gt;192.168.0.0 mask 255.255.255.0&lt;/b&gt; nomodify notrap&lt;br /&gt;&lt;br /&gt;restrict 127.0.0.1&lt;br /&gt;restrict -6 ::1&lt;br /&gt;&lt;br /&gt;# Undisciplined Local Clock. This is a fake driver intended for backup&lt;br /&gt;# and when no outside source of synchronized time is available.&lt;br /&gt;server  127.127.1.0     # local clock&lt;br /&gt;fudge   127.127.1.0 stratum 10&lt;br /&gt;&lt;br /&gt;driftfile /var/lib/ntp/drift&lt;br /&gt;&lt;br /&gt;# Key file containing the keys and key identifiers used when operating&lt;br /&gt;# with symmetric key cryptography.&lt;br /&gt;keys /etc/ntp/keys&lt;br /&gt;&lt;br /&gt;# Specify the key identifiers which are trusted.&lt;br /&gt;#trustedkey 4 8 42&lt;br /&gt;&lt;br /&gt;# Specify the key identifier to use with the ntpdc utility.&lt;br /&gt;#requestkey 8&lt;br /&gt;&lt;br /&gt;# Specify the key identifier to use with the ntpq utility.&lt;br /&gt;#controlkey 8&lt;/pre&gt;ntpserver1/2.org are the NTP servers that are being used for synchronization. (netserver1/2.org used here is just an example). &lt;br /&gt;&lt;br /&gt;The restirct line tells what is allowed for the NTP servers, in this case NTP servers are not allowed to modify nor query the local server. The mask 255.255.255.255 limits access to the single IP address of the remote NTP servers. &lt;br /&gt;&lt;br /&gt;Third line is the key for allowing other servers to get the time from this server. This is done by removing the noquery line from the restrict and specifiying computers coming from which network segment are allowed to query. In this case all the servers in the local network would be able to get their time sync from this server.&lt;br /&gt;&lt;br /&gt;3. Leave the other options as it is.&lt;br /&gt;&lt;br /&gt;4. If the server time is lagging far behind the standard time, then use the ntpdate command to get the time updated allowing ntp service to start with a small time lag. To do this first stop the ntp service &lt;pre&gt;/etc/init.d/ntpd stop&lt;/pre&gt;and then run &lt;pre&gt;ntpdate -u ntpserver1.org&lt;br /&gt;16 Nov 12:58:49 ntpdate[13104]: adjust time server 129.67.1.160 offset -0.070418 sec&lt;/pre&gt;Run the above command 2-3 times. &lt;br /&gt;&lt;br /&gt;5. Start the ntp service and monitor the ntp synchronization in progress&lt;pre&gt;/etc/init.d/ntpd start&lt;br /&gt;&lt;br /&gt;watch -n 5 ntpq -p&lt;br /&gt;&lt;br /&gt;Every 5.0s: ntpq -p             Wed Nov 16 13:08:44 2011&lt;br /&gt;&lt;br /&gt;     remote           refid      st t when poll reach   delay   offset  jitter&lt;br /&gt;==============================================================================&lt;br /&gt;*ntpserver1.org 192.6.2.82     2 u    7   64  377    3.732  -67.808   0.520&lt;br /&gt;+ntpserver2.org 192.6.2.74     2 u   61   64  377    3.755  -67.672  17.760&lt;br /&gt; LOCAL(0)        .LOCL.          10 l   53   64  377    0.000    0.000   0.001&lt;/pre&gt;6. On other servers (servers get their time sync from the internal NTP server) eg. App and DB servers on the above diagram, create a new /etc/ntp.conf file and add the following entries&lt;pre&gt;&lt;b&gt;server  internal_ntp.server.net&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;restrict internal_ntp.server.net   mask 255.255.255.255 nomodify notrap noquery&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;restrict 127.0.0.1&lt;br /&gt;restrict -6 ::1&lt;br /&gt;&lt;br /&gt;# Undisciplined Local Clock. This is a fake driver intended for backup&lt;br /&gt;# and when no outside source of synchronized time is available.&lt;br /&gt;server  127.127.1.0     # local clock&lt;br /&gt;fudge   127.127.1.0 stratum 10&lt;br /&gt;&lt;br /&gt;driftfile /var/lib/ntp/drift&lt;br /&gt;&lt;br /&gt;# Key file containing the keys and key identifiers used when operating&lt;br /&gt;# with symmetric key cryptography.&lt;br /&gt;keys /etc/ntp/keys&lt;br /&gt;&lt;br /&gt;# Specify the key identifiers which are trusted.&lt;br /&gt;#trustedkey 4 8 42&lt;br /&gt;&lt;br /&gt;# Specify the key identifier to use with the ntpdc utility.&lt;br /&gt;#requestkey 8&lt;br /&gt;&lt;br /&gt;# Specify the key identifier to use with the ntpq utility.&lt;br /&gt;#controlkey 8&lt;/pre&gt;In this configuraiton the ntp server would be the hostname or the IP of the internal ntp server. &lt;br /&gt;&lt;br /&gt;7. If this is a RAC server then before start the ntp service add -x to /etc/sysconfig/ntpd file(&lt;b&gt;metalink note 551704.1&lt;/b&gt;) &lt;pre&gt;# Drop root to id 'ntp:ntp' by default.&lt;br /&gt;OPTIONS="-x -u ntp:ntp -p /var/run/ntpd.pid"&lt;/pre&gt;8. Start the ntp service and monitor the synchronization progress&lt;pre&gt;Every 5.0s: ntpq -p Wed Nov 16 13:19:40 2011&lt;br /&gt;&lt;br /&gt;     remote           refid      st t when poll reach   delay   offset  jitter&lt;br /&gt;==============================================================================&lt;br /&gt; internal_ntp_IP    163.1.2.160      3 u    1   64    1    0.279    0.074   0.001&lt;br /&gt; LOCAL(0)        .LOCL.          10 l    -   64    0    0.000    0.000   0.001&lt;/pre&gt;&lt;br /&gt;Useful metalink notes&lt;br /&gt;&lt;br /&gt;NTP Information and Setup&lt;b&gt; [ID 1010136.1]&lt;/b&gt;&lt;br /&gt;Ntpd Does not Use Defined NTP Server &lt;b&gt;[ID 1178614.1]&lt;/b&gt;&lt;br /&gt;An Example NTP Client Configuration to use with Oracle Clusterware 11gR2 &lt;b&gt;[ID 1104473.1]&lt;/b&gt;&lt;br /&gt;Linux OS Service ntpd &lt;b&gt;[ID 551704.1]&lt;/b&gt;&lt;br /&gt;How to Set Up a Network Time Protocol (NTP) Client in Solaris &lt;b&gt;[ID 1005887.1]&lt;/b&gt;&lt;br /&gt;CTSSD Runs in Observer Mode Even Though No Time Sync Software is Running &lt;b&gt;[ID 1054006.1]&lt;/b&gt;&lt;br /&gt;NTP leap second event causing Oracle Clusterware node reboot &lt;b&gt;[ID 759143.1]&lt;/b&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2414933436751311863-2847554626474275770?l=asanga-pradeep.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/2847554626474275770'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/2847554626474275770'/><link rel='alternate' type='text/html' href='http://asanga-pradeep.blogspot.com/2011/11/configuring-ntp-service-on-linux.html' title='Configuring NTP Service on Linux'/><author><name>Asanga</name><uri>http://www.blogger.com/profile/06917616787415349832</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_90fhbVRwXDU/TECqZgHU0eI/AAAAAAAAAIo/hwI2BMzwDcI/S220/profile.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/-x1E7gaiSkKE/TsOvRWf4TdI/AAAAAAAAAbg/Qv-gJrcInAE/s72-c/ntpdiagram.png' height='72' width='72'/></entry><entry><id>tag:blogger.com,1999:blog-2414933436751311863.post-2267707729279780887</id><published>2011-11-11T07:15:00.000-08:00</published><updated>2011-11-11T07:20:02.461-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='grid infrastructure'/><category scheme='http://www.blogger.com/atom/ns#' term='11gR2'/><category scheme='http://www.blogger.com/atom/ns#' term='11.2.0.3'/><category scheme='http://www.blogger.com/atom/ns#' term='active database'/><category scheme='http://www.blogger.com/atom/ns#' term='role separation'/><category scheme='http://www.blogger.com/atom/ns#' term='ASM'/><category scheme='http://www.blogger.com/atom/ns#' term='oracle'/><title type='text'>ASM for Standalone Server in 11gR2 with Role Separation</title><content type='html'>One of the major differences in 11gR2 compared to previous version is the moving of ASM configuration to Grid Infrastructure. Therefore to setup a standalone database with ASM, grid infrastructure is needed.&lt;br /&gt;In this blog the &lt;i&gt;&lt;b&gt;grid&lt;/b&gt;&lt;/i&gt; user will be used for installing and managing grid infrastructure and &lt;b&gt;oracle&lt;i&gt;&lt;/i&gt;&lt;/b&gt; user will be used for installing and managing the database software. This is not a comprehensive step by step guide, some general database installation steps are not shown here focusing mainly on the steps that are specific to the topic at hand. The software used here are 11gR2 (11.2.0.3)&lt;br /&gt;&lt;br /&gt;1. Create the following groups in the OS&lt;br /&gt;&lt;pre&gt;groupadd oinstall&lt;br /&gt;groupadd dba&lt;br /&gt;groupadd oper&lt;br /&gt;groupadd asmadmin&lt;br /&gt;groupadd asmdba&lt;br /&gt;groupadd asmoper&lt;/pre&gt;and create the grid user and oracle user as follows&lt;br /&gt;&lt;pre&gt;useradd -g oinstall -G asmadmin,asmdba,asmoper grid&lt;br /&gt;useradd -g oinstall -G dba,oper,asmdba oracle&lt;/pre&gt;If Oralce user does not have the asmdba then ASM disk groups created by grid user won't be visible to Oracle user.&lt;br /&gt;&lt;br /&gt;2. Create the grid infrastructure location and make the ownership as grid:oinstall&lt;br /&gt;&lt;pre&gt;cd /opt/app/11.2.0/&lt;br /&gt;ls -l&lt;br /&gt;drwxr-xr-x 2 grid oinstall 4096 Nov  3 17:41 grid&lt;/pre&gt;3. Install and configure oracleasm libs. User grid user and asmdba as the oracleasm interface user and group&lt;br /&gt;&lt;pre&gt;/etc/init.d/oracleasm configure -i&lt;br /&gt;Configuring the Oracle ASM library driver.&lt;br /&gt;&lt;br /&gt;This will configure the on-boot properties of the Oracle ASM library&lt;br /&gt;driver.  The following questions will determine whether the driver is&lt;br /&gt;loaded on boot and what permissions it will have.  The current values&lt;br /&gt;will be shown in brackets ('[]').  Hitting &lt;enter&gt; without typing an&lt;br /&gt;answer will keep that current value.  Ctrl-C will abort.&lt;br /&gt;&lt;br /&gt;Default user to own the driver interface []: grid&lt;br /&gt;Default group to own the driver interface []: asmdba&lt;br /&gt;Start Oracle ASM library driver on boot (y/n) [n]: y&lt;br /&gt;Scan for Oracle ASM disks on boot (y/n) [y]: y&lt;br /&gt;Writing Oracle ASM library driver configuration: done&lt;br /&gt;Initializing the Oracle ASMLib driver:                     [  OK  ]&lt;br /&gt;Scanning the system for Oracle ASMLib disks:               [  OK  ]&lt;br /&gt;/etc/init.d/oracleasm createdisk DATA /dev/sdb1&lt;br /&gt;Marking disk "DATA" as an ASM disk:                        [  OK  ]&lt;br /&gt; /etc/init.d/oracleasm createdisk FLASH /dev/sdc1&lt;br /&gt;Marking disk "FLASH" as an ASM disk:                       [  OK  ]&lt;/enter&gt;&lt;/pre&gt;4. Login as grid user and start the grid infrastructure installation and select grid infrastrcuture for standalone server.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-xZgfdWxih54/Tr0yYf3ryBI/AAAAAAAAAXU/-lPgIWuif3U/s1600/stadlone1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="240" src="http://4.bp.blogspot.com/-xZgfdWxih54/Tr0yYf3ryBI/AAAAAAAAAXU/-lPgIWuif3U/s320/stadlone1.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;5. Create a ASM diskgroup to store data files. On this step only one diskgroup could be created. Once the grid infrastrcuture is installed use ASMCA to create any additional diskgroups needed.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-KeqGIcaZCnY/Tr0yzw5lGaI/AAAAAAAAAXg/VjPAgRULCiQ/s1600/stadlone2.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="240" src="http://4.bp.blogspot.com/-KeqGIcaZCnY/Tr0yzw5lGaI/AAAAAAAAAXg/VjPAgRULCiQ/s320/stadlone2.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;6. Select the OS group related ASM activities. If the OS groups mentioned in step 1 are created this step would come pre-selected as shown below. &lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-nA5SmIOvvdc/Tr0zGOtrQDI/AAAAAAAAAXs/xvSkmmtDbv0/s1600/stadlone3.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="239" src="http://3.bp.blogspot.com/-nA5SmIOvvdc/Tr0zGOtrQDI/AAAAAAAAAXs/xvSkmmtDbv0/s320/stadlone3.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;7. When grid infrastructure is installed for RAC it is advised not to install it as a sub directory of ORACLE BASE. But in this case trying to install out side oracle base would give a warning as shown below.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-cK9k5mBxrY0/Tr00JLdZ4iI/AAAAAAAAAYE/Q3p9miO73Xk/s1600/stadlone4.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="241" src="http://1.bp.blogspot.com/-cK9k5mBxrY0/Tr00JLdZ4iI/AAAAAAAAAYE/Q3p9miO73Xk/s320/stadlone4.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-Rw9I3rObYfM/Tr00PQBbVTI/AAAAAAAAAYQ/ED7hjj08d4w/s1600/stadlone5.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="238" src="http://4.bp.blogspot.com/-Rw9I3rObYfM/Tr00PQBbVTI/AAAAAAAAAYQ/ED7hjj08d4w/s320/stadlone5.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;The grid infrastructure path is selected as below. &lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-CXnB9wgGgls/Tr00iQXrruI/AAAAAAAAAYc/-XsDcLLFvOo/s1600/stadlone6.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="238" src="http://4.bp.blogspot.com/-CXnB9wgGgls/Tr00iQXrruI/AAAAAAAAAYc/-XsDcLLFvOo/s320/stadlone6.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;8. Installing summary&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-PlNnO3QaKjA/Tr000X0pX1I/AAAAAAAAAYo/iKySPf2gkec/s1600/stadlone7.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="239" src="http://2.bp.blogspot.com/-PlNnO3QaKjA/Tr000X0pX1I/AAAAAAAAAYo/iKySPf2gkec/s320/stadlone7.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;9. Execute the root scripts when prompted&lt;br /&gt;&lt;pre&gt;/opt/app/oracle/product/11.2.0/grid/root.sh&lt;br /&gt;Performing root user operation for Oracle 11g&lt;br /&gt;&lt;br /&gt;The following environment variables are set as:&lt;br /&gt;    ORACLE_OWNER= grid&lt;br /&gt;    ORACLE_HOME=  /opt/app/oracle/product/11.2.0/grid&lt;br /&gt;&lt;br /&gt;Enter the full pathname of the local bin directory: [/usr/local/bin]:&lt;br /&gt;   Copying dbhome to /usr/local/bin ...&lt;br /&gt;   Copying oraenv to /usr/local/bin ...&lt;br /&gt;   Copying coraenv to /usr/local/bin ...&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Creating /etc/oratab file...&lt;br /&gt;Entries will be added to the /etc/oratab file as needed by&lt;br /&gt;Database Configuration Assistant when a database is created&lt;br /&gt;Finished running generic part of root script.&lt;br /&gt;Now product-specific root actions will be performed.&lt;br /&gt;Using configuration parameter file: /opt/app/oracle/product/11.2.0/grid/crs/install/crsconfig_params&lt;br /&gt;Creating trace directory&lt;br /&gt;LOCAL ADD MODE&lt;br /&gt;Creating OCR keys for user 'grid', privgrp 'oinstall'..&lt;br /&gt;Operation successful.&lt;br /&gt;LOCAL ONLY MODE&lt;br /&gt;Successfully accumulated necessary OCR keys.&lt;br /&gt;Creating OCR keys for user 'root', privgrp 'root'..&lt;br /&gt;Operation successful.&lt;br /&gt;CRS-4664: Node rhel5 successfully pinned.&lt;br /&gt;Adding Clusterware entries to inittab&lt;br /&gt;&lt;br /&gt;rhel5     2011/11/03 18:15:01     /opt/app/oracle/product/11.2.0/grid/cdata/rhel5/backup_20111103_181501.olr&lt;br /&gt;Successfully configured Oracle Grid Infrastructure for a Standalone Server&lt;/pre&gt;10. Once the root scripts are finished listener and ASM instance will be created.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-plsbqqZF_lg/Tr01cI0OomI/AAAAAAAAAY0/OY0BYJfGHk8/s1600/stadlone8.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="240" src="http://2.bp.blogspot.com/-plsbqqZF_lg/Tr01cI0OomI/AAAAAAAAAY0/OY0BYJfGHk8/s320/stadlone8.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;11. Following commands could be used to stop and start the grid infrastructure related services&lt;br /&gt;&lt;pre&gt;crsctl stop has&lt;br /&gt;crsctl start has&lt;/pre&gt;12. ASM's SPFile will be residing inside ASM itself. This could be found out in number of ways, looking at the alert log of ASM when ASM starts&lt;br /&gt;&lt;pre&gt;Machine:        x86_64&lt;br /&gt;&lt;b&gt;Using parameter settings in server-side spfile +DATA/asm/asmparameterfile/registry.253.766260991&lt;/b&gt;&lt;br /&gt;System parameters with non-default values:&lt;br /&gt;  large_pool_size          = 12M&lt;br /&gt;  instance_type            = "asm"&lt;br /&gt;  remote_login_passwordfile= "EXCLUSIVE"&lt;br /&gt;  asm_diskgroups           = "FLASH"&lt;br /&gt;  asm_diskgroups           = "DATA"&lt;br /&gt;  asm_power_limit          = 1&lt;br /&gt;  diagnostic_dest          = "/opt/app/oracle"&lt;/pre&gt;Or using the asmcmd's spget command which shows the spfile location registered with GnP profile&lt;br /&gt;&lt;pre&gt;ASMCMD&amp;gt; spget&lt;br /&gt;+DATA/asm/asmparameterfile/registry.253.766260991&lt;/pre&gt;To copy the ASM spfile to a file systme location use spcopy (use spmove to move it). Before executing the spcopy stop the diskgroups&lt;br /&gt;&lt;pre&gt;srvctl stop diskgroup -g data[flash] ASMCMD&amp;gt; spcopy +DATA/asm/asmparameterfile/registry.253.766260991 /opt/app/oracle/product/11.2.0/grid/dbs/spfile+ASM.ora&lt;/pre&gt;and update the GnP profile with the new location using spset&lt;br /&gt;&lt;pre&gt;ASMCMD&amp;gt; spset /opt/app/oracle/product/11.2.0/grid/dbs/spfile+ASM.ora&lt;br /&gt;ASMCMD&amp;gt; spget&lt;br /&gt;/opt/app/oracle/product/11.2.0/grid/dbs/spfile+ASM.ora&lt;/pre&gt;When ASM starts next the new location is listed as below&lt;br /&gt;&lt;pre&gt;Machine:        x86_64&lt;br /&gt;&lt;b&gt;Using parameter settings in server-side spfile /opt/app/oracle/product/11.2.0/grid/dbs/spfile+ASM.ora&lt;/b&gt;&lt;br /&gt;System parameters with non-default values:&lt;br /&gt;  large_pool_size          = 12M&lt;br /&gt;  instance_type            = "asm"&lt;br /&gt;  remote_login_passwordfile= "EXCLUSIVE"&lt;br /&gt;  asm_diskgroups           = "FLASH"&lt;br /&gt;  asm_diskgroups           = "DATA"&lt;br /&gt;  asm_power_limit          = 1&lt;br /&gt;  diagnostic_dest          = "/opt/app/oracle"&lt;/pre&gt;With this concludes the installation of grid infrastructure and creation of ASM.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;13. Login as Oracle user and start the database software installation. &lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-tHBounovmXQ/Tr04hrueJMI/AAAAAAAAAZA/z7NPDsdyyfo/s1600/stadlone9.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="239" src="http://4.bp.blogspot.com/-tHBounovmXQ/Tr04hrueJMI/AAAAAAAAAZA/z7NPDsdyyfo/s320/stadlone9.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;14. Some locations may not have write permissions for Oracle user, permissions might be set as 755 grid : oinstall. Change permissions as 775 to allow oracle user the access to these location.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-RqXFHKhPboY/Tr05yHhHtCI/AAAAAAAAAZY/-ymS99a21SI/s1600/stadlone10.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="238" src="http://3.bp.blogspot.com/-RqXFHKhPboY/Tr05yHhHtCI/AAAAAAAAAZY/-ymS99a21SI/s320/stadlone10.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-AzKSN6aPazY/Tr05x30Z9KI/AAAAAAAAAZM/cTc_r7DC_50/s1600/stadlone11.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="240" src="http://4.bp.blogspot.com/-AzKSN6aPazY/Tr05x30Z9KI/AAAAAAAAAZM/cTc_r7DC_50/s320/stadlone11.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;15. There is a pre-req check to see if grid user is also a member of the dba group. As per metalink note 1084186.1 "In case of stand alone set up, if the 11.2 Database be managed by Oracle Restart ( srvctl stop/start ), then 'grid' user should also be a part of 'dba' group."&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-d7jJEc_Ina0/Tr06KgWkvaI/AAAAAAAAAZk/6_HgCRayjvY/s1600/stadlone13.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="240" src="http://2.bp.blogspot.com/-d7jJEc_Ina0/Tr06KgWkvaI/AAAAAAAAAZk/6_HgCRayjvY/s320/stadlone13.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;16. Complete the installation.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-koNXP2ysHvE/Tr06Zz0Dm2I/AAAAAAAAAZw/skef7chzMO8/s1600/stadlone14.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="240" src="http://2.bp.blogspot.com/-koNXP2ysHvE/Tr06Zz0Dm2I/AAAAAAAAAZw/skef7chzMO8/s320/stadlone14.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;17. Run dbca as Oracle user from the database software home. Creating database is straightforward. If anything can go wrong then it will be that ASM disk are not being shown when ASM is created for data file locations. &lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-KyrjMYMjTrQ/Tr07Wlkt4JI/AAAAAAAAAZ8/NYo74rAOyss/s1600/stadlone15.png" imageanchor="1" style="margin-left:1em; margin-right:1em"&gt;&lt;img border="0" height="228" width="320" src="http://3.bp.blogspot.com/-KyrjMYMjTrQ/Tr07Wlkt4JI/AAAAAAAAAZ8/NYo74rAOyss/s320/stadlone15.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;This will be because Oracle user is not in the asmdba group. Once added the disk will appear for selection. This concludes the creation of standalone database with ASM in 11gR2. &lt;br /&gt;&lt;br /&gt;The database comes with Oracle restart configured as well as ASM as a target in the EM Console&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-0nxguUQp3mg/Tr09GvQx3hI/AAAAAAAAAaI/LUol-dBdzco/s1600/stadlone16.png" imageanchor="1" style="margin-left:1em; margin-right:1em"&gt;&lt;img border="0" height="114" width="320" src="http://3.bp.blogspot.com/-0nxguUQp3mg/Tr09GvQx3hI/AAAAAAAAAaI/LUol-dBdzco/s320/stadlone16.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Some useful metalink notes&lt;br /&gt;&lt;br /&gt;DBCA Does Not Display ASM Disk Groups In 11.2 &lt;b&gt;[ID 1177483.1]&lt;/b&gt; (issue seems to be fixed in 11.2.0.3)&lt;br /&gt;Patch 11gR2 Grid Infrastructure Standalone (Oracle Restart) &lt;b&gt;[ID 1089476.1]&lt;/b&gt;&lt;br /&gt;11gR2 (11.2.0.1) Unable To Create ASM Spfile Standalone &lt;b&gt;[ID 1082332.1]&lt;/b&gt;&lt;br /&gt;Database Creation on 11.2 Grid Infracture with Role Separation ( ORA-15025, KFSG-00312, ORA-15081 ) &lt;b&gt;[ID 1084186.1]&lt;/b&gt;&lt;br /&gt;How to change ownership and group memberships of Grid home in 11.2 Standalone &lt;b&gt;[ID 1171674.1]&lt;/b&gt;&lt;br /&gt;Ora-01115, Ora-01110, Ora-15081 When Connecting DB with non-dba Group Users &lt;b&gt;[ID 1372571.1]&lt;/b&gt;&lt;br /&gt;ASM 11.2 Configuration KIT (ASM 11gR2 Installation &amp; Configuration, Deinstallation, Upgrade, ASM Job Role Separation (Standalone Only). &lt;b&gt;[ID 1092213.1]&lt;/b&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2414933436751311863-2267707729279780887?l=asanga-pradeep.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/2267707729279780887'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/2267707729279780887'/><link rel='alternate' type='text/html' href='http://asanga-pradeep.blogspot.com/2011/11/asm-for-standalone-server-in-11gr2-with.html' title='ASM for Standalone Server in 11gR2 with Role Separation'/><author><name>Asanga</name><uri>http://www.blogger.com/profile/06917616787415349832</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_90fhbVRwXDU/TECqZgHU0eI/AAAAAAAAAIo/hwI2BMzwDcI/S220/profile.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-xZgfdWxih54/Tr0yYf3ryBI/AAAAAAAAAXU/-lPgIWuif3U/s72-c/stadlone1.png' height='72' width='72'/></entry><entry><id>tag:blogger.com,1999:blog-2414933436751311863.post-6764192063070774346</id><published>2011-10-20T08:13:00.000-07:00</published><updated>2011-10-27T15:59:50.442-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='physical standby'/><category scheme='http://www.blogger.com/atom/ns#' term='11gR2'/><category scheme='http://www.blogger.com/atom/ns#' term='roll forward'/><category scheme='http://www.blogger.com/atom/ns#' term='backup'/><category scheme='http://www.blogger.com/atom/ns#' term='dataguard'/><category scheme='http://www.blogger.com/atom/ns#' term='incremental'/><title type='text'>Roll Foward a Physical Standby on 11gR2</title><content type='html'>Previous posts showed how to do roll forward &lt;a href="http://asanga-pradeep.blogspot.com/2011/01/roll-forward-physical-standby-10gr2.html"&gt;10gR2&lt;/a&gt; and &lt;a href="http://asanga-pradeep.blogspot.com/2011/01/roll-foward-physical-standby-on-11gr1.html"&gt;11gR1&lt;/a&gt; physical standby databases.&lt;br /&gt;This shows how to roll forward a 11gR2 physical standby that's in RAC configuration &lt;a href="http://asanga-pradeep.blogspot.com/2011/02/11gr2-rac-to-rac-data-guard.html"&gt;setup earlier&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;In this case archive log files were deleted on primary and there's no other way to bring the standby up to date with the primary. &lt;br /&gt;Current dataguard configuration is&lt;br /&gt;&lt;pre&gt;DGMGRL&amp;gt; show configuration&lt;br /&gt;&lt;br /&gt;Configuration - rac11g2_dgb&lt;br /&gt;&lt;br /&gt;  Protection Mode: MaxPerformance&lt;br /&gt;  Databases:&lt;br /&gt;    rac11g2  - Primary database&lt;br /&gt;    rac11g2s - Physical standby database&lt;br /&gt;&lt;br /&gt;Fast-Start Failover: DISABLED&lt;br /&gt;&lt;br /&gt;Configuration Status:&lt;br /&gt;SUCCESS&lt;/pre&gt;1. Identify the archive gap&lt;br /&gt;&lt;pre&gt;SQL&amp;gt; select * from v$archive_gap;&lt;br /&gt;&lt;br /&gt;   THREAD# LOW_SEQUENCE# HIGH_SEQUENCE#&lt;br /&gt;---------- ------------- --------------&lt;br /&gt;         2           901            901&lt;/pre&gt;2. Stop all but one standby RAC instances&lt;br /&gt;&lt;pre&gt;srvctl stop instance -d rac11g2s -i rac11g2s2&lt;/pre&gt;3. Stop log apply on the standby&lt;br /&gt;&lt;pre&gt;DGMGRL&amp;gt; edit database rac11g2s set state='APPLY-OFF';&lt;br /&gt;Succeeded.&lt;/pre&gt;4. Find the current SCN on the standby &lt;br /&gt;&lt;pre&gt;SQL&amp;gt; SELECT CURRENT_SCN FROM V$DATABASE;&lt;br /&gt;&lt;br /&gt;CURRENT_SCN&lt;br /&gt;-----------&lt;br /&gt;   45716408&lt;/pre&gt;5. Using the SCN identified in the above step create an incrimental backup in the primary database&lt;br /&gt;&lt;pre&gt;RMAN&amp;gt; BACKUP INCREMENTAL FROM SCN 45716408 DATABASE FORMAT '/home/oracle/forstandby%U' tag 'forstandby';&lt;br /&gt;&lt;br /&gt;Starting backup at 20-OCT-11&lt;br /&gt;&lt;br /&gt;using target database control file instead of recovery catalog&lt;br /&gt;allocated channel: ORA_DISK_1&lt;br /&gt;channel ORA_DISK_1: SID=46 instance=rac11g21 device type=DISK&lt;br /&gt;backup will be obsolete on date 27-OCT-11&lt;br /&gt;archived logs will not be kept or backed up&lt;br /&gt;channel ORA_DISK_1: starting full datafile backup set&lt;br /&gt;channel ORA_DISK_1: specifying datafile(s) in backup set&lt;br /&gt;input datafile file number=00002 name=+DATA/rac11g2/datafile/sysaux.257.740770047&lt;br /&gt;input datafile file number=00001 name=+DATA/rac11g2/datafile/system.256.740770045&lt;br /&gt;input datafile file number=00006 name=+DATA/rac11g2/datafile/undotbs3.276.745423577&lt;br /&gt;input datafile file number=00005 name=+DATA/rac11g2/datafile/undotbs2.264.740770355&lt;br /&gt;input datafile file number=00003 name=+DATA/rac11g2/datafile/abc.280.755611691&lt;br /&gt;input datafile file number=00004 name=+DATA/rac11g2/datafile/users.259.740770049&lt;br /&gt;channel ORA_DISK_1: starting piece 1 at 20-OCT-11&lt;br /&gt;channel ORA_DISK_1: finished piece 1 at 20-OCT-11&lt;br /&gt;piece handle=/home/oracle/forstandby2fmpj6s7_1_1 tag=FORSTANDBY comment=NONE&lt;br /&gt;channel ORA_DISK_1: backup set complete, elapsed time: 00:00:35&lt;br /&gt;&lt;br /&gt;using channel ORA_DISK_1&lt;br /&gt;backup will be obsolete on date 27-OCT-11&lt;br /&gt;archived logs will not be kept or backed up&lt;br /&gt;channel ORA_DISK_1: starting full datafile backup set&lt;br /&gt;channel ORA_DISK_1: specifying datafile(s) in backup set&lt;br /&gt;&lt;b&gt;including current control file in backup set&lt;/b&gt;&lt;br /&gt;channel ORA_DISK_1: starting piece 1 at 20-OCT-11&lt;br /&gt;channel ORA_DISK_1: finished piece 1 at 20-OCT-11&lt;br /&gt;&lt;b&gt;piece handle=/home/oracle/forstandby2gmpj6tb_1_1&lt;/b&gt; tag=FORSTANDBY comment=NONE&lt;br /&gt;channel ORA_DISK_1: backup set complete, elapsed time: 00:00:01&lt;br /&gt;Finished backup at 20-OCT-11&lt;/pre&gt;6. Copy the created backup files to standby using scp, ftp or any other file transfer utility.&lt;br /&gt;&lt;br /&gt;7. Catalog backup files on standby&lt;br /&gt;&lt;pre&gt;RMAN&amp;gt; catalog start with '/home/oracle/forstand';&lt;br /&gt;&lt;br /&gt;using target database control file instead of recovery catalog&lt;br /&gt;searching for all files that match the pattern /home/oracle/forstand&lt;br /&gt;&lt;br /&gt;List of Files Unknown to the Database&lt;br /&gt;=====================================&lt;br /&gt;File Name: /home/oracle/forstandby2fmpj6s7_1_1&lt;br /&gt;File Name: /home/oracle/forstandby2gmpj6tb_1_1&lt;br /&gt;&lt;br /&gt;Do you really want to catalog the above files (enter YES or NO)? yes&lt;br /&gt;cataloging files...&lt;br /&gt;cataloging done&lt;br /&gt;&lt;br /&gt;List of Cataloged Files&lt;br /&gt;=======================&lt;br /&gt;File Name: /home/oracle/forstandby2fmpj6s7_1_1&lt;br /&gt;File Name: /home/oracle/forstandby2gmpj6tb_1_1&lt;/pre&gt;8. Data guard concept and administration guide states "&lt;i&gt;Connect to the standby database as the RMAN target and execute the REPORT SCHEMA statement to ensure that the standby database site is automatically registered and that the files names at the standby site are displayed&lt;/i&gt;". Doesn't say registered in what, but safe to assume talking about the recovery catalog. In this case recovery catalog is not used but run the command and make a note of the values as these will be used later on.&lt;br /&gt;&lt;pre&gt;RMAN&amp;gt; report schema;&lt;br /&gt;&lt;br /&gt;RMAN-06139: WARNING: control file is not current for REPORT SCHEMA&lt;br /&gt;Report of database schema for database with db_unique_name RAC11G2S&lt;br /&gt;&lt;br /&gt;List of Permanent Datafiles&lt;br /&gt;===========================&lt;br /&gt;File Size(MB) Tablespace           RB segs Datafile Name&lt;br /&gt;---- -------- -------------------- ------- ------------------------&lt;br /&gt;1    720      SYSTEM               ***     +DATA/rac11g2s/datafile/system.258.754586581&lt;br /&gt;2    1290     SYSAUX               ***     +DATA/rac11g2s/datafile/sysaux.259.754586467&lt;br /&gt;3    10       ABC                  ***     +DATA/rac11g2s/datafile/abc.287.755615113&lt;br /&gt;4    5        USERS                ***     +DATA/rac11g2s/datafile/users.276.754586727&lt;br /&gt;5    150      UNDOTBS2             ***     +DATA/rac11g2s/datafile/undotbs2.261.754586713&lt;br /&gt;6    600      UNDOTBS3             ***     +DATA/rac11g2s/datafile/undotbs3.262.754586657&lt;br /&gt;&lt;br /&gt;List of Temporary Files&lt;br /&gt;=======================&lt;br /&gt;File Size(MB) Tablespace           Maxsize(MB) Tempfile Name&lt;br /&gt;---- -------- -------------------- ----------- --------------------&lt;br /&gt;1    20       TEMP                 32767       +DATA/rac11g2s/tempfile/temp.288.755615251&lt;/pre&gt;9. Restore the standby controlfile using the backup file (shown in bold on the backup output earlier) and mount the database&lt;br /&gt;&lt;pre&gt;RMAN&amp;gt; restore standby controlfile from '/home/oracle/forstandby2gmpj6tb_1_1';&lt;br /&gt;&lt;br /&gt;Starting restore at 20-OCT-11&lt;br /&gt;allocated channel: ORA_DISK_1&lt;br /&gt;channel ORA_DISK_1: SID=17 instance=rac11g2s1 device type=DISK&lt;br /&gt;&lt;br /&gt;channel ORA_DISK_1: restoring control file&lt;br /&gt;channel ORA_DISK_1: restore complete, elapsed time: 00:00:05&lt;br /&gt;output file name=+DATA/rac11g2s/controlfile/current.257.754586439&lt;br /&gt;output file name=+FLASH/rac11g2s/controlfile/current.482.754586439&lt;br /&gt;Finished restore at 20-OCT-11&lt;br /&gt;&lt;br /&gt;RMAN&amp;gt; alter database mount;&lt;br /&gt;&lt;br /&gt;database mounted&lt;br /&gt;released channel: ORA_DISK_1&lt;/pre&gt;10. Run a report schema again and see that datafile names reported are the ones of the primary databae&lt;br /&gt;&lt;pre&gt;RMAN&amp;gt; report schema;&lt;br /&gt;&lt;br /&gt;RMAN-06139: WARNING: control file is not current for REPORT SCHEMA&lt;br /&gt;Report of database schema for database with db_unique_name RAC11G2S&lt;br /&gt;&lt;br /&gt;List of Permanent Datafiles&lt;br /&gt;===========================&lt;br /&gt;File Size(MB) Tablespace           RB segs Datafile Name&lt;br /&gt;---- -------- -------------------- ------- ------------------------&lt;br /&gt;1    0        SYSTEM               ***     +DATA/rac11g2s/datafile/system.256.740770045&lt;br /&gt;2    0        SYSAUX               ***     +DATA/rac11g2s/datafile/sysaux.257.740770047&lt;br /&gt;3    0        ABC                  ***     +DATA/rac11g2s/datafile/abc.280.755611691&lt;br /&gt;4    0        USERS                ***     +DATA/rac11g2s/datafile/users.259.740770049&lt;br /&gt;5    0        UNDOTBS2             ***     +DATA/rac11g2s/datafile/undotbs2.264.740770355&lt;br /&gt;6    0        UNDOTBS3             ***     +DATA/rac11g2s/datafile/undotbs3.276.745423577&lt;br /&gt;&lt;br /&gt;List of Temporary Files&lt;br /&gt;=======================&lt;br /&gt;File Size(MB) Tablespace           Maxsize(MB) Tempfile Name&lt;br /&gt;---- -------- -------------------- ----------- --------------------&lt;br /&gt;1    20       TEMP                 32767       +DATA/rac11g2s/tempfile/temp.263.740770177&lt;/pre&gt;11. Catalog the datafiles to the original standby datafile names&lt;br /&gt;&lt;pre&gt;RMAN&amp;gt; catalog start with '+DATA/rac11g2s/datafile';&lt;br /&gt;&lt;br /&gt;searching for all files that match the pattern +DATA/rac11g2s/datafile&lt;br /&gt;&lt;br /&gt;List of Files Unknown to the Database&lt;br /&gt;=====================================&lt;br /&gt;File Name: +data/RAC11G2S/DATAFILE/SYSAUX.259.754586467&lt;br /&gt;File Name: +data/RAC11G2S/DATAFILE/SYSTEM.258.754586581&lt;br /&gt;File Name: +data/RAC11G2S/DATAFILE/UNDOTBS3.262.754586657&lt;br /&gt;File Name: +data/RAC11G2S/DATAFILE/UNDOTBS2.261.754586713&lt;br /&gt;File Name: +data/RAC11G2S/DATAFILE/USERS.276.754586727&lt;br /&gt;File Name: +data/RAC11G2S/DATAFILE/ABC.287.755615113&lt;br /&gt;&lt;br /&gt;Do you really want to catalog the above files (enter YES or NO)? yes&lt;br /&gt;cataloging files...&lt;br /&gt;cataloging done&lt;br /&gt;&lt;br /&gt;List of Cataloged Files&lt;br /&gt;=======================&lt;br /&gt;File Name: +data/RAC11G2S/DATAFILE/SYSAUX.259.754586467&lt;br /&gt;File Name: +data/RAC11G2S/DATAFILE/SYSTEM.258.754586581&lt;br /&gt;File Name: +data/RAC11G2S/DATAFILE/UNDOTBS3.262.754586657&lt;br /&gt;File Name: +data/RAC11G2S/DATAFILE/UNDOTBS2.261.754586713&lt;br /&gt;File Name: +data/RAC11G2S/DATAFILE/USERS.276.754586727&lt;br /&gt;File Name: +data/RAC11G2S/DATAFILE/ABC.287.755615113&lt;/pre&gt;12. Run switch database to copy to update the control file with the changes&lt;br /&gt;&lt;pre&gt;RMAN&amp;gt; switch database to copy;&lt;br /&gt;&lt;br /&gt;datafile 1 switched to datafile copy "+DATA/rac11g2s/datafile/system.258.754586581"&lt;br /&gt;datafile 2 switched to datafile copy "+DATA/rac11g2s/datafile/sysaux.259.754586467"&lt;br /&gt;datafile 3 switched to datafile copy "+DATA/rac11g2s/datafile/abc.287.755615113"&lt;br /&gt;datafile 4 switched to datafile copy "+DATA/rac11g2s/datafile/users.276.754586727"&lt;br /&gt;datafile 5 switched to datafile copy "+DATA/rac11g2s/datafile/undotbs2.261.754586713"&lt;br /&gt;datafile 6 switched to datafile copy "+DATA/rac11g2s/datafile/undotbs3.262.754586657"&lt;/pre&gt;13. Recover the database with no redo &lt;br /&gt;&lt;pre&gt;RMAN&amp;gt; recover database noredo;&lt;br /&gt;&lt;br /&gt;Starting recover at 20-OCT-11&lt;br /&gt;using channel ORA_DISK_1&lt;br /&gt;channel ORA_DISK_1: starting incremental datafile backup set restore&lt;br /&gt;channel ORA_DISK_1: specifying datafile(s) to restore from backup set&lt;br /&gt;destination for restore of datafile 00001: +DATA/rac11g2s/datafile/system.258.754586581&lt;br /&gt;destination for restore of datafile 00002: +DATA/rac11g2s/datafile/sysaux.259.754586467&lt;br /&gt;destination for restore of datafile 00003: +DATA/rac11g2s/datafile/abc.287.755615113&lt;br /&gt;destination for restore of datafile 00004: +DATA/rac11g2s/datafile/users.276.754586727&lt;br /&gt;destination for restore of datafile 00005: +DATA/rac11g2s/datafile/undotbs2.261.754586713&lt;br /&gt;destination for restore of datafile 00006: +DATA/rac11g2s/datafile/undotbs3.262.754586657&lt;br /&gt;channel ORA_DISK_1: reading from backup piece /home/oracle/forstandby2fmpj6s7_1_1&lt;br /&gt;channel ORA_DISK_1: piece handle=/home/oracle/forstandby2fmpj6s7_1_1 tag=FORSTANDBY&lt;br /&gt;channel ORA_DISK_1: restored backup piece 1&lt;br /&gt;channel ORA_DISK_1: restore complete, elapsed time: 00:00:07&lt;br /&gt;&lt;br /&gt;Finished recover at 20-OCT-11&lt;/pre&gt;14. At this stage should have cleared the log files as in &lt;a href="http://asanga-pradeep.blogspot.com/2011/07/changing-backup-policy-on-standby-db-3.html"&gt;step 10 here&lt;/a&gt;but still without clearing the old logs when log apply is enabled new log files will be created automatically. Old log files will remain in the ASM taking up space and could be manually removed using asmcmd rm.&lt;br /&gt;&lt;br /&gt;15. Enable log apply on the standby and verify log files are getting applied&lt;br /&gt;&lt;pre&gt;DGMGRL&amp;gt; edit database rac11g2s set state='APPLY-ON';&lt;br /&gt;&lt;br /&gt;   THREAD#  SEQUENCE# APPLIED&lt;br /&gt;---------- ---------- ---------&lt;br /&gt;         2        907 YES&lt;br /&gt;         2        908 YES&lt;br /&gt;         2        909 YES&lt;br /&gt;         2        910 YES&lt;br /&gt;         2        910 YES&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2414933436751311863-6764192063070774346?l=asanga-pradeep.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/6764192063070774346'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/6764192063070774346'/><link rel='alternate' type='text/html' href='http://asanga-pradeep.blogspot.com/2011/10/roll-foward-physical-standby-on-11gr2.html' title='Roll Foward a Physical Standby on 11gR2'/><author><name>Asanga</name><uri>http://www.blogger.com/profile/06917616787415349832</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_90fhbVRwXDU/TECqZgHU0eI/AAAAAAAAAIo/hwI2BMzwDcI/S220/profile.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-2414933436751311863.post-6538108326745943055</id><published>2011-10-14T09:15:00.000-07:00</published><updated>2012-01-08T05:48:51.312-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='rac'/><category scheme='http://www.blogger.com/atom/ns#' term='grid infrastructure'/><category scheme='http://www.blogger.com/atom/ns#' term='11gR2'/><category scheme='http://www.blogger.com/atom/ns#' term='11.2.0.3'/><category scheme='http://www.blogger.com/atom/ns#' term='cluster'/><category scheme='http://www.blogger.com/atom/ns#' term='11.2.0.2'/><category scheme='http://www.blogger.com/atom/ns#' term='upgrade'/><title type='text'>Upgrading from 11.2.0.2 to 11.2.0.3</title><content type='html'>Upgrading from 11.2.0.2 to 11.2.0.3 is not much different from &lt;a href="http://asanga-pradeep.blogspot.com/2011/03/upgrading-from-11201-to-11202.html"&gt;upgrading from 11.2.0.1 to 11.2.0.2&lt;/a&gt; (&lt;a href="http://asanga-pradeep.blogspot.com/2011/10/upgrading-from-11201-to-11202-part-2.html"&gt;part 2&lt;/a&gt;). Same as before (with upgrading to 11.2.0.2)&amp;nbsp; there's some pre-reqs that need to be done. Continuing the tradition started with 11gR2 Oracle doesn't give a single read me file with all the necessary information for upgrade. One has to read several user guides and metalink notes to get the full picture. Below are some extracts taken from upgrade guide, asm guide and grid infrastructure installation guide.&lt;i&gt;&lt;b&gt;&amp;nbsp;&lt;/b&gt;&lt;/i&gt;&lt;br /&gt;&lt;br /&gt;&lt;i&gt;&lt;b&gt;Oracle Clusterware Upgrade Configuration Force Feature&lt;/b&gt;&lt;br /&gt;If nodes become unreachable in the middle of an upgrade, starting with release 11.2.0.3, you can run the rootupgrade.sh script with the -force flag to force an upgrade to complete.&lt;/i&gt;&lt;br /&gt;&lt;i&gt;&lt;/i&gt;&lt;br /&gt;&lt;i&gt;Starting with Oracle Grid Infrastructure 11g release 2 (11.2.0.3) and later, you can use the CVU healthcheck command option to check your Oracle Clusterware and Oracle Database installations for their compliance with mandatory requirements and best practices guidelines, and to check to ensure that they are functioning properly.&lt;/i&gt;&lt;br /&gt;&lt;br /&gt;&lt;i&gt;&lt;b&gt;Known Issue with the Deinstallation Tool for This Release&lt;/b&gt;&lt;br /&gt;&lt;b&gt;Cause:&lt;/b&gt; After upgrading from 11.2.0.1 or 11.2.0.2 to 11.2.0.3, deinstallation of the Oracle home in the earlier release of Oracle Database may result in the deletion of the old Oracle base that was associated with it. This may also result in the deletion of data files, audit files, etc., which are stored under the old Oracle base.&lt;br /&gt;&lt;b&gt;Action&lt;/b&gt;: Before deinstalling the Oracle home in the earlier release, edit the orabase_cleanup.lst file found in the $Oracle_Home/utl directory and remove the "oradata" and "admin" entries. Then, deinstall the Oracle home using the 11.2.0.3 deinstallation tool. &lt;/i&gt;&lt;br /&gt;&lt;i&gt;&lt;/i&gt;&lt;br /&gt;&lt;i&gt;To upgrade existing Oracle Grid Infrastructure installations from 11.2.0.2 to a later release, you must apply patch 11.2.0.2.1 (11.2.0.2 PSU 1) or later.&lt;/i&gt;&lt;br /&gt;&lt;i&gt;&amp;nbsp;To upgrade existing 11.2.0.1 Oracle Grid Infrastructure installations to Oracle Grid Infrastructure to any later version (11.2.0.2 or 11.2.0.3), you must patch the release 11.2.0.1 Oracle Grid Infrastructure home&amp;nbsp; (11.2.0.1.0) with the 9706490 patch. &lt;/i&gt;&lt;br /&gt;&lt;i&gt;&lt;/i&gt;&lt;br /&gt;&lt;i&gt;To upgrade existing 11.1 Oracle Clusterware installations to Oracle Grid Infrastructure 11.2.0.3 or later, you must patch the release 11.1 Oracle Clusterware home with the patch for bug 7308467.&lt;/i&gt;&lt;br /&gt;&lt;i&gt;&lt;/i&gt;&lt;br /&gt;&lt;i&gt;Oracle recommends that you leave Oracle RAC instances running. When you start the root script on each node, that node's instances are shut down and then started up again by the rootupgrade.sh script. If you upgrade from release 11.2.0.1 to any later version (11.2.0.2 or 11.2.0.3), then all nodes are selected by&lt;br /&gt;default. You cannot select or de-select the nodes. For single instance Oracle Databases on the cluster, only those that use Oracle ASM need to be shut down. Listeners do not need to be shut down.&lt;/i&gt;&lt;br /&gt;&lt;br /&gt;From metalink notes&lt;br /&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;br /&gt;&lt;i&gt;&lt;b&gt;Actions For DST Updates When Upgrading To Or Applying The 11.2.0.3 Patchset [ID 1358166.1]&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;If your current RDBMS time timezone version is 14 , install 11.2.0.3 in a new home and update the 11.2.0.2 or 11.2.0.1 database to 11.2.0.2.&lt;br /&gt;You can skip any DST related sections in the patchset documentation , there is no need to apply DST patches or check for DST issues for the update to 11.2.0.3&lt;br /&gt;&lt;br /&gt;If your current RDBMS time timezone version is&amp;nbsp; lower than 14 ,&amp;nbsp; install 11.2.0.3 in a new home and update the 11.2.0.2 or 11.2.0.1 database to 11.2.0.3&lt;br /&gt;You can skip any DST related sections in the patchset documentation , there is no need to apply DST patches or check for DST issues for the update to 11.2.0.3&lt;br /&gt;&lt;br /&gt;If your current RDBMS time timezone version is higher than 14, then there's some work to be done read the above metalink note.&lt;/i&gt;&lt;br /&gt;&lt;br /&gt;In this case database was 11.2.0.2&lt;br /&gt;&lt;pre&gt;SQL&amp;gt; SELECT version FROM v$timezone_file;&lt;br /&gt;&lt;br /&gt;   VERSION&lt;br /&gt;----------&lt;br /&gt;        14&lt;/pre&gt;Before starting the upgrade using cluster verification tool it's now possible to validate the readiness to upgrade.&lt;br /&gt;&lt;pre&gt;./runcluvfy.sh stage -pre crsinst -upgrade -n hpc3 -rolling -src_crshome /flash/11.2.0/grid11.2.0.2 -dest_crshome /flash/11.2.0/grid11.2.0.3 -dest_version 11.2.0.3.0 -fixup -fixupdir /home/oracle/fixupscript -verbose&lt;/pre&gt;Prior to upgrading to 11.2.0.3 a patch should be applied to 11.2.0.2 (similar to 11.2.0.2) only difference is this patch number wasn't mentioned in any of the documents referenced (which means some more reading is required to get the complete picture) but luckily the pre-req check flags this.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-JEMugCqEQLo/TphXWtDGRnI/AAAAAAAAAUk/wCzhvTacHlI/s1600/2.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="238" src="http://3.bp.blogspot.com/-JEMugCqEQLo/TphXWtDGRnI/AAAAAAAAAUk/wCzhvTacHlI/s320/2.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-p5JGjF3hbvM/TphYCjXJDdI/AAAAAAAAAUw/oT_5fa1bzsU/s1600/3.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="239" src="http://2.bp.blogspot.com/-p5JGjF3hbvM/TphYCjXJDdI/AAAAAAAAAUw/oT_5fa1bzsU/s320/3.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;b&gt;&amp;nbsp;Applying patch 12539000&lt;/b&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;The patch itself has some issues when it comes to applying.&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;1. Applying using opatch auto, which is suppse to apply to both GI Home and Oracle Home only applied to Oracle Home.&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;2. Read me says to run the /12539000/custom/server/12539000/custom/scripts/prepatch.sh but this directory structure and the file is missing.&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;3. So finally had to apply the patch with opatch auto but one home at a time. (opatch auto PATH_TO_PATCH_DIRECTORY -oh GI_HOME or OH&lt;/div&gt;&lt;br /&gt;Another issue was shmmni was flaged as not configured (this already had an upgrade to 11.2.0.2 and value was set from the begining). Running the fixup script gives the output below which doesn't modify but makes the warning disappear&lt;br /&gt;&lt;pre&gt;# /tmp/CVU_11.2.0.3.0_oracle/runfixup.sh&lt;br /&gt;Response file being used is :/tmp/CVU_11.2.0.3.0_oracle/fixup.response&lt;br /&gt;Enable file being used is :/tmp/CVU_11.2.0.3.0_oracle/fixup.enable&lt;br /&gt;Log file location: /tmp/CVU_11.2.0.3.0_oracle/orarun.log&lt;br /&gt;Setting Kernel Parameters...&lt;br /&gt;The value for shmmni in response file is not greater than value of shmmni for current session. Hence not changing it.&lt;/pre&gt;&lt;br /&gt;Apart from these upgrade is straightforward.&lt;br /&gt;&lt;br /&gt;By default all the nodes will be selected for upgrade (this cluster only has one node). Oracle recommends to upgrade both GI and ASM at the same time. This option has been selected for this upgrade.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-S59dsbNs5mk/TphaEONtYyI/AAAAAAAAAU8/TBCOksGhKNM/s1600/1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="239" src="http://4.bp.blogspot.com/-S59dsbNs5mk/TphaEONtYyI/AAAAAAAAAU8/TBCOksGhKNM/s320/1.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;SCAN IP is set on the /etc/hosts but the pre-req checks if this IP could be resolved using nslookup and flags a warning when cannot. This could be ignored and proceeded. Metalink note 1212703.1 mentions the multicast requirements. In this upgrade all these were ignored (on production environments should resolve these issues before proceeding)&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-Z1YC38WTPv0/TphasXBGnSI/AAAAAAAAAVI/AtLwFRfZdZI/s1600/5.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="239" src="http://2.bp.blogspot.com/-Z1YC38WTPv0/TphasXBGnSI/AAAAAAAAAVI/AtLwFRfZdZI/s320/5.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-ZR8WZzH4SJ4/TphbDulcEaI/AAAAAAAAAVU/0FfBAfRfNLQ/s1600/6.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="241" src="http://1.bp.blogspot.com/-ZR8WZzH4SJ4/TphbDulcEaI/AAAAAAAAAVU/0FfBAfRfNLQ/s320/6.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;When prompted run the rootupgrade.&lt;br /&gt;&lt;pre&gt;# /flash/11.2.0/grid11.2.0.3/rootupgrade.sh&lt;br /&gt;Performing root user operation for Oracle 11g&lt;br /&gt;&lt;br /&gt;The following environment variables are set as:&lt;br /&gt;    ORACLE_OWNER= oracle&lt;br /&gt;    ORACLE_HOME=  /flash/11.2.0/grid11.2.0.3&lt;br /&gt;&lt;br /&gt;Enter the full pathname of the local bin directory: [/usr/local/bin]:&lt;br /&gt;The contents of "dbhome" have not changed. No need to overwrite.&lt;br /&gt;The contents of "oraenv" have not changed. No need to overwrite.&lt;br /&gt;The contents of "coraenv" have not changed. No need to overwrite.&lt;br /&gt;&lt;br /&gt;Entries will be added to the /etc/oratab file as needed by&lt;br /&gt;Database Configuration Assistant when a database is created&lt;br /&gt;Finished running generic part of root script.&lt;br /&gt;Now product-specific root actions will be performed.&lt;br /&gt;Using configuration parameter file: /flash/11.2.0/grid11.2.0.3/crs/install/crsconfig_params&lt;br /&gt;Creating trace directory&lt;br /&gt;User ignored Prerequisites during installation&lt;br /&gt;&lt;br /&gt;ASM upgrade has started on first node.&lt;br /&gt;&lt;br /&gt;CRS-2791: Starting shutdown of Oracle High Availability Services-managed resources on 'hpc3'&lt;br /&gt;CRS-2673: Attempting to stop 'ora.crsd' on 'hpc3'&lt;br /&gt;CRS-2790: Starting shutdown of Cluster Ready Services-managed resources on 'hpc3'&lt;br /&gt;CRS-2673: Attempting to stop 'ora.CLUSTERDG.dg' on 'hpc3'&lt;br /&gt;CRS-2673: Attempting to stop 'ora.registry.acfs' on 'hpc3'&lt;br /&gt;CRS-2673: Attempting to stop 'ora.clusdb.db' on 'hpc3'&lt;br /&gt;CRS-2673: Attempting to stop 'ora.LISTENER_SCAN1.lsnr' on 'hpc3'&lt;br /&gt;CRS-2673: Attempting to stop 'ora.oc4j' on 'hpc3'&lt;br /&gt;CRS-2673: Attempting to stop 'ora.LISTENER.lsnr' on 'hpc3'&lt;br /&gt;CRS-2673: Attempting to stop 'ora.cvu' on 'hpc3'&lt;br /&gt;CRS-2677: Stop of 'ora.LISTENER.lsnr' on 'hpc3' succeeded&lt;br /&gt;CRS-2673: Attempting to stop 'ora.hpc3.vip' on 'hpc3'&lt;br /&gt;CRS-2677: Stop of 'ora.LISTENER_SCAN1.lsnr' on 'hpc3' succeeded&lt;br /&gt;CRS-2673: Attempting to stop 'ora.scan1.vip' on 'hpc3'&lt;br /&gt;CRS-2677: Stop of 'ora.scan1.vip' on 'hpc3' succeeded&lt;br /&gt;CRS-2677: Stop of 'ora.hpc3.vip' on 'hpc3' succeeded&lt;br /&gt;CRS-2677: Stop of 'ora.registry.acfs' on 'hpc3' succeeded&lt;br /&gt;CRS-2677: Stop of 'ora.clusdb.db' on 'hpc3' succeeded&lt;br /&gt;CRS-2673: Attempting to stop 'ora.DATA.dg' on 'hpc3'&lt;br /&gt;CRS-2673: Attempting to stop 'ora.FLASH.dg' on 'hpc3'&lt;br /&gt;CRS-2677: Stop of 'ora.DATA.dg' on 'hpc3' succeeded&lt;br /&gt;CRS-2677: Stop of 'ora.FLASH.dg' on 'hpc3' succeeded&lt;br /&gt;CRS-2677: Stop of 'ora.oc4j' on 'hpc3' succeeded&lt;br /&gt;CRS-2677: Stop of 'ora.cvu' on 'hpc3' succeeded&lt;br /&gt;CRS-2677: Stop of 'ora.CLUSTERDG.dg' on 'hpc3' succeeded&lt;br /&gt;CRS-2673: Attempting to stop 'ora.asm' on 'hpc3'&lt;br /&gt;CRS-2677: Stop of 'ora.asm' on 'hpc3' succeeded&lt;br /&gt;CRS-2673: Attempting to stop 'ora.ons' on 'hpc3'&lt;br /&gt;CRS-2677: Stop of 'ora.ons' on 'hpc3' succeeded&lt;br /&gt;CRS-2673: Attempting to stop 'ora.net1.network' on 'hpc3'&lt;br /&gt;CRS-2677: Stop of 'ora.net1.network' on 'hpc3' succeeded&lt;br /&gt;CRS-2792: Shutdown of Cluster Ready Services-managed resources on 'hpc3' has completed&lt;br /&gt;CRS-2677: Stop of 'ora.crsd' on 'hpc3' succeeded&lt;br /&gt;CRS-2673: Attempting to stop 'ora.ctssd' on 'hpc3'&lt;br /&gt;CRS-2673: Attempting to stop 'ora.evmd' on 'hpc3'&lt;br /&gt;CRS-2673: Attempting to stop 'ora.asm' on 'hpc3'&lt;br /&gt;CRS-2673: Attempting to stop 'ora.drivers.acfs' on 'hpc3'&lt;br /&gt;CRS-2673: Attempting to stop 'ora.mdnsd' on 'hpc3'&lt;br /&gt;CRS-2677: Stop of 'ora.asm' on 'hpc3' succeeded&lt;br /&gt;CRS-2673: Attempting to stop 'ora.cluster_interconnect.haip' on 'hpc3'&lt;br /&gt;CRS-2677: Stop of 'ora.drivers.acfs' on 'hpc3' succeeded&lt;br /&gt;CRS-2677: Stop of 'ora.evmd' on 'hpc3' succeeded&lt;br /&gt;CRS-2677: Stop of 'ora.cluster_interconnect.haip' on 'hpc3' succeeded&lt;br /&gt;CRS-2677: Stop of 'ora.mdnsd' on 'hpc3' succeeded&lt;br /&gt;CRS-2677: Stop of 'ora.ctssd' on 'hpc3' succeeded&lt;br /&gt;CRS-2673: Attempting to stop 'ora.cssd' on 'hpc3'&lt;br /&gt;CRS-2677: Stop of 'ora.cssd' on 'hpc3' succeeded&lt;br /&gt;CRS-2673: Attempting to stop 'ora.diskmon' on 'hpc3'&lt;br /&gt;CRS-2673: Attempting to stop 'ora.crf' on 'hpc3'&lt;br /&gt;CRS-2677: Stop of 'ora.diskmon' on 'hpc3' succeeded&lt;br /&gt;CRS-2677: Stop of 'ora.crf' on 'hpc3' succeeded&lt;br /&gt;CRS-2673: Attempting to stop 'ora.gipcd' on 'hpc3'&lt;br /&gt;CRS-2677: Stop of 'ora.gipcd' on 'hpc3' succeeded&lt;br /&gt;CRS-2673: Attempting to stop 'ora.gpnpd' on 'hpc3'&lt;br /&gt;CRS-2677: Stop of 'ora.gpnpd' on 'hpc3' succeeded&lt;br /&gt;CRS-2793: Shutdown of Oracle High Availability Services-managed resources on 'hpc3' has completed&lt;br /&gt;CRS-4133: Oracle High Availability Services has been stopped.&lt;br /&gt;OLR initialization - successful&lt;br /&gt;Replacing Clusterware entries in inittab&lt;br /&gt;clscfg: EXISTING configuration version 5 detected.&lt;br /&gt;clscfg: version 5 is 11g Release 2.&lt;br /&gt;Successfully accumulated necessary OCR keys.&lt;br /&gt;Creating OCR keys for user 'root', privgrp 'root'..&lt;br /&gt;Operation successful.&lt;br /&gt;Started to upgrade the Oracle Clusterware. This operation may take a few minutes.&lt;br /&gt;Started to upgrade the CSS.&lt;br /&gt;Started to upgrade the CRS.&lt;br /&gt;The CRS was successfully upgraded.&lt;br /&gt;Oracle Clusterware operating version was successfully set to 11.2.0.3.0&lt;br /&gt;&lt;br /&gt;ASM upgrade has finished on last node.&lt;br /&gt;&lt;br /&gt;PRKO-2116 : OC4J is already enabled&lt;br /&gt;Configure Oracle Grid Infrastructure for a Cluster ... succeeded&lt;/pre&gt;Check the versions &lt;br /&gt;&lt;pre&gt;crsctl query crs activeversion&lt;br /&gt;Oracle Clusterware active version on the cluster is [11.2.0.3.0]&lt;br /&gt;&lt;br /&gt;crsctl query crs softwareversion&lt;br /&gt;Oracle Clusterware version on node [hpc3] is [11.2.0.3.0]&lt;br /&gt;&lt;br /&gt;crsctl query crs releaseversion&lt;br /&gt;Oracle High Availability Services release version on the local node is [11.2.0.3.0]&lt;/pre&gt;As mentioned in the begining of this blog cluvfy could be used to verify the compliance of clusterware and database.&lt;br /&gt;&lt;pre&gt;./cluvfy comp healthcheck -collect cluster -bestpractice -deviations -html -save -savedir /home/oracle&lt;/pre&gt;This command will create a html file in /home/oracle listing the findings of the commands. There are serveral other options related to this and could use to verify the database as well. To verify the database must first run the $GI_HOME/cv/admin/cvusys.sql script to create the necessary user.&lt;br /&gt;&lt;br /&gt;After rootupgrade continue rest of the configuration&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-O0t3xPHVd9E/TphcpB4oBJI/AAAAAAAAAVg/PJ-teu6JH40/s1600/4.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="238" src="http://3.bp.blogspot.com/-O0t3xPHVd9E/TphcpB4oBJI/AAAAAAAAAVg/PJ-teu6JH40/s320/4.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;This concludes the GI upgrade. Next is to upgrade the Oracle Home and the database. As with 11.2.0.2 upgrade this is done as an out of place upgrade. Both software and database is upgraded at the same time. &lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-9LecJaWEOQY/TphdTLWoOlI/AAAAAAAAAVs/SG73esKvo-I/s1600/8.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="240" src="http://3.bp.blogspot.com/-9LecJaWEOQY/TphdTLWoOlI/AAAAAAAAAVs/SG73esKvo-I/s320/8.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;When prompted run the root.sh&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-oD-AVSlWygk/TphdoRPzcfI/AAAAAAAAAV4/4PMGrMLRYpk/s1600/7.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="238" src="http://3.bp.blogspot.com/-oD-AVSlWygk/TphdoRPzcfI/AAAAAAAAAV4/4PMGrMLRYpk/s320/7.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;pre&gt;/opt/app/oracle/product/11.2.0/clusdb_3/root.sh&lt;br /&gt;Performing root user operation for Oracle 11g&lt;br /&gt;&lt;br /&gt;The following environment variables are set as:&lt;br /&gt;    ORACLE_OWNER= oracle&lt;br /&gt;    ORACLE_HOME=  /opt/app/oracle/product/11.2.0/clusdb_3&lt;br /&gt;&lt;br /&gt;Enter the full pathname of the local bin directory: [/usr/local/bin]:&lt;br /&gt;The contents of "dbhome" have not changed. No need to overwrite.&lt;br /&gt;The contents of "oraenv" have not changed. No need to overwrite.&lt;br /&gt;The contents of "coraenv" have not changed. No need to overwrite.&lt;br /&gt;&lt;br /&gt;Entries will be added to the /etc/oratab file as needed by&lt;br /&gt;Database Configuration Assistant when a database is created&lt;br /&gt;Finished running generic part of root script.&lt;br /&gt;Now product-specific root actions will be performed.&lt;br /&gt;Finished product-specific root actions.&lt;/pre&gt;Summary will be shown once the upgrade is completed. &lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-kPj-f22ub0M/TpheVtKwwKI/AAAAAAAAAWE/FGVQ-uHZyIM/s1600/9.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="240" src="http://1.bp.blogspot.com/-kPj-f22ub0M/TpheVtKwwKI/AAAAAAAAAWE/FGVQ-uHZyIM/s320/9.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;pre&gt;COMP_NAME                           STATUS   VERSION&lt;br /&gt;----------------------------------- -------- ------------&lt;br /&gt;OWB                                 VALID    11.2.0.1.0&lt;br /&gt;Oracle Application Express          VALID    3.2.1.00.10&lt;br /&gt;Oracle Enterprise Manager           VALID    11.2.0.3.0&lt;br /&gt;OLAP Catalog                        VALID    11.2.0.3.0&lt;br /&gt;Spatial                             VALID    11.2.0.3.0&lt;br /&gt;Oracle Multimedia                   VALID    11.2.0.3.0&lt;br /&gt;Oracle XML Database                 VALID    11.2.0.3.0&lt;br /&gt;Oracle Text                         VALID    11.2.0.3.0&lt;br /&gt;Oracle Expression Filter            VALID    11.2.0.3.0&lt;br /&gt;Oracle Rules Manager                VALID    11.2.0.3.0&lt;br /&gt;Oracle Workspace Manager            VALID    11.2.0.3.0&lt;br /&gt;Oracle Database Catalog Views       VALID    11.2.0.3.0&lt;br /&gt;Oracle Database Packages and Types  VALID    11.2.0.3.0&lt;br /&gt;JServer JAVA Virtual Machine        VALID    11.2.0.3.0&lt;br /&gt;Oracle XDK                          VALID    11.2.0.3.0&lt;br /&gt;Oracle Database Java Packages       VALID    11.2.0.3.0&lt;br /&gt;OLAP Analytic Workspace             VALID    11.2.0.3.0&lt;br /&gt;Oracle OLAP API                     VALID    11.2.0.3.0&lt;br /&gt;Oracle Real Application Clusters    VALID    11.2.0.3.0&lt;/pre&gt;From patch history (using &lt;a href="http://asanga-pradeep.blogspot.com/2009/06/admon-20.html"&gt;ADMon&lt;/a&gt;)&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-Nagkwli49Os/TphfKJz03RI/AAAAAAAAAWQ/W0WvwecXW5Y/s1600/10.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="217" src="http://3.bp.blogspot.com/-Nagkwli49Os/TphfKJz03RI/AAAAAAAAAWQ/W0WvwecXW5Y/s400/10.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;This concludes the upgrade to 11.2.0.3.&lt;br /&gt;&lt;br /&gt;If automatic shared memory managment (ASMM) is used then read the post &lt;a href="http://asanga-pradeep.blogspot.com/2011/11/multiple-shared-memory-segments-created.html"&gt;Multiple Shared Memory Segments Created by Default on 11.2.0.3&lt;/a&gt; &lt;br /&gt;&lt;script type="text/javascript"&gt;&lt;!--google_ad_client = "ca-pub-5510817526739610";/* leadborad */google_ad_slot = "9860710817";google_ad_width = 728;google_ad_height = 90;//--&gt;&lt;/script&gt;&lt;br /&gt;&lt;script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" type="text/javascript"&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2414933436751311863-6538108326745943055?l=asanga-pradeep.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/6538108326745943055'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/6538108326745943055'/><link rel='alternate' type='text/html' href='http://asanga-pradeep.blogspot.com/2011/10/upgrading-from-11202-to-11203.html' title='Upgrading from 11.2.0.2 to 11.2.0.3'/><author><name>Asanga</name><uri>http://www.blogger.com/profile/06917616787415349832</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_90fhbVRwXDU/TECqZgHU0eI/AAAAAAAAAIo/hwI2BMzwDcI/S220/profile.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/-JEMugCqEQLo/TphXWtDGRnI/AAAAAAAAAUk/wCzhvTacHlI/s72-c/2.png' height='72' width='72'/></entry><entry><id>tag:blogger.com,1999:blog-2414933436751311863.post-2135339579029403734</id><published>2011-10-14T03:44:00.000-07:00</published><updated>2011-10-19T05:51:55.208-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='rac'/><category scheme='http://www.blogger.com/atom/ns#' term='grid infrastructure'/><category scheme='http://www.blogger.com/atom/ns#' term='11gR2'/><category scheme='http://www.blogger.com/atom/ns#' term='cluster'/><category scheme='http://www.blogger.com/atom/ns#' term='11.2.0.2'/><category scheme='http://www.blogger.com/atom/ns#' term='11.2.0.1'/><category scheme='http://www.blogger.com/atom/ns#' term='upgrade'/><title type='text'>Upgrading from 11.2.0.1 to 11.2.0.2 - Part 2</title><content type='html'>Metalink notes related to 11.2.0.1 to 11.2.0.2 upgrade&lt;br /&gt;&lt;br /&gt;Complete checklist for out-of-place manual upgrade from 11.2.0.1 to 11.2.0.2 &lt;b&gt;[ID 1276368.1]&lt;/b&gt;&lt;br /&gt;Important Changes to Oracle Database Patch Sets Starting With 11.2.0.2 &lt;b&gt;[ID 1189783.1]&lt;/b&gt;&lt;br /&gt;Things to Consider Before Upgrading to 11.2.0.2 Grid Infrastructure&lt;b&gt; [ID 1312225.1]&lt;/b&gt;&lt;br /&gt;ASM 11gR2: How To Upgrade An ASM Instance To Release 11gR2 (11.2)?&lt;b&gt; [ID 950200.1]&lt;/b&gt;&lt;br /&gt;Oracle Grid Infrastructure 11.2.0.2 Installation or Upgrade may fail due to Multicasting Requirement&lt;b&gt; [ID 1212703.1]&lt;/b&gt;&lt;br /&gt;Oracle Database Upgrade Path Reference List &lt;b&gt;[ID 730365.1]&lt;/b&gt;&lt;br /&gt;Upgrade Advisor: Database from 10.2 to 11.2 &lt;b&gt;[ID 251.1]&lt;/b&gt;&lt;br /&gt;Complete Checklist for Manual Upgrades to 11gR2 &lt;b&gt;[ID 837570.1]&lt;/b&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2414933436751311863-2135339579029403734?l=asanga-pradeep.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/2135339579029403734'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/2135339579029403734'/><link rel='alternate' type='text/html' href='http://asanga-pradeep.blogspot.com/2011/10/upgrading-from-11201-to-11202-part-2.html' title='Upgrading from 11.2.0.1 to 11.2.0.2 - Part 2'/><author><name>Asanga</name><uri>http://www.blogger.com/profile/06917616787415349832</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_90fhbVRwXDU/TECqZgHU0eI/AAAAAAAAAIo/hwI2BMzwDcI/S220/profile.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-2414933436751311863.post-3056124069069004375</id><published>2011-10-05T07:56:00.000-07:00</published><updated>2011-10-05T07:56:26.369-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='latch free'/><category scheme='http://www.blogger.com/atom/ns#' term='Wait Events'/><category scheme='http://www.blogger.com/atom/ns#' term='wait'/><category scheme='http://www.blogger.com/atom/ns#' term='11gR1'/><category scheme='http://www.blogger.com/atom/ns#' term='oracle'/><title type='text'>Latch Free Waits</title><content type='html'>A test development running 11gR1 (11.1.0.7) started to show high number of latch free waits during a load test.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-0MeO2gqeWnA/ToxlXr81nZI/AAAAAAAAATE/_rCFK1Ej8_A/s1600/1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="60" src="http://2.bp.blogspot.com/-0MeO2gqeWnA/ToxlXr81nZI/AAAAAAAAATE/_rCFK1Ej8_A/s320/1.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;Looking at the AWR report it could be seen that latch free waits is part of the top 5 events. &lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-kBrMM2pUXGg/Toxnpjf3VWI/AAAAAAAAATM/wSPAgFw-RAM/s1600/2.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="117" src="http://4.bp.blogspot.com/-kBrMM2pUXGg/Toxnpjf3VWI/AAAAAAAAATM/wSPAgFw-RAM/s320/2.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;Going through the latch activity section of the AWR report it could seen &lt;b&gt;Result Cache: Latch&lt;/b&gt; and &lt;b&gt;SQL memory manager latch&lt;/b&gt; having the large wait times compared to other latch types. &lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-AGPUI68Hp2E/ToxolUBHZoI/AAAAAAAAATU/CVxmSQlibWw/s1600/3.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="83" src="http://3.bp.blogspot.com/-AGPUI68Hp2E/ToxolUBHZoI/AAAAAAAAATU/CVxmSQlibWw/s320/3.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;a href="http://asanga-pradeep.blogspot.com/search/label/result%20cache"&gt;Result Cache&lt;/a&gt; latch is used for controlling access to the result cache. &lt;br /&gt;&lt;br /&gt;Used GV$RESULT_CACHE_OBJECTS to identify the objects that are being cached. In this case there was only one object which was a function. Remove the caching option from the function and ran the load test again.&lt;br /&gt;&lt;br /&gt;In the second test the latch free waits were less and concurrency (cache buffer chains) were predominant.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-Gnaw55EWN_Y/ToxqY_rp0GI/AAAAAAAAATc/VYVFZvVNK1s/s1600/4.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="68" src="http://3.bp.blogspot.com/-Gnaw55EWN_Y/ToxqY_rp0GI/AAAAAAAAATc/VYVFZvVNK1s/s320/4.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Top 5 wait events shows that latch free events have decreased compared to previous time. &lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-qpfByIW8p9s/ToxrUY_JDEI/AAAAAAAAATk/IuzCzUQe0eQ/s1600/5.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="116" src="http://1.bp.blogspot.com/-qpfByIW8p9s/ToxrUY_JDEI/AAAAAAAAATk/IuzCzUQe0eQ/s320/5.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;The high number of cache buffer chains are as a result of multiple sessions running the same sql and accessing same set of blocks (hot blocks). It is this sql that was inside the function that had used result cached feature. Since result caching was removed from the function sql was getting executed rather than result being served from the cache. &lt;br /&gt;&lt;br /&gt;Predominant latch in the second period was cache buffer chain.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-HnRtNfB9s-Y/ToxsHKeSZlI/AAAAAAAAATs/OvaD-DYdp6U/s1600/6.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="50" src="http://1.bp.blogspot.com/-HnRtNfB9s-Y/ToxsHKeSZlI/AAAAAAAAATs/OvaD-DYdp6U/s320/6.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Comparison AWR report shows DB Time being reduced while DB CPU time increasing.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-S0nzeC8NJGE/Toxs2WQk5VI/AAAAAAAAAT0/Nfluu2UiDCY/s1600/7.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="65" src="http://4.bp.blogspot.com/-S0nzeC8NJGE/Toxs2WQk5VI/AAAAAAAAAT0/Nfluu2UiDCY/s320/7.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Wait Event comparison captures the reduction of the latch free and increase of cache buffer chain.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-SbkBh3KMcwc/ToxtQTfFxgI/AAAAAAAAAT8/y4TWfXw_jWU/s1600/8.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="51" src="http://1.bp.blogspot.com/-SbkBh3KMcwc/ToxtQTfFxgI/AAAAAAAAAT8/y4TWfXw_jWU/s320/8.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Latch wait time comparison&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-fuJXE5J6TvM/ToxturqTV8I/AAAAAAAAAUE/pMdLI9lZ9zM/s1600/9.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="36" src="http://4.bp.blogspot.com/-fuJXE5J6TvM/ToxturqTV8I/AAAAAAAAAUE/pMdLI9lZ9zM/s320/9.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Mutex Sleep Summary in test 1.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-5OTBR7tTFWA/ToxuUscfY9I/AAAAAAAAAUM/tq7kNS4FCxc/s1600/10.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="306" src="http://4.bp.blogspot.com/-5OTBR7tTFWA/ToxuUscfY9I/AAAAAAAAAUM/tq7kNS4FCxc/s320/10.png" width="302" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Mutex Sleep Summary in test 2.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-TyDo2G-Qucc/ToxujYIHT2I/AAAAAAAAAUU/gzjdT_nypgU/s1600/11.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="259" src="http://3.bp.blogspot.com/-TyDo2G-Qucc/ToxujYIHT2I/AAAAAAAAAUU/gzjdT_nypgU/s320/11.png" width="302" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Comparison of the above two summaries shows during the second period mutex were obtained much quicker and far less sleeps to get the mutex.&lt;br /&gt;&lt;br /&gt;Take home point is even though result cache is expected to reduce the load on the database by preventing the execution of the SQL and serving sessions using the cache, it could have other effects/bottlenecks/issues etc that could negate the gains. &lt;br /&gt;&lt;br /&gt;Another event that was predominant in these test was SQL Memory Manager latch. Metalink note 9732503.8 mentions Bug 9732503 with regard to this latch in certain platforms and Oracle versions. More importantly it also states &lt;br /&gt;&lt;br /&gt;&lt;i&gt;This issue is often caused when the value of pga_aggregate_target is set too low, ie. when the statistic "over allocation count" is non zero in v$pgastat. When this is the case, increase pga_aggregate_target such that it is set to at least "maximum PGA allocated" in v$pgastat. You can find more information on tuning pga_aggregate_target in the Oracle tuning guide.&lt;/i&gt;&lt;br /&gt;&lt;br /&gt;Metalink notes useful in diagnosing latch free wait events&lt;br /&gt;&lt;br /&gt;WAITEVENT: "latch free" Reference Note [ID 34576.1]&lt;br /&gt;How to Identify Which Latch is Associated with a "latch free" wait [ID 413942.1]&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2414933436751311863-3056124069069004375?l=asanga-pradeep.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/3056124069069004375'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/3056124069069004375'/><link rel='alternate' type='text/html' href='http://asanga-pradeep.blogspot.com/2011/10/latch-free-waits.html' title='Latch Free Waits'/><author><name>Asanga</name><uri>http://www.blogger.com/profile/06917616787415349832</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_90fhbVRwXDU/TECqZgHU0eI/AAAAAAAAAIo/hwI2BMzwDcI/S220/profile.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/-0MeO2gqeWnA/ToxlXr81nZI/AAAAAAAAATE/_rCFK1Ej8_A/s72-c/1.png' height='72' width='72'/></entry><entry><id>tag:blogger.com,1999:blog-2414933436751311863.post-6808440746587542818</id><published>2011-09-13T06:26:00.000-07:00</published><updated>2011-10-03T10:51:33.621-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='sql'/><category scheme='http://www.blogger.com/atom/ns#' term='lob'/><category scheme='http://www.blogger.com/atom/ns#' term='blob'/><title type='text'>SQL Sinppet : Size of BLOB for each row.</title><content type='html'>Assuming there's a table with a blob column to get the size of each row's blob size&lt;br /&gt;&lt;pre&gt;select object_name,DBMS_LOB.GETLENGTH(blob_column) from table;&lt;/pre&gt;or&lt;br /&gt;&lt;pre&gt;select object_name,lengthb(blob_column) from table;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2414933436751311863-6808440746587542818?l=asanga-pradeep.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/6808440746587542818'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/6808440746587542818'/><link rel='alternate' type='text/html' href='http://asanga-pradeep.blogspot.com/2011/09/sql-sinppet-size-of-blob-for-each-row.html' title='SQL Sinppet : Size of BLOB for each row.'/><author><name>Asanga</name><uri>http://www.blogger.com/profile/06917616787415349832</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_90fhbVRwXDU/TECqZgHU0eI/AAAAAAAAAIo/hwI2BMzwDcI/S220/profile.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-2414933436751311863.post-1439728352210852538</id><published>2011-08-30T03:48:00.000-07:00</published><updated>2011-08-30T04:20:02.694-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='sql'/><category scheme='http://www.blogger.com/atom/ns#' term='performance'/><category scheme='http://www.blogger.com/atom/ns#' term='scalar subquery'/><category scheme='http://www.blogger.com/atom/ns#' term='pl/sql'/><category scheme='http://www.blogger.com/atom/ns#' term='oracle'/><title type='text'>Scalar subqueries to reduce PL/SQL to SQL switching</title><content type='html'>Tom Kyte has written an excellent article on the current issue (September/October) of &lt;a href="http://www.oracle.com/technetwork/oramag/magazine/current-issue/index.html"&gt;Oracle Magazine&lt;/a&gt; which shows how to reduce switching between pl/sql and sql using scalar subquery. &lt;br /&gt;&lt;br /&gt;Tom describes a scalar subquery as "&lt;span style="font-style:italic;"&gt;What exactly is a scalar subquery? It is a subquery in a SQL statement that returns exactly one column and zero rows or one row. That single column can be a complex object type, so it can consist of many attributes, but the subquery returns a single scalar value (or NULL if the subquery returns zero records). A scalar subquery can be used anywhere a literal could have been used.&lt;/span&gt;" &lt;br /&gt;&lt;br /&gt;On the article there are many comparisons of using scalar subquery vs deterministic pl/sql, result cache and etc. &lt;br /&gt;Below is the simplest case of performance comparison with and without scalar subquery. &lt;br /&gt;&lt;br /&gt;1.Create a big table to query &lt;pre&gt;SQL&amp;gt; create table bigtable as select * from all_objects nologging;&lt;/pre&gt;2. Create the function that will be used in this test case&lt;pre&gt;create or replace function mytest(p_owner varchar2) return number is&lt;br /&gt;obj_count number :=0;&lt;br /&gt;begin &lt;br /&gt; select count(*) into obj_count from bigtable bt where bt.owner = p_owner; &lt;br /&gt; return obj_count; &lt;br /&gt;end; /&lt;/pre&gt;3. Run the first test case without scalar subquery&lt;pre&gt;set timing on&lt;br /&gt;variable cpu number;&lt;br /&gt;begin&lt;br /&gt;:cpu := dbms_utility.get_cpu_time;&lt;br /&gt;end;&lt;br /&gt;/&lt;br /&gt;&lt;br /&gt;SQL&amp;gt; select owner,mytest(owner) from bigtable;&lt;br /&gt;....&lt;br /&gt;SYS                                    31328&lt;br /&gt;SYS                                    31328&lt;br /&gt;&lt;br /&gt;72232 rows selected. -- this is all the rows in the table&lt;br /&gt;Elapsed: 00:05:11.01&lt;br /&gt;&lt;br /&gt;SQL&amp;gt; select dbms_utility.get_cpu_time-:cpu cpu_hsecs from dual;&lt;br /&gt;&lt;br /&gt;CPU_HSECS&lt;br /&gt;---------&lt;br /&gt;30931&lt;/pre&gt;4. Second test case with scalar subquery caching&lt;pre&gt;set timing on&lt;br /&gt;variable cpu number;&lt;br /&gt;begin&lt;br /&gt;:cpu := dbms_utility.get_cpu_time;&lt;br /&gt;end;&lt;br /&gt;/&lt;br /&gt;&lt;br /&gt;SQL&gt; select owner,&lt;span style="font-weight:bold;"&gt;(select mytest(owner) from dual)&lt;/span&gt; mo from bigtable;&lt;br /&gt;&lt;br /&gt;SYS                                                    31328&lt;br /&gt;SYS                                                    31328&lt;br /&gt;SYS                                                    31328&lt;br /&gt;&lt;br /&gt;72232 rows selected.  -- all the rows in the table&lt;br /&gt;&lt;br /&gt;Elapsed: 00:00:17.05&lt;br /&gt;&lt;br /&gt;SQL&gt; select dbms_utility.get_cpu_time-:cpu cpu_hsecs from dual;&lt;br /&gt;CPU_HSECS&lt;br /&gt;---------&lt;br /&gt;56&lt;/pre&gt;As seen from the outputs both cpu usage and elapsed time has reduced. How this happens has been explained in the above mentioned article.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2414933436751311863-1439728352210852538?l=asanga-pradeep.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/1439728352210852538'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/1439728352210852538'/><link rel='alternate' type='text/html' href='http://asanga-pradeep.blogspot.com/2011/08/scalar-subqueries-to-reduce-plsql-to.html' title='Scalar subqueries to reduce PL/SQL to SQL switching'/><author><name>Asanga</name><uri>http://www.blogger.com/profile/06917616787415349832</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_90fhbVRwXDU/TECqZgHU0eI/AAAAAAAAAIo/hwI2BMzwDcI/S220/profile.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-2414933436751311863.post-8194233869473703236</id><published>2011-08-26T06:30:00.000-07:00</published><updated>2012-02-11T11:37:19.796-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ksfd: async disk io'/><category scheme='http://www.blogger.com/atom/ns#' term='11gR2'/><category scheme='http://www.blogger.com/atom/ns#' term='11g'/><category scheme='http://www.blogger.com/atom/ns#' term='Wait Events'/><category scheme='http://www.blogger.com/atom/ns#' term='10g'/><category scheme='http://www.blogger.com/atom/ns#' term='11gR1'/><category scheme='http://www.blogger.com/atom/ns#' term='oracle'/><title type='text'>ksfd: async disk io</title><content type='html'>ksfd: async disk io was appearing from time to time somewhat predominately (compared to other waits events) on standard edition 11gR1 two node cluster. &lt;br /&gt;&lt;br /&gt;Monitoring with &lt;a href="http://asanga-pradeep.blogspot.com/2011/11/apconsole.html"&gt;APConsole&lt;/a&gt; showed the following. &lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/-j2AARNO6GcQ/Tlegn-w_yWI/AAAAAAAAAS0/KmGg8a2n_gE/s1600/Untitled.png"&gt;&lt;img alt="" border="0" id="BLOGGER_PHOTO_ID_5645157266656053602" src="http://4.bp.blogspot.com/-j2AARNO6GcQ/Tlegn-w_yWI/AAAAAAAAAS0/KmGg8a2n_gE/s400/Untitled.png" style="cursor: hand; cursor: pointer; display: block; height: 218px; margin: 0px auto 10px; text-align: center; width: 400px;" /&gt;&lt;/a&gt; &lt;br /&gt;&lt;br /&gt;Following metalink notes are related to this wait event. &lt;br /&gt;&lt;br /&gt;High waits for "ksfd: async disk io" [ID &lt;span style="font-weight: bold;"&gt;1326634.1&lt;/span&gt;] &lt;br /&gt;Bug 8660422 - "unspecified wait event" and/or "ksfd: async disk IO" after applying patches that include fix for Bug 7510766 [ID &lt;span style="font-weight: bold;"&gt;8660422.8&lt;/span&gt;] &lt;br /&gt;&lt;br /&gt;This database has the PSU 11.1.0.7.6 applied. Blog post will be updated when PSU 11.1.0.7.7 or the patch 8660422 is applied.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size: large;"&gt;Update on 19th November 2011&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;After October 2011 PSU (11.1.0.7.9) was applied ksfd: async disk io waits disappeared. Graph (generated with &lt;a href="http://asanga-pradeep.blogspot.com/2009/06/admon-20.html"&gt;ADMon&lt;/a&gt;)below shows the waits for two week period. Wait was happening daily on both or at least one instance (this was a two node RAC) but stopped since the applying of the patch (Patch was applied on 17th).&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-jYB7vfBojS8/TsglSE04gcI/AAAAAAAAAbs/_J-gQi5NVQ8/s1600/ksfd.png" imageanchor="1" style="margin-left:1em; margin-right:1em"&gt;&lt;img border="0" height="74" width="320" src="http://3.bp.blogspot.com/-jYB7vfBojS8/TsglSE04gcI/AAAAAAAAAbs/_J-gQi5NVQ8/s320/ksfd.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2414933436751311863-8194233869473703236?l=asanga-pradeep.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/8194233869473703236'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/8194233869473703236'/><link rel='alternate' type='text/html' href='http://asanga-pradeep.blogspot.com/2011/08/ksfd-async-disk-io.html' title='ksfd: async disk io'/><author><name>Asanga</name><uri>http://www.blogger.com/profile/06917616787415349832</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_90fhbVRwXDU/TECqZgHU0eI/AAAAAAAAAIo/hwI2BMzwDcI/S220/profile.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-j2AARNO6GcQ/Tlegn-w_yWI/AAAAAAAAAS0/KmGg8a2n_gE/s72-c/Untitled.png' height='72' width='72'/></entry><entry><id>tag:blogger.com,1999:blog-2414933436751311863.post-6020138460727688937</id><published>2011-08-04T04:29:00.000-07:00</published><updated>2011-08-04T05:06:19.653-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='datafile'/><category scheme='http://www.blogger.com/atom/ns#' term='11g'/><category scheme='http://www.blogger.com/atom/ns#' term='remove'/><category scheme='http://www.blogger.com/atom/ns#' term='10g'/><category scheme='http://www.blogger.com/atom/ns#' term='tablespaces'/><title type='text'>Removing Datafiles from a Tablespace</title><content type='html'>There are serveral ways to remove a datafile, one is &lt;a href="http://asanga-pradeep.blogspot.com/2008/03/data-file-deleted-using-os-utility.html"&gt;with an offline drop&lt;/a&gt; and other is using alter tablespace. The offline drop is to be used inconjunction with drop tablespace, that is is expected the tablespace will also be dropped. If the intention is just to drop one or more datafiles that is part of a tablespace then &lt;span style="font-style:italic;"&gt;alter tablespace drop datafile&lt;/span&gt; must be used which was introduced with 10gR2. There are several constraints to dropping a datafile they are (from Oracle documentation)&lt;br /&gt;&lt;span style="font-style:italic;"&gt;The following are restrictions for dropping datafiles and tempfiles:&lt;br /&gt;The database must be open.&lt;br /&gt;&lt;br /&gt;If a datafile is not empty, it cannot be dropped. If you must remove a datafile that is not empty and that cannot be made empty by dropping schema objects, you must drop the tablespace that contains the datafile.&lt;br /&gt;&lt;br /&gt;You cannot drop the first or only datafile in a tablespace. This means that DROP DATAFILE cannot be used with a bigfile tablespace.&lt;br /&gt;&lt;br /&gt;You cannot drop datafiles in a read-only tablespace.&lt;br /&gt;&lt;br /&gt;You cannot drop datafiles in the SYSTEM tablespace.&lt;br /&gt;&lt;br /&gt;If a datafile in a locally managed tablespace is offline, it cannot be dropped.&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;Situation is that there are segment(s) where extents are spread across multiple datafiles and now it is decided to move all the extents into single datafile.&lt;pre&gt;SELECT x.*,  COUNT(*) FROM&lt;br /&gt;  (SELECT owner, (SELECT name FROM v$datafile WHERE file#=file_id ) AS filename ,&lt;br /&gt;    segment_name ,    segment_type ,    tablespace_name&lt;br /&gt;  FROM dba_extents  WHERE tablespace_name='TEST'  ) x&lt;br /&gt;group by owner,filename,segment_name,segment_type,tablespace_name ORDER BY 1,4 DESC,  3;&lt;br /&gt;&lt;br /&gt;OWNER  FILENAME                                    SEGMENT_ SEGMENT_ TABLE   COUNT(*)&lt;br /&gt;------ ------------------------------------------- -------- -------- ----- ----------&lt;br /&gt;ASANGA +DATA/rac11g1/datafile/test.372.758295243   FULT     TABLE    TEST          19&lt;br /&gt;ASANGA +FLASH/rac11g1/datafile/test.265.758295919  FULT     TABLE    TEST           1&lt;br /&gt;ASANGA +FLASH/rac11g1/datafile/test.265.758295919  FULINDX  INDEX    TEST          12&lt;/pre&gt;For testing this could be created &lt;a href="http://asanga-pradeep.blogspot.com/2011/01/moving-datafiles-between-asm-disk.html"&gt;with step 1-4 in an earlier post&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;To drop the datafile in the flash diskgroup move the segments (table and indexes) to another tablespace either through alter table .. move (there are other ways too) and alter index rebuild .. tablespace (just one way to move an index). Depending on the number of segments in the datafile that is in flash diskgroup this could take some time and if nologging is used could generate lot of redo.&lt;br /&gt;&lt;br /&gt;Once all the extents are moved out drop the datafile from the tablespace. If the datafile is not empty following error will be shown&lt;pre&gt;SQL&gt; alter tablespace test drop datafile '+FLASH/rac11g1/datafile/test.265.758295919';&lt;br /&gt;alter tablespace test drop datafile '+FLASH/rac11g1/datafile/test.265.758295919'&lt;br /&gt;*&lt;br /&gt;ERROR at line 1:&lt;br /&gt;ORA-03262: the file is non-empty&lt;/pre&gt;To move segments &lt;pre&gt;SQL&gt; alter table fult move tablespace users;&lt;br /&gt;&lt;br /&gt;Table altered.&lt;br /&gt;&lt;br /&gt;SQL&gt; alter index fulindx rebuild online tablespace users;&lt;br /&gt;&lt;br /&gt;Index altered.&lt;/pre&gt;After the move verify no extents are on the datafiles in question &lt;pre&gt;SQL&gt; SELECT x.*,  COUNT(*) FROM&lt;br /&gt;  2    (SELECT owner, (SELECT name FROM v$datafile WHERE file#=file_id ) AS filename ,&lt;br /&gt;  3      segment_name ,    segment_type ,    tablespace_name&lt;br /&gt;  4    FROM dba_extents  WHERE tablespace_name='TEST'  ) x&lt;br /&gt;  5  group by owner,filename,segment_name,segment_type,tablespace_name ORDER BY 1,4 DESC,  3;&lt;br /&gt;&lt;br /&gt;no rows selected&lt;/pre&gt;Drop the datafile&lt;pre&gt;SQL&gt; alter tablespace test drop datafile '+FLASH/rac11g1/datafile/test.265.758295919';&lt;br /&gt;&lt;br /&gt;Tablespace altered.&lt;/pre&gt;Move the segments back into the tablespace which now has only the desired datafile(s).&lt;pre&gt;SQL&gt; alter table fult move tablespace test;&lt;br /&gt;&lt;br /&gt;Table altered.&lt;br /&gt;&lt;br /&gt;SQL&gt; alter index fulindx rebuild online tablespace test;&lt;br /&gt;&lt;br /&gt;Index altered.&lt;br /&gt;&lt;br /&gt;SQL&gt; SELECT x.*,  COUNT(*) FROM&lt;br /&gt;  2    (SELECT owner, (SELECT name FROM v$datafile WHERE file#=file_id ) AS filename ,&lt;br /&gt;  3      segment_name ,    segment_type ,    tablespace_name&lt;br /&gt;  4    FROM dba_extents  WHERE tablespace_name='TEST'  ) x&lt;br /&gt;  5  group by owner,filename,segment_name,segment_type,tablespace_name ORDER BY 1,4 DESC,  3;&lt;br /&gt;&lt;br /&gt;OWNER  FILENAME                                    SEGMENT_ SEGMENT_ TABLE   COUNT(*)&lt;br /&gt;------ ------------------------------------------- -------- -------- ----- ----------&lt;br /&gt;ASANGA +DATA/rac11g1/datafile/test.372.758295243   FULT     TABLE    TEST          20&lt;br /&gt;ASANGA +DATA/rac11g1/datafile/test.372.758295243   FULINDX  INDEX    TEST          12&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2414933436751311863-6020138460727688937?l=asanga-pradeep.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/6020138460727688937'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/6020138460727688937'/><link rel='alternate' type='text/html' href='http://asanga-pradeep.blogspot.com/2011/08/removing-datafile-from-tablespace.html' title='Removing Datafiles from a Tablespace'/><author><name>Asanga</name><uri>http://www.blogger.com/profile/06917616787415349832</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_90fhbVRwXDU/TECqZgHU0eI/AAAAAAAAAIo/hwI2BMzwDcI/S220/profile.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-2414933436751311863.post-1006931732159040175</id><published>2011-07-04T06:34:00.000-07:00</published><updated>2011-07-04T07:51:37.738-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='rac'/><category scheme='http://www.blogger.com/atom/ns#' term='physical standby'/><category scheme='http://www.blogger.com/atom/ns#' term='controlfile'/><category scheme='http://www.blogger.com/atom/ns#' term='policy'/><category scheme='http://www.blogger.com/atom/ns#' term='standby controlfile'/><category scheme='http://www.blogger.com/atom/ns#' term='backup'/><category scheme='http://www.blogger.com/atom/ns#' term='dataguard'/><title type='text'>Changing Backup Policy on Standby DB - 3</title><content type='html'>&lt;a href="http://asanga-pradeep.blogspot.com/2011/07/changing-backup-policy-on-standby-db-2.html"&gt;Previous two posts&lt;/a&gt; were using non-RAC data guard configurations. This blog used a &lt;a href="http://asanga-pradeep.blogspot.com/2011/02/11gr2-rac-to-rac-data-guard.html"&gt;RAC-RAC data guard configuration&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;1. Requirment is to change the backup retention policy.&lt;pre&gt;RMAN&gt;&lt;br /&gt;using target database control file instead of recovery catalog&lt;br /&gt;RMAN configuration parameters for database with db_unique_name RAC11G2S are:&lt;br /&gt;CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # default&lt;br /&gt;&lt;br /&gt;RMAN&gt; CONFIGURE RETENTION POLICY TO REDUNDANCY 2;&lt;br /&gt;&lt;br /&gt;RMAN-00571: ===========================================================&lt;br /&gt;RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============&lt;br /&gt;RMAN-00571: ===========================================================&lt;br /&gt;RMAN-03002: failure of configure command at 04/07/2011 12:47:36&lt;br /&gt;RMAN-05021: this configuration cannot be changed for a BACKUP or STANDBY control file&lt;/pre&gt;2. Change the backup retention policy on primary first&lt;pre&gt;RMAN&gt; CONFIGURE RETENTION POLICY TO REDUNDANCY 2;&lt;br /&gt;&lt;br /&gt;new RMAN configuration parameters:&lt;br /&gt;CONFIGURE RETENTION POLICY TO REDUNDANCY 2;&lt;br /&gt;new RMAN configuration parameters are successfully stored&lt;/pre&gt;3. Make a standby controlfile on the primary after this can revert back to the earlier backup policy on primary.&lt;pre&gt;RMAN&gt; backup current controlfile for standby format '/tmp/standby.ctl';&lt;br /&gt;&lt;br /&gt;Starting backup at 04-JUL-11&lt;br /&gt;using target database control file instead of recovery catalog&lt;br /&gt;allocated channel: ORA_DISK_1&lt;br /&gt;channel ORA_DISK_1: SID=43 instance=rac11g21 device type=DISK&lt;br /&gt;channel ORA_DISK_1: starting full datafile backup set&lt;br /&gt;channel ORA_DISK_1: specifying datafile(s) in backup set&lt;br /&gt;including standby control file in backup set&lt;br /&gt;channel ORA_DISK_1: starting piece 1 at 04-JUL-11&lt;br /&gt;channel ORA_DISK_1: finished piece 1 at 04-JUL-11&lt;br /&gt;piece handle=/tmp/standby.ctl tag=TAG20110623T123939 comment=NONE&lt;br /&gt;channel ORA_DISK_1: backup set complete, elapsed time: 00:00:03&lt;br /&gt;Finished backup at 04-JUL-11&lt;br /&gt;&lt;br /&gt;Starting Control File and SPFILE Autobackup at 04-JUL-11&lt;br /&gt;piece handle=+FLASH/rac11g2/autobackup/2011_07_04/s_754576786.494.754576789 comment=NONE&lt;br /&gt;Finished Control File and SPFILE Autobackup at 04-JUL-11&lt;/pre&gt;4. Move the newly created standby controlfile on primary server to standby server.&lt;br /&gt;&lt;br /&gt;5. Stop log apply and redo transport &lt;pre&gt;DGMGRL&gt; show configuration verbose&lt;br /&gt;&lt;br /&gt;Configuration - rac11g2_dgb&lt;br /&gt;&lt;br /&gt;  Protection Mode: MaxPerformance&lt;br /&gt;  Databases:&lt;br /&gt;    rac11g2  - Primary database&lt;br /&gt;    rac11g2s - Physical standby database&lt;br /&gt; &lt;br /&gt;DGMGRL&gt; edit database rac11g2s set state='APPLY-OFF';&lt;br /&gt;DGMGRL&gt; edit database rac11g2 set state='TRANSPORT-OFF';&lt;/pre&gt;6. Shutdown all instances in standby database RAC and start one instance in nomount mode&lt;pre&gt;srvctl stop database -d rac11g2s&lt;br /&gt;&lt;br /&gt;SQL&gt; startup nomount&lt;br /&gt;ORACLE instance started.&lt;/pre&gt;7. Restore the controlfiles using the newly created standby controlfiles&lt;pre&gt;RMAN&gt; restore standby controlfile from '/home/oracle/standby.ctl';&lt;br /&gt;&lt;br /&gt;Starting restore at 04-JUL-11&lt;br /&gt;using target database control file instead of recovery catalog&lt;br /&gt;allocated channel: ORA_DISK_1&lt;br /&gt;channel ORA_DISK_1: SID=143 instance=rac11g2s2 device type=DISK&lt;br /&gt;&lt;br /&gt;channel ORA_DISK_1: restoring control file&lt;br /&gt;channel ORA_DISK_1: restore complete, elapsed time: 00:00:02&lt;br /&gt;output file name=+DATA/rac11g2s/controlfile/current.257.754586439&lt;br /&gt;output file name=+FLASH/rac11g2s/controlfile/current.482.754586439&lt;/pre&gt;8. Mount the database and catalog the datafiles &lt;pre&gt;RMAN&gt; alter database mount;&lt;br /&gt;&lt;br /&gt;database mounted&lt;br /&gt;released channel: ORA_DISK_1&lt;br /&gt;&lt;br /&gt;RMAN&gt; catalog start with '+DATA/rac11g2s/datafile';&lt;br /&gt;&lt;br /&gt;Starting implicit crosscheck backup at 04-JUL-11&lt;br /&gt;allocated channel: ORA_DISK_1&lt;br /&gt;Crosschecked 8 objects&lt;br /&gt;Finished implicit crosscheck backup at 04-JUL-11&lt;br /&gt;&lt;br /&gt;Starting implicit crosscheck copy at 04-JUL-11&lt;br /&gt;using channel ORA_DISK_1&lt;br /&gt;Crosschecked 2 objects&lt;br /&gt;Finished implicit crosscheck copy at 04-JUL-11&lt;br /&gt;&lt;br /&gt;searching for all files in the recovery area&lt;br /&gt;cataloging files...&lt;br /&gt;cataloging done&lt;br /&gt;&lt;br /&gt;List of Cataloged Files&lt;br /&gt;=======================&lt;br /&gt;File Name: +flash/RAC11G2S/AUTOBACKUP/2011_07_04/s_755582799.520.755612793&lt;br /&gt;File Name: +flash/RAC11G2S/AUTOBACKUP/2011_07_01/s_755372829.380.755372831&lt;br /&gt;File Name: +flash/RAC11G2S/AUTOBACKUP/2011_07_01/s_755369531.371.755373091&lt;br /&gt;File Name: +flash/RAC11G2S/BACKUPSET/2011_07_04/annnf0_TAG20110704T122511_0.435.755612715&lt;br /&gt;File Name: +flash/RAC11G2S/BACKUPSET/2011_07_04/nnndf0_TAG20110704T122546_0.424.755612747&lt;br /&gt;File Name: +flash/RAC11G2S/BACKUPSET/2011_07_01/annnf0_TAG20110701T174611_0.414.755372773&lt;br /&gt;File Name: +flash/RAC11G2S/BACKUPSET/2011_07_01/nnndf0_TAG20110701T174616_0.387.755372777&lt;br /&gt;File Name: +flash/RAC11G2S/BACKUPSET/2011_07_01/annnf0_TAG20110701T174706_0.478.755372827&lt;br /&gt;File Name: +flash/RAC11G2S/BACKUPSET/2011_07_01/ncnnf0_TAG20110701T175126_0.315.755373087&lt;br /&gt;File Name: +flash/RAC11G2S/ARCHIVELOG/2011_07_04/thread_1_seq_769.427.755612261&lt;br /&gt;&lt;br /&gt;searching for all files that match the pattern +DATA/rac11g2s/datafile&lt;br /&gt;&lt;br /&gt;List of Files Unknown to the Database&lt;br /&gt;=====================================&lt;br /&gt;File Name: +data/RAC11G2S/DATAFILE/SYSAUX.259.754586467&lt;br /&gt;File Name: +data/RAC11G2S/DATAFILE/SYSTEM.258.754586581&lt;br /&gt;File Name: +data/RAC11G2S/DATAFILE/UNDOTBS3.262.754586657&lt;br /&gt;File Name: +data/RAC11G2S/DATAFILE/UNDOTBS2.261.754586713&lt;br /&gt;File Name: +data/RAC11G2S/DATAFILE/USERS.276.754586727&lt;br /&gt;&lt;br /&gt;Do you really want to catalog the above files (enter YES or NO)? yes&lt;br /&gt;cataloging files...&lt;br /&gt;cataloging done&lt;br /&gt;&lt;br /&gt;List of Cataloged Files&lt;br /&gt;=======================&lt;br /&gt;File Name: +data/RAC11G2S/DATAFILE/SYSAUX.259.754586467&lt;br /&gt;File Name: +data/RAC11G2S/DATAFILE/SYSTEM.258.754586581&lt;br /&gt;File Name: +data/RAC11G2S/DATAFILE/UNDOTBS3.262.754586657&lt;br /&gt;File Name: +data/RAC11G2S/DATAFILE/UNDOTBS2.261.754586713&lt;br /&gt;File Name: +data/RAC11G2S/DATAFILE/USERS.276.754586727&lt;/pre&gt;9. Switch database to copy&lt;pre&gt;RMAN&gt; switch database to copy;&lt;br /&gt;&lt;br /&gt;datafile 1 switched to datafile copy "+DATA/rac11g2s/datafile/system.258.754586581"&lt;br /&gt;datafile 2 switched to datafile copy "+DATA/rac11g2s/datafile/sysaux.259.754586467"&lt;br /&gt;datafile 4 switched to datafile copy "+DATA/rac11g2s/datafile/users.276.754586727"&lt;br /&gt;datafile 5 switched to datafile copy "+DATA/rac11g2s/datafile/undotbs2.261.754586713"&lt;br /&gt;datafile 6 switched to datafile copy "+DATA/rac11g2s/datafile/undotbs3.262.754586657"&lt;/pre&gt;10. Clear the log files &lt;pre&gt;SQL&gt; select group# from v$log;&lt;br /&gt;&lt;br /&gt;    GROUP#&lt;br /&gt;----------&lt;br /&gt;         1&lt;br /&gt;         2&lt;br /&gt;         3&lt;br /&gt;         4&lt;br /&gt;&lt;br /&gt;alter database clear logfile group 1;&lt;br /&gt;alter database clear logfile group 2;&lt;br /&gt;alter database clear logfile group 3;&lt;br /&gt;alter database clear logfile group 4;&lt;/pre&gt;Generate the clearing SQL using and run the output&lt;pre&gt;SQL&gt; select 'alter database clear logfile group '||group#||';' from v$standby_log;&lt;br /&gt;alter database clear logfile group 5;&lt;br /&gt;alter database clear logfile group 6;&lt;br /&gt;alter database clear logfile group 7;&lt;br /&gt;alter database clear logfile group 8;&lt;br /&gt;alter database clear logfile group 9;&lt;br /&gt;alter database clear logfile group 10;&lt;/pre&gt;11. Shutdown the instance and start the RAC database&lt;pre&gt;Database dismounted.&lt;br /&gt;ORACLE instance shut down.&lt;br /&gt;&lt;br /&gt;srvctl start database -d rac11g2s&lt;/pre&gt;12. Enable log apply and transport&lt;pre&gt;dgmgrl sys/rac11g2db&lt;br /&gt;Connected.&lt;br /&gt;&lt;br /&gt;DGMGRL&gt; edit database rac11g2s set STATE='APPLY-ON';&lt;br /&gt;Succeeded.&lt;br /&gt;&lt;br /&gt;DGMGRL&gt; edit database rac11g2 SET STATE='TRANSPORT-ON';&lt;br /&gt;Succeeded.&lt;/pre&gt;13. Verify log apply is working &lt;pre&gt;SQL&gt; select thread#,applied from v$archived_log;&lt;br /&gt;&lt;br /&gt;   THREAD# APPLIED&lt;br /&gt;---------- ---------&lt;br /&gt;         1 YES&lt;br /&gt;         1 YES&lt;br /&gt;         1 IN-MEMORY&lt;br /&gt;         2 NO&lt;br /&gt;         2 YES&lt;/pre&gt; On primary do a log file archive &lt;pre&gt;SQL&gt; alter system archive log current;&lt;/pre&gt; and then on standby&lt;pre&gt;THREAD# APPLIED&lt;br /&gt;---------- ---------&lt;br /&gt;         1 YES&lt;br /&gt;         1 YES&lt;br /&gt;         1 YES&lt;br /&gt;         2 NO&lt;br /&gt;         2 YES&lt;br /&gt;         1 YES&lt;br /&gt;         2 YES&lt;br /&gt;         1 YES&lt;br /&gt;         2 IN-MEMORY&lt;/pre&gt;14. Verify that retention policy is changed&lt;pre&gt;RMAN&gt; show all&lt;br /&gt;&lt;br /&gt;using target database control file instead of recovery catalog&lt;br /&gt;RMAN configuration parameters for database with db_unique_name RAC11G2S are:&lt;br /&gt;CONFIGURE RETENTION POLICY TO REDUNDANCY 2;&lt;/pre&gt;Once everything is confirmed to be working fine, remove the duplicate log files using asmcmd.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2414933436751311863-1006931732159040175?l=asanga-pradeep.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/1006931732159040175'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/1006931732159040175'/><link rel='alternate' type='text/html' href='http://asanga-pradeep.blogspot.com/2011/07/changing-backup-policy-on-standby-db-3.html' title='Changing Backup Policy on Standby DB - 3'/><author><name>Asanga</name><uri>http://www.blogger.com/profile/06917616787415349832</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_90fhbVRwXDU/TECqZgHU0eI/AAAAAAAAAIo/hwI2BMzwDcI/S220/profile.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-2414933436751311863.post-542370237092271401</id><published>2011-07-04T06:02:00.000-07:00</published><updated>2011-07-04T06:46:13.173-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='physical standby'/><category scheme='http://www.blogger.com/atom/ns#' term='controlfile'/><category scheme='http://www.blogger.com/atom/ns#' term='policy'/><category scheme='http://www.blogger.com/atom/ns#' term='standby controlfile'/><category scheme='http://www.blogger.com/atom/ns#' term='backup'/><category scheme='http://www.blogger.com/atom/ns#' term='dataguard'/><title type='text'>Changing Backup Policy on Standby DB - 2</title><content type='html'>The &lt;a href="http://asanga-pradeep.blogspot.com/2011/07/changing-backup-policy-on-standby-db.html"&gt;previous post&lt;/a&gt; is a mixture of steps on metalink notes &lt;span style="font-weight:bold;"&gt;[ID 734862.1]&lt;/span&gt; and &lt;span style="font-weight:bold;"&gt;[ID 459411.1].&lt;/span&gt; This blog is based on &lt;span style="font-weight:bold;"&gt;[ID 734862.1]&lt;/span&gt; and the same data guard configuration used in the &lt;a href="http://asanga-pradeep.blogspot.com/2011/07/changing-backup-policy-on-standby-db.html"&gt;previous post&lt;/a&gt; is used here as well. Again the requirment is to change the backup retention policy.&lt;br /&gt;&lt;br /&gt;On Primary&lt;br /&gt;&lt;br /&gt;1. Change the backup retention policy on primary to the desired retention policy on standby &lt;pre&gt;RMAN&gt; CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 2 days;&lt;br /&gt;&lt;br /&gt;old RMAN configuration parameters:&lt;br /&gt;CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 1 DAYS;&lt;br /&gt;new RMAN configuration parameters:&lt;br /&gt;CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 2 DAYS;&lt;br /&gt;new RMAN configuration parameters are successfully stored&lt;/pre&gt;2. Create a new standby controlfile &lt;pre&gt;RMAN&gt; backup current controlfile for standby format '/tmp/standby.ctl';&lt;/pre&gt; copy the above file to standby server.&lt;br /&gt;&lt;br /&gt;On standby&lt;br /&gt;&lt;br /&gt;3. Stop the log apply and start the standby DB in nomount mode&lt;pre&gt;SQL&gt; alter database recover managed standby database cancel;&lt;br /&gt;&lt;br /&gt;Database altered.&lt;br /&gt;&lt;br /&gt;SQL&gt; shutdown immediate;&lt;br /&gt;ORA-01109: database not open&lt;br /&gt;Database dismounted.&lt;br /&gt;ORACLE instance shut down.&lt;br /&gt;&lt;br /&gt;SQL&gt; startup nomount&lt;br /&gt;ORACLE instance started.&lt;/pre&gt;4. Restore the controlfile using the newly created standby controlfile&lt;pre&gt;rman target /&lt;br /&gt;RMAN&gt; restore standby controlfile from '/home/oracle/standby.ctl';&lt;br /&gt;&lt;br /&gt;Starting restore at 01-JUL-11&lt;br /&gt;using target database control file instead of recovery catalog&lt;br /&gt;allocated channel: ORA_DISK_1&lt;br /&gt;channel ORA_DISK_1: SID=1088 device type=DISK&lt;br /&gt;&lt;br /&gt;channel ORA_DISK_1: restoring control file&lt;br /&gt;channel ORA_DISK_1: restore complete, elapsed time: 00:00:01&lt;br /&gt;output file name=/opt/app/oracle/oradata/STDAUX/controlfile/o1_mf_5q7xfq1o_.ctl&lt;br /&gt;output file name=/opt/app/oracle/oradata/STDAUX/controlfile/o1_mf_5q7xfq2t_.ctl&lt;br /&gt;Finished restore at 01-JUL-11&lt;/pre&gt;5. Mount the database &lt;pre&gt;RMAN&gt; alter database mount;&lt;br /&gt;&lt;br /&gt;database mounted&lt;br /&gt;released channel: ORA_DISK_1&lt;/pre&gt;6. Catalog the datafiles &lt;pre&gt;RMAN&gt; catalog start with '/opt/app/oracle/oradata/STDAUX/datafile';&lt;br /&gt;&lt;br /&gt;Starting implicit crosscheck backup at 01-JUL-11&lt;br /&gt;allocated channel: ORA_DISK_1&lt;br /&gt;channel ORA_DISK_1: SID=1070 device type=DISK&lt;br /&gt;Finished implicit crosscheck backup at 01-JUL-11&lt;br /&gt;&lt;br /&gt;Starting implicit crosscheck copy at 01-JUL-11&lt;br /&gt;using channel ORA_DISK_1&lt;br /&gt;Crosschecked 4 objects&lt;br /&gt;Finished implicit crosscheck copy at 01-JUL-11&lt;br /&gt;&lt;br /&gt;searching for all files in the recovery area&lt;br /&gt;cataloging files...&lt;br /&gt;cataloging done&lt;br /&gt;&lt;br /&gt;List of Cataloged Files&lt;br /&gt;=======================&lt;br /&gt;File Name: /opt/app/oracle/flash_recovery_area/STDAUX/archivelog/2011_07_01/o1_mf_1_1822_70vb948l_.arc&lt;br /&gt;File Name: /opt/app/oracle/flash_recovery_area/STDAUX/archivelog/2011_07_01/o1_mf_1_1817_70v8hn1w_.arc&lt;br /&gt;File Name: /opt/app/oracle/flash_recovery_area/STDAUX/archivelog/2011_07_01/o1_mf_1_1820_70v994l1_.arc&lt;br /&gt;File Name: /opt/app/oracle/flash_recovery_area/STDAUX/archivelog/2011_07_01/o1_mf_1_1816_70v7bz26_.arc&lt;br /&gt;File Name: /opt/app/oracle/flash_recovery_area/STDAUX/archivelog/2011_07_01/o1_mf_1_1818_70v8vn7k_.arc&lt;br /&gt;File Name: /opt/app/oracle/flash_recovery_area/STDAUX/archivelog/2011_07_01/o1_mf_1_1823_70vcb25c_.arc&lt;br /&gt;File Name: /opt/app/oracle/flash_recovery_area/STDAUX/archivelog/2011_07_01/o1_mf_1_1815_70tj299j_.arc&lt;br /&gt;File Name: /opt/app/oracle/flash_recovery_area/STDAUX/archivelog/2011_07_01/o1_mf_1_1819_70v93sg2_.arc&lt;br /&gt;File Name: /opt/app/oracle/flash_recovery_area/STDAUX/archivelog/2011_07_01/o1_mf_1_1821_70v9rxmb_.arc&lt;br /&gt;File Name: /opt/app/oracle/flash_recovery_area/STDAUX/archivelog/2011_07_01/o1_mf_1_1817_70v8wc4x_.arc&lt;br /&gt;File Name: /opt/app/oracle/flash_recovery_area/STDAUX/archivelog/2011_07_01/o1_mf_1_1814_70t0vmyk_.arc&lt;br /&gt;File Name: /opt/app/oracle/flash_recovery_area/STDAUX/archivelog/2011_06_30/o1_mf_1_1813_70scm1p0_.arc&lt;br /&gt;&lt;br /&gt;searching for all files that match the pattern /opt/app/oracle/oradata/STDAUX/datafile&lt;br /&gt;&lt;br /&gt;List of Files Unknown to the Database&lt;br /&gt;=====================================&lt;br /&gt;File Name: /opt/app/oracle/oradata/STDAUX/datafile/o1_mf_undotbs1_70sbx6n4_.dbf&lt;br /&gt;File Name: /opt/app/oracle/oradata/STDAUX/datafile/o1_mf_tbxlobs_70sbx6nb_.dbf&lt;br /&gt;File Name: /opt/app/oracle/oradata/STDAUX/datafile/o1_mf_test_70sbxko9_.dbf&lt;br /&gt;File Name: /opt/app/oracle/oradata/STDAUX/datafile/o1_mf_system_70sbx6nk_.dbf&lt;br /&gt;File Name: /opt/app/oracle/oradata/STDAUX/datafile/o1_mf_tbxindex_70sbx6n7_.dbf&lt;br /&gt;File Name: /opt/app/oracle/oradata/STDAUX/datafile/o1_mf_travelbo_70sbx6mx_.dbf&lt;br /&gt;File Name: /opt/app/oracle/oradata/STDAUX/datafile/o1_mf_tbx2ktbs_70sc6qw8_.dbf&lt;br /&gt;File Name: /opt/app/oracle/oradata/STDAUX/datafile/o1_mf_temp_70v7btqh_.tmp&lt;br /&gt;File Name: /opt/app/oracle/oradata/STDAUX/datafile/o1_mf_users_70sbx6nq_.dbf&lt;br /&gt;File Name: /opt/app/oracle/oradata/STDAUX/datafile/o1_mf_sysaux_70sbx6nd_.dbf&lt;br /&gt;File Name: /opt/app/oracle/oradata/STDAUX/datafile/o1_mf_example_70sbx6ns_.dbf&lt;br /&gt;&lt;br /&gt;Do you really want to catalog the above files (enter YES or NO)? yes&lt;br /&gt;cataloging files...&lt;br /&gt;cataloging done&lt;br /&gt;&lt;br /&gt;List of Cataloged Files&lt;br /&gt;=======================&lt;br /&gt;File Name: /opt/app/oracle/oradata/STDAUX/datafile/o1_mf_undotbs1_70sbx6n4_.dbf&lt;br /&gt;File Name: /opt/app/oracle/oradata/STDAUX/datafile/o1_mf_tbxlobs_70sbx6nb_.dbf&lt;br /&gt;File Name: /opt/app/oracle/oradata/STDAUX/datafile/o1_mf_test_70sbxko9_.dbf&lt;br /&gt;File Name: /opt/app/oracle/oradata/STDAUX/datafile/o1_mf_system_70sbx6nk_.dbf&lt;br /&gt;File Name: /opt/app/oracle/oradata/STDAUX/datafile/o1_mf_tbxindex_70sbx6n7_.dbf&lt;br /&gt;File Name: /opt/app/oracle/oradata/STDAUX/datafile/o1_mf_travelbo_70sbx6mx_.dbf&lt;br /&gt;File Name: /opt/app/oracle/oradata/STDAUX/datafile/o1_mf_tbx2ktbs_70sc6qw8_.dbf&lt;br /&gt;File Name: /opt/app/oracle/oradata/STDAUX/datafile/o1_mf_temp_70v7btqh_.tmp&lt;br /&gt;File Name: /opt/app/oracle/oradata/STDAUX/datafile/o1_mf_users_70sbx6nq_.dbf&lt;br /&gt;File Name: /opt/app/oracle/oradata/STDAUX/datafile/o1_mf_sysaux_70sbx6nd_.dbf&lt;br /&gt;File Name: /opt/app/oracle/oradata/STDAUX/datafile/o1_mf_example_70sbx6ns_.dbf&lt;/pre&gt;7. Switch datafile to copy &lt;pre&gt;RMAN&gt; switch database to copy;&lt;br /&gt;&lt;br /&gt;datafile 1 switched to datafile copy "/opt/app/oracle/oradata/STDAUX/datafile/o1_mf_system_70sbx6nk_.dbf"&lt;br /&gt;datafile 2 switched to datafile copy "/opt/app/oracle/oradata/STDAUX/datafile/o1_mf_sysaux_70sbx6nd_.dbf"&lt;br /&gt;datafile 3 switched to datafile copy "/opt/app/oracle/oradata/STDAUX/datafile/o1_mf_undotbs1_70sbx6n4_.dbf"&lt;br /&gt;datafile 4 switched to datafile copy "/opt/app/oracle/oradata/STDAUX/datafile/o1_mf_users_70sbx6nq_.dbf"&lt;br /&gt;datafile 5 switched to datafile copy "/opt/app/oracle/oradata/STDAUX/datafile/o1_mf_example_70sbx6ns_.dbf"&lt;br /&gt;datafile 6 switched to datafile copy "/opt/app/oracle/oradata/STDAUX/datafile/o1_mf_travelbo_70sbx6mx_.dbf"&lt;br /&gt;datafile 7 switched to datafile copy "/opt/app/oracle/oradata/STDAUX/datafile/o1_mf_tbxindex_70sbx6n7_.dbf"&lt;br /&gt;datafile 8 switched to datafile copy "/opt/app/oracle/oradata/STDAUX/datafile/o1_mf_tbxlobs_70sbx6nb_.dbf"&lt;br /&gt;datafile 9 switched to datafile copy "/opt/app/oracle/oradata/STDAUX/datafile/o1_mf_tbx2ktbs_70sc6qw8_.dbf"&lt;br /&gt;datafile 10 switched to datafile copy "/opt/app/oracle/oradata/STDAUX/datafile/o1_mf_test_70sbxko9_.dbf"&lt;/pre&gt;8. Stop and start flashback if it was enabled&lt;pre&gt;SQL&gt;ALTER DATABASE FLASHBACK OFF;&lt;br /&gt;SQL&gt;ALTER DATABASE FLASHBACK ON;&lt;/pre&gt;9. Clear logfiles &lt;pre&gt;SQL&gt; select group# from v$log;&lt;br /&gt;&lt;br /&gt;    GROUP#&lt;br /&gt;----------&lt;br /&gt;         1&lt;br /&gt;         2&lt;br /&gt;         6&lt;br /&gt;         4&lt;br /&gt;         5&lt;br /&gt;         3&lt;br /&gt;&lt;br /&gt;6 rows selected.&lt;br /&gt;&lt;br /&gt;alter database clear logfile group 1;&lt;br /&gt;alter database clear logfile group 2;&lt;br /&gt;alter database clear logfile group 6;&lt;br /&gt;alter database clear logfile group 4;&lt;br /&gt;alter database clear logfile group 5;&lt;br /&gt;alter database clear logfile group 3;&lt;br /&gt;&lt;br /&gt;SQL&gt; select group# from v$standby_log;&lt;br /&gt;&lt;br /&gt;    GROUP#&lt;br /&gt;----------&lt;br /&gt;         7&lt;br /&gt;         8&lt;br /&gt;         9&lt;br /&gt;        10&lt;br /&gt;        11&lt;br /&gt;  &lt;br /&gt;alter database clear logfile group 7;&lt;br /&gt;alter database clear logfile group 8;&lt;br /&gt;alter database clear logfile group 9;&lt;br /&gt;alter database clear logfile group 10;&lt;br /&gt;alter database clear logfile group 11;&lt;/pre&gt;10. Start log apply service &lt;pre&gt;SQL&gt; alter database recover managed standby database using current logfile disconnect;&lt;/pre&gt; and verify log apply with &lt;pre&gt;SQL&gt; select sequence#,applied from v$archived_log;&lt;br /&gt; SEQUENCE# APPLIED&lt;br /&gt;---------- ---------&lt;br /&gt;      1814 NO&lt;br /&gt;      1813 NO&lt;br /&gt;      1825 YES&lt;br /&gt;      1826 YES&lt;br /&gt;      1827 YES&lt;br /&gt;      1828 IN-MEMORY&lt;/pre&gt;11. Confirm that backup retention policy has changed&lt;pre&gt;RMAN&gt; show all;&lt;br /&gt;&lt;br /&gt;using target database control file instead of recovery catalog&lt;br /&gt;RMAN configuration parameters for database with db_unique_name ENT11G1 are:&lt;br /&gt;CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 2 DAYS;&lt;/pre&gt;Once everything is confirm removed the duplicate standby logs and online logs from the disk using OS utility. Although metalink note states to do this step early on, having done this early one resulted in getting the following error&lt;pre&gt;RMAN&gt; switch database to copy;&lt;br /&gt;&lt;br /&gt;RMAN-00571: ===========================================================&lt;br /&gt;RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============&lt;br /&gt;RMAN-00571: ===========================================================&lt;br /&gt;RMAN-03002: failure of switch to copy command at 06/23/2011 14:01:05&lt;br /&gt;RMAN-06571: datafile 1 does not have recoverable copy&lt;/pre&gt;It is possible the old logs may contain some information needed for recovery. So it's best to remove the duplicate log files at the end rather than early on.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2414933436751311863-542370237092271401?l=asanga-pradeep.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/542370237092271401'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/542370237092271401'/><link rel='alternate' type='text/html' href='http://asanga-pradeep.blogspot.com/2011/07/changing-backup-policy-on-standby-db-2.html' title='Changing Backup Policy on Standby DB - 2'/><author><name>Asanga</name><uri>http://www.blogger.com/profile/06917616787415349832</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_90fhbVRwXDU/TECqZgHU0eI/AAAAAAAAAIo/hwI2BMzwDcI/S220/profile.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-2414933436751311863.post-6111330873083363580</id><published>2011-07-04T04:29:00.000-07:00</published><updated>2011-07-04T05:43:46.334-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='physical standby'/><category scheme='http://www.blogger.com/atom/ns#' term='controlfile'/><category scheme='http://www.blogger.com/atom/ns#' term='policy'/><category scheme='http://www.blogger.com/atom/ns#' term='standby controlfile'/><category scheme='http://www.blogger.com/atom/ns#' term='backup'/><category scheme='http://www.blogger.com/atom/ns#' term='dataguard'/><title type='text'>Changing Backup Policy on Standby DB - 1</title><content type='html'>Once a standby database is created it is not possible to change the backup retention policy. If the space available on the standby site is less or due to some other constraint it may be required to change the backup retention policy from that of the primary DB. Trying to do so using the configure command would give the following error&lt;pre&gt;MAN&gt; CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 2 days;&lt;br /&gt;&lt;br /&gt;RMAN-00571: ===========================================================&lt;br /&gt;RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============&lt;br /&gt;RMAN-00571: ===========================================================&lt;br /&gt;RMAN-03002: failure of configure command at 07/01/2011 11:25:47&lt;br /&gt;RMAN-05021: this configuration cannot be changed for a BACKUP or STANDBY control file&lt;/pre&gt;If possible the easiest way to change the retention policy is to do a switchover (making the standby the primary) and change the retention policy and switchover back to original primary. But this may not be possible at all times, especially if the data guard configuration is asymmetric and standby is used more for data protection than for disaster recovery.&lt;br /&gt;&lt;br /&gt;What is required here is to change the retention policy in primary to that is desired on the standby, created a standby controlfile , revert the retention policy on primary, restore the newly created standby controlfile on standby DB which will have the modified retention policy. &lt;br /&gt;&lt;br /&gt;There are two metalink notes that can help with this.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Steps to recreate a Physical Standby Controlfile [ID 459411.1]&lt;br /&gt;Step By Step Guide On How To Recreate Standby Control File When Datafiles Are On ASM And Using Oracle Managed Files [ID 734862.1]&lt;br /&gt;&lt;/span&gt; &lt;br /&gt;This blog will use steps listed in both these notes first on a single instance data guard configuration using file system for datafile storage (OMF) and another blog will follow with RAC data guard configuration using ASM.&lt;br /&gt;&lt;br /&gt;On standby database&lt;br /&gt;&lt;br /&gt;1. Requirement is to change the retention policy to recovery window of 2 days which cannot be done with the configure command and switchover to standby is not possible at this time&lt;pre&gt;RMAN&gt; CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 2 days;&lt;br /&gt;&lt;br /&gt;RMAN-00571: ===========================================================&lt;br /&gt;RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============&lt;br /&gt;RMAN-00571: ===========================================================&lt;br /&gt;RMAN-03002: failure of configure command at 07/01/2011 11:25:47&lt;br /&gt;RMAN-05021: this configuration cannot be changed for a BACKUP or STANDBY control file&lt;/pre&gt;2. Cancel log apply on standby and get the datafile name list and shutdown the standby database&lt;pre&gt;SQL&gt;alter database recover managed standby database cancel;&lt;br /&gt;&lt;br /&gt;SQL&gt; select name from v$datafile;&lt;br /&gt;&lt;br /&gt;NAME&lt;br /&gt;--------------------------------------------------------------------&lt;br /&gt;/opt/app/oracle/oradata/STDAUX/datafile/o1_mf_system_70sbx6nk_.dbf&lt;br /&gt;/opt/app/oracle/oradata/STDAUX/datafile/o1_mf_sysaux_70sbx6nd_.dbf&lt;br /&gt;/opt/app/oracle/oradata/STDAUX/datafile/o1_mf_undotbs1_70sbx6n4_.dbf&lt;br /&gt;/opt/app/oracle/oradata/STDAUX/datafile/o1_mf_users_70sbx6nq_.dbf&lt;br /&gt;/opt/app/oracle/oradata/STDAUX/datafile/o1_mf_example_70sbx6ns_.dbf&lt;br /&gt;/opt/app/oracle/oradata/STDAUX/datafile/o1_mf_travelbo_70sbx6mx_.dbf&lt;br /&gt;/opt/app/oracle/oradata/STDAUX/datafile/o1_mf_tbxindex_70sbx6n7_.dbf&lt;br /&gt;/opt/app/oracle/oradata/STDAUX/datafile/o1_mf_tbxlobs_70sbx6nb_.dbf&lt;br /&gt;/opt/app/oracle/oradata/STDAUX/datafile/o1_mf_tbx2ktbs_70sc6qw8_.dbf&lt;br /&gt;/opt/app/oracle/oradata/STDAUX/datafile/o1_mf_test_70sbxko9_.dbf&lt;br /&gt;&lt;br /&gt;SQL&gt;shutdown immediate;&lt;/pre&gt;On primary DB&lt;br /&gt;&lt;br /&gt;3. Change the retention policy to what is required in standby&lt;pre&gt;RMAN&gt; CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 2 days;&lt;br /&gt;&lt;br /&gt;old RMAN configuration parameters:&lt;br /&gt;CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 1 DAYS;&lt;br /&gt;new RMAN configuration parameters:&lt;br /&gt;CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 2 DAYS;&lt;br /&gt;new RMAN configuration parameters are successfully stored&lt;/pre&gt;4. Create the new standby controlfile in primary db server and copy it to the standby db server&lt;pre&gt;SQL&gt; alter database create standby controlfile as '/home/oracle/standby.ctl';&lt;br /&gt;&lt;br /&gt;Database altered.&lt;/pre&gt;5. Backup the current controlfile on standby using OS utility. (only valid if the database is shutdown clearnly).&lt;pre&gt;mv o1_mf_5q7xfq1o_.ctl o1_mf_5q7xfq1o_.ctl.bak&lt;br /&gt;mv o1_mf_5q7xfq2t_.ctl o1_mf_5q7xfq2t_.ctl.bak&lt;/pre&gt;Replace the current controlfiles on standby with the new standby controlfiles&lt;pre&gt;cp /home/oracle/standby.ctl o1_mf_5q7xfq1o_.ctl&lt;br /&gt;cp /home/oracle/standby.ctl o1_mf_5q7xfq2t_.ctl&lt;/pre&gt;6.Mount the standby database&lt;br /&gt;&lt;br /&gt;7. Metalink note &lt;span style="font-weight:bold;"&gt;[ID 459411.1]&lt;/span&gt; says &lt;span style="font-style:italic;"&gt;If the File-Structure is different between Primary and Standby Database and db_file_name_convert/log_file_name_convert is not set,  rename the File-Location(s) in the new Standby Controlfile:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;In this case above mention initialization parameters were set but since the standby was using OMF the datafile names are different from the primary hence the reason to query them in step 1. This could be observed by runnign following query on standby&lt;pre&gt;SQL&gt; select name from v$datafile;&lt;br /&gt;&lt;br /&gt;NAME&lt;br /&gt;----------------------------------------------------------------------&lt;br /&gt;/opt/app/oracle/oradata/STDAUX/datafile/o1_mf_system_5q7x745y_.dbf&lt;br /&gt;/opt/app/oracle/oradata/STDAUX/datafile/o1_mf_sysaux_5q7x746p_.dbf&lt;br /&gt;/opt/app/oracle/oradata/STDAUX/datafile/o1_mf_undotbs1_5q7x746t_.dbf&lt;br /&gt;/opt/app/oracle/oradata/STDAUX/datafile/o1_mf_users_5q7x747g_.dbf&lt;br /&gt;/opt/app/oracle/oradata/STDAUX/datafile/o1_mf_example_5q7xg0kk_.dbf&lt;br /&gt;/opt/app/oracle/oradata/STDAUX/datafile/o1_mf_travelbo_5zb2lltr_.dbf&lt;br /&gt;/opt/app/oracle/oradata/STDAUX/datafile/o1_mf_tbxindex_5zb2lzvc_.dbf&lt;br /&gt;/opt/app/oracle/oradata/STDAUX/datafile/o1_mf_tbxlobs_5zb2mf60_.dbf&lt;br /&gt;/opt/app/oracle/oradata/STDAUX/datafile/o1_mf_tbx2ktbs_5zb2t0jn_.dbf&lt;br /&gt;/opt/app/oracle/oradata/STDAUX/datafile/o1_mf_test_70p7blqh_.dbf&lt;/pre&gt;These are the datafile names on primary and would not be same as standby datafile names.&lt;br /&gt;&lt;br /&gt;8. Rename the datafile names to their original names&lt;pre&gt;SQL&gt; alter database rename file '/opt/app/oracle/oradata/STDAUX/datafile/o1_mf_system_5q7x745y_.dbf' to '/opt/app/oracle/oradata/STDAUX/datafile/o1_mf_system_70sbx6nk_.dbf';&lt;br /&gt;alter database rename file '/opt/app/oracle/oradata/STDAUX/datafile/o1_mf_system_5q7x745y_.dbf' to '/opt/app/oracle/oradata/STDAUX/datafile/o1_mf_system_70sbx6nk_.dbf'&lt;br /&gt;*&lt;br /&gt;ERROR at line 1:&lt;br /&gt;ORA-01511: error in renaming log/data files&lt;br /&gt;ORA-01275: Operation RENAME is not allowed if standby file management is&lt;br /&gt;automatic.&lt;/pre&gt;To overcome this problem change the standby file management to manual for the duration of the rename&lt;pre&gt;SQL&gt; alter system set standby_file_management='MANUAL' scope=memory;&lt;br /&gt;&lt;br /&gt;System altered.&lt;br /&gt;&lt;br /&gt;SQL&gt; alter database rename file '/opt/app/oracle/oradata/STDAUX/datafile/o1_mf_system_5q7x745y_.dbf' to '/opt/app/oracle/oradata/STDAUX/datafile/o1_mf_system_70sbx6nk_.dbf';&lt;br /&gt;&lt;br /&gt;Database altered.&lt;/pre&gt;Rename all the files like this and change the standby file management to auto&lt;pre&gt;SQL&gt; alter system set standby_file_management='AUTO' SCOPE=MEMORY;&lt;br /&gt;&lt;br /&gt;System altered.&lt;/pre&gt;9. Stop and start flashback if it was enabled&lt;pre&gt;SQL&gt;ALTER DATABASE FLASHBACK OFF;&lt;br /&gt;SQL&gt;ALTER DATABASE FLASHBACK ON;&lt;/pre&gt;10. If standby log files were not created on primary create them on standby now, if standby log exists on standby clear standby log as well online logs&lt;pre&gt;SQL&gt; select group# from v$log;&lt;br /&gt;&lt;br /&gt;    GROUP#&lt;br /&gt;----------&lt;br /&gt;         1&lt;br /&gt;         2&lt;br /&gt;         6&lt;br /&gt;         4&lt;br /&gt;         5&lt;br /&gt;         3&lt;br /&gt;&lt;br /&gt;6 rows selected.&lt;br /&gt;&lt;br /&gt;SQL&gt; alter database clear logfile group 1;&lt;br /&gt;&lt;br /&gt;Database altered.&lt;/pre&gt;Do the same for other logs as well.&lt;pre&gt;SQL&gt; select group# from v$standby_log;&lt;br /&gt;&lt;br /&gt;    GROUP#&lt;br /&gt;----------&lt;br /&gt;         7&lt;br /&gt;         8&lt;br /&gt;         9&lt;br /&gt;        10&lt;br /&gt;        11&lt;br /&gt;&lt;br /&gt;SQL&gt;  alter database clear logfile group 7;&lt;br /&gt;&lt;br /&gt;Database altered.&lt;/pre&gt;Do the same for other logs as well.&lt;br /&gt;&lt;br /&gt;11. Start log apply on standby and verify log apply is working &lt;pre&gt;SQL&gt; alter database recover managed standby database using current logfile disconnect;&lt;br /&gt;&lt;br /&gt;Database altered.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;SQL&gt; select sequence#,applied from v$archived_log;&lt;br /&gt;&lt;br /&gt; SEQUENCE# APPLIED&lt;br /&gt;---------- ---------&lt;br /&gt;      1820 IN-MEMORY&lt;/pre&gt;Do a log archive on primary &lt;pre&gt;SQL&gt; alter system archive log current;&lt;/pre&gt; and check on standby &lt;pre&gt;SQL&gt; select sequence#,applied from v$archived_log;&lt;br /&gt;&lt;br /&gt;SEQUENCE# APPLIED&lt;br /&gt;---------- ---------&lt;br /&gt;      1820 YES&lt;br /&gt;      1821 IN-MEMORY&lt;/pre&gt;12. Finally verify the backup retention on standby has changed to desired retention policy&lt;pre&gt;RMAN&gt; show all;&lt;br /&gt;&lt;br /&gt;using target database control file instead of recovery catalog&lt;br /&gt;RMAN configuration parameters for database with db_unique_name ENT11G1 are:&lt;br /&gt;CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 2 DAYS;&lt;/pre&gt;If database uses OMF then when log apply is started new online logfiles and standby logfiles would have been created. To save space identify the currently used logfiles with &lt;pre&gt;select group#,member from v$logfile;&lt;/pre&gt; and remove the logfiles that doesn't appear on the output from the disk. (This is the step 3 B on &lt;span style="font-weight:bold;"&gt;[ID 734862.1]&lt;/span&gt;&lt;br /&gt;Depending on the location of the logfiles on the standby server remove all online and standby redo logs from the standby directories Using an Operating System utility or ASMCMD and make sure that you have the LOG_FILE_NAME_CONVERT parameter defined to translate any directory paths. )&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2414933436751311863-6111330873083363580?l=asanga-pradeep.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/6111330873083363580'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/6111330873083363580'/><link rel='alternate' type='text/html' href='http://asanga-pradeep.blogspot.com/2011/07/changing-backup-policy-on-standby-db.html' title='Changing Backup Policy on Standby DB - 1'/><author><name>Asanga</name><uri>http://www.blogger.com/profile/06917616787415349832</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_90fhbVRwXDU/TECqZgHU0eI/AAAAAAAAAIo/hwI2BMzwDcI/S220/profile.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-2414933436751311863.post-5492124362267801257</id><published>2011-06-09T04:07:00.000-07:00</published><updated>2011-06-09T04:18:00.017-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='11gR2'/><category scheme='http://www.blogger.com/atom/ns#' term='flashback'/><category scheme='http://www.blogger.com/atom/ns#' term='11gR1'/><category scheme='http://www.blogger.com/atom/ns#' term='restore points'/><title type='text'>Restore Point Prerequisites change in 11.2</title><content type='html'>For 10.2 and 11.1 to enable guarantee restore points following were prerequisites, from Oracle Documentation (Database Backup and Recovery User Guide) &lt;br /&gt;&lt;br /&gt;&lt;span style="font-style:italic;"&gt;To support the use of guaranteed restore points, the database must satisfy the&lt;br /&gt;following prerequisites:&lt;br /&gt;The COMPATIBLE initialization parameter must be set to 10.2 or greater.&lt;br /&gt;&lt;br /&gt;The database must be running in ARCHIVELOG mode. To rewind your database to a guaranteed restore point, the FLASHBACK DATABASE command requires the use of archived redo logs starting from around the time of the restore point.&lt;br /&gt;&lt;br /&gt;A flash recovery area must be configured, Guaranteed restore points use a mechanism similar to flashback logging. As with flashback logging, Oracle Database must store the required logs in the flash recovery area.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;If Flashback Database is not enabled, then the database must be mounted, not open, when creating the first guaranteed restore point (or if all previously created guaranteed restore points have been dropped).&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;If a restore point command is issued on 11.1 in the open mode or without first creating a restore point in the mount mode following error would be thrown&lt;pre&gt;SQL&gt; select flashback_on from v$database;&lt;br /&gt;&lt;br /&gt;FLASHBACK_ON&lt;br /&gt;------------------&lt;br /&gt;NO&lt;br /&gt;&lt;br /&gt;SQL&gt; SELECT NAME, SCN, TIME, DATABASE_INCARNATION#, GUARANTEE_FLASHBACK_DATABASE, STORAGE_SIZE FROM V$RESTORE_POINT WHERE GUARANTEE_FLASHBACK_DATABASE='YES';&lt;br /&gt;&lt;br /&gt;no rows selected&lt;br /&gt;&lt;br /&gt;SQL&gt; select open_mode from v$database;&lt;br /&gt;&lt;br /&gt;OPEN_MODE&lt;br /&gt;----------&lt;br /&gt;READ WRITE&lt;br /&gt;&lt;br /&gt;SQL&gt; create restore point first_restore guarantee flashback database;&lt;br /&gt;create restore point first_restore guarantee flashback database&lt;br /&gt;*&lt;br /&gt;ERROR at line 1:&lt;br /&gt;ORA-38784: Cannot create restore point 'FIRST_RESTORE'.&lt;br /&gt;ORA-38787: Creating the first guaranteed restore point requires mount mode when&lt;br /&gt;flashback database is off.&lt;/pre&gt;But the prerequisites has changed in 11.2 now the only pre-req is (as per Database Backup and Recovery User Guide) &lt;span style="font-style:italic;"&gt;To use guaranteed restore points, the database must satisfy the following additional prerequisite: the COMPATIBLE initialization parameter must be set to 10.2.0 or greater&lt;/span&gt; and that's all.&lt;br /&gt;&lt;br /&gt;Same steps above done on a 11.2 db &lt;pre&gt;SQL&gt; select flashback_on from v$database;&lt;br /&gt;&lt;br /&gt;FLASHBACK_ON&lt;br /&gt;------------------&lt;br /&gt;NO&lt;br /&gt;&lt;br /&gt;SQL&gt; SELECT NAME, SCN, TIME, DATABASE_INCARNATION#, GUARANTEE_FLASHBACK_DATABASE, STORAGE_SIZE FROM V$RESTORE_POINT WHERE GUARANTEE_FLASHBACK_DATABASE='YES';&lt;br /&gt;&lt;br /&gt;no rows selected&lt;br /&gt;&lt;br /&gt;SQL&gt; select open_mode from v$database;&lt;br /&gt;&lt;br /&gt;OPEN_MODE&lt;br /&gt;--------------------&lt;br /&gt;READ WRITE&lt;br /&gt;&lt;br /&gt;SQL&gt; create restore point first_restore guarantee flashback database;&lt;br /&gt;&lt;br /&gt;Restore point created.&lt;br /&gt;&lt;br /&gt;SQL&gt; SELECT NAME, SCN, TIME, DATABASE_INCARNATION#, GUARANTEE_FLASHBACK_DATABASE, STORAGE_SIZE FROM V$RESTORE_POINT WHERE GUARANTEE_FLASHBACK_DATABASE='YES';&lt;br /&gt;&lt;br /&gt;NAME                        SCN TIME                           DATABASE_INCARNATION# GUA STORAGE_SIZE&lt;br /&gt;-------------------- ---------- ------------------------------ --------------------- --- ------------&lt;br /&gt;FIRST_RESTORE          17213755 09-JUN-11 12.05.26.000000000                       2 YES     15941632&lt;/pre&gt;On 11.2 it is possible to create restore points without first having the database in a mount mode (when flashback is off)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2414933436751311863-5492124362267801257?l=asanga-pradeep.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/5492124362267801257'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/5492124362267801257'/><link rel='alternate' type='text/html' href='http://asanga-pradeep.blogspot.com/2011/06/restore-point-prerequisites-change-in.html' title='Restore Point Prerequisites change in 11.2'/><author><name>Asanga</name><uri>http://www.blogger.com/profile/06917616787415349832</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_90fhbVRwXDU/TECqZgHU0eI/AAAAAAAAAIo/hwI2BMzwDcI/S220/profile.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-2414933436751311863.post-2196479125737520943</id><published>2011-06-03T06:14:00.000-07:00</published><updated>2011-11-29T12:04:09.744-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='JDBC'/><category scheme='http://www.blogger.com/atom/ns#' term='ORA-03137'/><category scheme='http://www.blogger.com/atom/ns#' term='error'/><category scheme='http://www.blogger.com/atom/ns#' term='bug'/><category scheme='http://www.blogger.com/atom/ns#' term='11gR1'/><title type='text'>ORA 03137  TTC protocol internal error</title><content type='html'>Some useful metalink notes for ora-03137.&lt;br /&gt;&lt;br /&gt;Intermittant Ora-03137, Ora-03106, Ora-03124 When Forking Across Connections (&lt;span style="font-weight:bold;"&gt;Doc ID 859472.1&lt;/span&gt;)&lt;br /&gt;&lt;br /&gt;ora-600 [12333] / ora-3137 [12333] Troubleshooting (&lt;span style="font-weight:bold;"&gt;Doc ID 828123.1&lt;/span&gt;)&lt;br /&gt;&lt;br /&gt;ORA-03137: TTC Protocol Internal Error : [12333] Using JDBC Driver (&lt;span style="font-weight:bold;"&gt;Doc ID 752297.1&lt;/span&gt;)&lt;br /&gt;&lt;br /&gt;Bug 8625762 - ORA-3137 [12333] due to bind data not read from wire (&lt;span style="font-weight:bold;"&gt;Doc ID 8625762.8&lt;/span&gt;)&lt;br /&gt;&lt;script type="text/javascript"&gt;&lt;!--google_ad_client = "ca-pub-5510817526739610";/* leadborad */google_ad_slot = "9860710817";google_ad_width = 728;google_ad_height = 90;//--&gt;&lt;/script&gt;&lt;br /&gt;&lt;script type="text/javascript"        src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2414933436751311863-2196479125737520943?l=asanga-pradeep.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/2196479125737520943'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/2196479125737520943'/><link rel='alternate' type='text/html' href='http://asanga-pradeep.blogspot.com/2011/06/ora-03137-ttc-protocol-internal-error.html' title='ORA 03137  TTC protocol internal error'/><author><name>Asanga</name><uri>http://www.blogger.com/profile/06917616787415349832</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_90fhbVRwXDU/TECqZgHU0eI/AAAAAAAAAIo/hwI2BMzwDcI/S220/profile.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-2414933436751311863.post-6642218168100740448</id><published>2011-06-01T03:13:00.000-07:00</published><updated>2011-06-01T03:37:26.941-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='sequence'/><category scheme='http://www.blogger.com/atom/ns#' term='shared pool'/><category scheme='http://www.blogger.com/atom/ns#' term='oracle'/><title type='text'>Effects Of Sequence Aging Out Of Shared Pool</title><content type='html'>Like any other database object in shared pool sequence could also be aged out or flushed out of the shared pool to make room for other objects. When this happens values return by the sequence may not be in the expected order. &lt;pre&gt;SQL&gt; create sequence mseq ;&lt;br /&gt;&lt;br /&gt;SQL&gt; select * from user_sequences;&lt;br /&gt;SEQUENCE_NAME    MIN_VALUE  MAX_VALUE INCREMENT_BY C O CACHE_SIZE LAST_NUMBER&lt;br /&gt;--------------- ---------- ---------- ------------ - - ---------- -----------&lt;br /&gt;MSEQ                     1 1.0000E+28            1 N N         20           1&lt;/pre&gt;Take the first value from the sequence and examine the last number&lt;pre&gt;SQL&gt; select mseq.nextval from dual;&lt;br /&gt;&lt;br /&gt;   NEXTVAL&lt;br /&gt;----------&lt;br /&gt;         1&lt;br /&gt;&lt;br /&gt;SQL&gt; select * from user_sequences;&lt;br /&gt;&lt;br /&gt;SEQUENCE_NAME    MIN_VALUE  MAX_VALUE INCREMENT_BY C O CACHE_SIZE LAST_NUMBER&lt;br /&gt;--------------- ---------- ---------- ------------ - - ---------- -----------&lt;br /&gt;MSEQ                     1 1.0000E+28            1 N N         20          21&lt;/pre&gt;At this stage if the sequence is aged out of the shared pool (in this test case by flushing the shared pool) the next value returned would be 21 instead of 2. As sysdba run &lt;pre&gt;SQL&gt; alter system flush shared_pool;&lt;/pre&gt; and then as owner of the sequence &lt;pre&gt;SQL&gt; select mseq.nextval from dual;&lt;br /&gt;&lt;br /&gt;   NEXTVAL&lt;br /&gt;----------&lt;br /&gt;        21&lt;br /&gt;&lt;br /&gt;SQL&gt; select * from user_sequences;&lt;br /&gt;&lt;br /&gt;SEQUENCE_NAME    MIN_VALUE  MAX_VALUE INCREMENT_BY C O CACHE_SIZE LAST_NUMBER&lt;br /&gt;--------------- ---------- ---------- ------------ - - ---------- -----------&lt;br /&gt;MSEQ                     1 1.0000E+28            1 N N         20          41&lt;/pre&gt;This creates gaps in the values returned by the sequences and it only affects the cached sequences and nocache, order sequences are not affected&lt;pre&gt;SQL&gt; create sequence mseq nocache order;&lt;br /&gt;&lt;br /&gt;SQL&gt; select mseq.nextval from dual;&lt;br /&gt;&lt;br /&gt;   NEXTVAL&lt;br /&gt;----------&lt;br /&gt;         1&lt;br /&gt;&lt;br /&gt;SQL&gt; select * from user_sequences;&lt;br /&gt;&lt;br /&gt;SEQUENCE_NAME    MIN_VALUE  MAX_VALUE INCREMENT_BY C O CACHE_SIZE LAST_NUMBER&lt;br /&gt;--------------- ---------- ---------- ------------ - - ---------- -----------&lt;br /&gt;MSEQ                     1 1.0000E+28            1 N Y          0           2&lt;/pre&gt;Flush the shared pool &lt;pre&gt;SQL&gt; alter system flush shared_pool;&lt;/pre&gt;Sequence returns the next value 2 and flushing shared pool has no effect&lt;pre&gt;SQL&gt; select * from user_sequences;&lt;br /&gt;&lt;br /&gt;SEQUENCE_NAME    MIN_VALUE  MAX_VALUE INCREMENT_BY C O CACHE_SIZE LAST_NUMBER&lt;br /&gt;--------------- ---------- ---------- ------------ - - ---------- -----------&lt;br /&gt;MSEQ                     1 1.0000E+28            1 N Y          0           2&lt;br /&gt;&lt;br /&gt;SQL&gt; select mseq.nextval from dual;&lt;br /&gt;&lt;br /&gt;   NEXTVAL&lt;br /&gt;----------&lt;br /&gt;         2&lt;br /&gt;&lt;br /&gt;SQL&gt;  select * from user_sequences;&lt;br /&gt;&lt;br /&gt;SEQUENCE_NAME    MIN_VALUE  MAX_VALUE INCREMENT_BY C O CACHE_SIZE LAST_NUMBER&lt;br /&gt;--------------- ---------- ---------- ------------ - - ---------- -----------&lt;br /&gt;MSEQ                     1 1.0000E+28            1 N Y          0           3&lt;/pre&gt;One way to prevent is to pin the sequence in the shared pool&lt;pre&gt;SQL&gt; create sequence mseq ;&lt;br /&gt;&lt;br /&gt;SQL&gt; select mseq.nextval from dual;&lt;br /&gt;&lt;br /&gt;   NEXTVAL&lt;br /&gt;----------&lt;br /&gt;         1&lt;br /&gt;&lt;br /&gt;SQL&gt; select * from user_sequences;&lt;br /&gt;&lt;br /&gt;SEQUENCE_NAME    MIN_VALUE  MAX_VALUE INCREMENT_BY C O CACHE_SIZE LAST_NUMBER&lt;br /&gt;--------------- ---------- ---------- ------------ - - ---------- -----------&lt;br /&gt;MSEQ                     1 1.0000E+28            1 N N         20          21&lt;/pre&gt;Pin the sequence with &lt;pre&gt;SQL&gt; exec dbms_shared_pool.keep('ASANGA.MSEQ','Q');&lt;/pre&gt;and flush the shared pool&lt;pre&gt;SQL&gt; alter system flush shared_pool;&lt;/pre&gt;Ordered values are returned from the sequence without a gap&lt;pre&gt;SQL&gt; select mseq.nextval from dual;&lt;br /&gt;&lt;br /&gt;   NEXTVAL&lt;br /&gt;----------&lt;br /&gt;         2&lt;br /&gt;&lt;br /&gt;SQL&gt; /&lt;br /&gt;&lt;br /&gt;   NEXTVAL&lt;br /&gt;----------&lt;br /&gt;         3&lt;br /&gt;&lt;br /&gt;SQL&gt; select * from user_sequences;&lt;br /&gt;&lt;br /&gt;SEQUENCE_NAME    MIN_VALUE  MAX_VALUE INCREMENT_BY C O CACHE_SIZE LAST_NUMBER&lt;br /&gt;--------------- ---------- ---------- ------------ - - ---------- -----------&lt;br /&gt;MSEQ                     1 1.0000E+28            1 N N         20          21&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2414933436751311863-6642218168100740448?l=asanga-pradeep.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/6642218168100740448'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/6642218168100740448'/><link rel='alternate' type='text/html' href='http://asanga-pradeep.blogspot.com/2011/06/effects-of-sequence-aging-out-of-shared.html' title='Effects Of Sequence Aging Out Of Shared Pool'/><author><name>Asanga</name><uri>http://www.blogger.com/profile/06917616787415349832</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_90fhbVRwXDU/TECqZgHU0eI/AAAAAAAAAIo/hwI2BMzwDcI/S220/profile.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-2414933436751311863.post-4500952871973011922</id><published>2011-05-31T04:19:00.000-07:00</published><updated>2011-06-06T14:46:49.793-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='rac'/><category scheme='http://www.blogger.com/atom/ns#' term='gc lost blocks'/><category scheme='http://www.blogger.com/atom/ns#' term='awk'/><category scheme='http://www.blogger.com/atom/ns#' term='stats'/><category scheme='http://www.blogger.com/atom/ns#' term='netstat'/><title type='text'>Gathering stats for gc lost blocks</title><content type='html'>In a two node RAC gc cr block lost appeared to be second in the top 5 wait events  list. But this was only happening in one of the nodes whereas other node has almost zero waiting on this event. Stats plotted with &lt;a href="http://asanga-pradeep.blogspot.com/2009/06/admon-20.html"&gt;ADMon&lt;/a&gt; taken from &lt;a href="http://asanga-pradeep.blogspot.com/2010/07/statspack-setup-in-brief.html"&gt;statspack&lt;/a&gt; base tables&lt;br /&gt;&lt;br /&gt;Waits&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/-RSRMqFfhQnI/TeTQ_NGHZSI/AAAAAAAAARw/tpL_SyB07A0/s1600/gc_cr_block_lost_waits.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 86px;" src="http://2.bp.blogspot.com/-RSRMqFfhQnI/TeTQ_NGHZSI/AAAAAAAAARw/tpL_SyB07A0/s320/gc_cr_block_lost_waits.png" alt="" id="BLOGGER_PHOTO_ID_5612840819876128034" border="0" /&gt;&lt;/a&gt;Wait Times&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/-QkhmXxfPuJY/TeTRk_7C-pI/AAAAAAAAAR4/X4uv3KVvPDE/s1600/gc_cr_block_lost_time.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 86px;" src="http://4.bp.blogspot.com/-QkhmXxfPuJY/TeTRk_7C-pI/AAAAAAAAAR4/X4uv3KVvPDE/s320/gc_cr_block_lost_time.png" alt="" id="BLOGGER_PHOTO_ID_5612841469175069330" border="0" /&gt;&lt;/a&gt;&lt;span style="font-weight:bold;"&gt;gc lost blocks diagnostics [ID 563566.1]&lt;/span&gt; describe what to look for to diagnose this wait event. Among them is stats related to dropped and fragmented packets. Looking at the two following could be observed, on the problem node &lt;pre&gt; netstat -s&lt;br /&gt;Ip:&lt;br /&gt;   650337997 total packets received&lt;br /&gt;   145 with invalid addresses&lt;br /&gt;   0 forwarded&lt;br /&gt;   0 incoming packets discarded&lt;br /&gt;   422623145 incoming packets delivered&lt;br /&gt;   990924957 requests sent out&lt;br /&gt;  &lt;span style="font-weight:bold;"&gt; 1718163 fragments dropped after timeout&lt;br /&gt;   271652117 reassemblies required&lt;br /&gt;   43937411 packets reassembled ok&lt;br /&gt;   4233888 packet reassembles failed&lt;/span&gt;&lt;br /&gt;   42533293 fragments received ok&lt;br /&gt;   259374063 fragments created&lt;/pre&gt;On the non-problem node&lt;pre&gt;Ip:&lt;br /&gt;   2896602613 total packets received&lt;br /&gt;   4445 with invalid addresses&lt;br /&gt;   0 forwarded&lt;br /&gt;   0 incoming packets discarded&lt;br /&gt;   1690637959 incoming packets delivered&lt;br /&gt;   2164503370 requests sent out&lt;br /&gt;   4433 outgoing packets dropped&lt;br /&gt;  &lt;span style="font-weight:bold;"&gt; 4 fragments dropped after timeout&lt;br /&gt;   1430346149 reassemblies required&lt;br /&gt;   224385940 packets reassembled ok&lt;br /&gt;   4 packet reassembles failed&lt;/span&gt;&lt;br /&gt;   239685318 fragments received ok&lt;br /&gt;   52 fragments failed&lt;br /&gt;   1386980139 fragments created&lt;/pre&gt;Solution for this is to increase the reassembly buffer space (ipfrag_low_thresh,ipfrag_high_thresh and ipfrag_time). But this didn't help either. As per above metalink note "&lt;span style="font-style:italic;"&gt;In most cases, gc buffer lost has been attributed to (a) A missing OS patch (b) Bad network card (c) Bad cable (d) Bad switch (e) One of the network settings.&lt;/span&gt;".&lt;br /&gt;&lt;br /&gt;Following shell script could be used to store the IP packet stats relating to the above wait event in a database table.&lt;pre&gt;SQL&amp;gt;create table ipfrag(stat_time timestamp default systimestamp, fragments_dropped number, reassemblies_required number, reassembled_ok number, reassemble_failed number);&lt;br /&gt;&lt;br /&gt;$ netstat -s | grep 'Ip' -A 12 | grep -E 'reassembl|dropped' | awk 'BEGIN {FS=" "} $2~/^fragments/ {dropped = $1} $2~/^reassemblies/ {res_required = $1}&lt;br /&gt;$2~/^packets/ {res_ok = $1}  $3~/^reassembles/ {res_fail = $1; state=3} state == 3 {printf "%s%d,%d,%d,%d%s\n","insert into ipfrag (fragments_dropped&lt;br /&gt;,reassemblies_required,reassembled_ok,reassemble_failed) values(",dropped,res_required,res_ok,res_fail,");"}' | sqlplus -s &lt;span style="font-style:italic;"&gt;username/pw&lt;/span&gt;&lt;/pre&gt;&lt;span style="font-weight:bold;font-size:130%;" &gt;Update on 06-06-2011&lt;/span&gt;&lt;br /&gt;These servers are hosted in a hosting company's data centre and problem turned out to be a mismatch in a switch setting. Once fixed (speed and duplex was set to auto/auto in this case) and gc cr block lost waits went away on the problem node as well. Graphs taken with ADMon after the fix.&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/-FA6ZNvnEgo8/Te1KLg8rZLI/AAAAAAAAASE/0iOgHtt1VfI/s1600/1.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 98px;" src="http://1.bp.blogspot.com/-FA6ZNvnEgo8/Te1KLg8rZLI/AAAAAAAAASE/0iOgHtt1VfI/s320/1.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5615225872084329650" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/-SYqYejyDx-g/Te1KTSdM7gI/AAAAAAAAASM/6mtsfnsHIIk/s1600/2.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 98px;" src="http://1.bp.blogspot.com/-SYqYejyDx-g/Te1KTSdM7gI/AAAAAAAAASM/6mtsfnsHIIk/s320/2.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5615226005633166850" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2414933436751311863-4500952871973011922?l=asanga-pradeep.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/4500952871973011922'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/4500952871973011922'/><link rel='alternate' type='text/html' href='http://asanga-pradeep.blogspot.com/2011/05/gathering-stats-for-gc-lost-blocks.html' title='Gathering stats for gc lost blocks'/><author><name>Asanga</name><uri>http://www.blogger.com/profile/06917616787415349832</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_90fhbVRwXDU/TECqZgHU0eI/AAAAAAAAAIo/hwI2BMzwDcI/S220/profile.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/-RSRMqFfhQnI/TeTQ_NGHZSI/AAAAAAAAARw/tpL_SyB07A0/s72-c/gc_cr_block_lost_waits.png' height='72' width='72'/></entry><entry><id>tag:blogger.com,1999:blog-2414933436751311863.post-8617543330984636157</id><published>2011-05-26T04:55:00.000-07:00</published><updated>2011-05-26T07:12:46.363-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='flashback archive'/><category scheme='http://www.blogger.com/atom/ns#' term='11gR2'/><category scheme='http://www.blogger.com/atom/ns#' term='11.2.0.2'/><category scheme='http://www.blogger.com/atom/ns#' term='fdba'/><category scheme='http://www.blogger.com/atom/ns#' term='11gR1'/><title type='text'>Performance Overhead with FBDA 11.1 vs 11.2</title><content type='html'>Blog came about as a result of evaluating alternatives to a trigger base audit mechanism. Few simple test cases were run against databases on 11.1 and 11.2 with FBDA enabled and disabled. Test consists of inserting 100k rows into a table (which doesn't have any indexes and only two columns), then updating and deleting one row, updating and deleting 9999 rows then creating an unique index and running a update and delete loop. A commit is issued soon after the DML which stresses the fbda process and also makes the undo segments eligible for re-write once fbda has done with archiving. Flashback archive was created on a separate tablespace and the storage system is a file system (RHEL 5, ext3) not ASM and both 11.2 and 11.1 databases resided in the same machine.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;On 11.2 (PSU 11.2.0.2.2)&lt;/span&gt;&lt;br /&gt;Even though it was said in FBDA documentations that insert statements does not generate any records in the flashback archive, inserts were slow on tables with FBDA enabled than on table without FBDA. strace on the fbda process showed burst of activity when inserts were going on, though no records are written clearly some work is being carried out which adds some overhead.&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/-g6QVi_-vzSM/Td5eF18sbsI/AAAAAAAAARQ/LBN3M_tx3UI/s1600/t1.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 66px;" src="http://4.bp.blogspot.com/-g6QVi_-vzSM/Td5eF18sbsI/AAAAAAAAARQ/LBN3M_tx3UI/s320/t1.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5611025640224222914" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/-X6M7Zft9zTk/Td5Nzx9i-xI/AAAAAAAAAQ4/4I8MBXE1uNI/s1600/Untitled1.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 213px;" src="http://2.bp.blogspot.com/-X6M7Zft9zTk/Td5Nzx9i-xI/AAAAAAAAAQ4/4I8MBXE1uNI/s320/Untitled1.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5611007737730366226" /&gt;&lt;/a&gt;However the individual DML statements (outside the loops) that were run (with FBDA enabled) had elapsed time that were close to DML statements run without FBDA.Time shown is inclusive of execute time and commit time&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/-WREEJ65LEnQ/Td5eK2XmjeI/AAAAAAAAARY/O9Us0FmQJIs/s1600/t2.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 105px;" src="http://2.bp.blogspot.com/-WREEJ65LEnQ/Td5eK2XmjeI/AAAAAAAAARY/O9Us0FmQJIs/s320/t2.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5611025726236429794" /&gt;&lt;/a&gt;It seem if the fbda is able to keep up with the modification the overhead is less but whenever there's burst of activity it is possible to exhaust the fbda process to add considerable overhead.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;On 11.1 (PSU 11.1.0.7.7)&lt;/span&gt;&lt;br /&gt;It was difficult to get the test case working on 11.1 at times with PL/SQL terminating with the following&lt;pre&gt;SQL&gt;  begin&lt;br /&gt;  2      for i in 1 .. 100000&lt;br /&gt;  3      loop&lt;br /&gt;  4      insert into x values(i,i||'abcdefg');&lt;br /&gt;  5      commit;&lt;br /&gt;  6      end loop;&lt;br /&gt;  7      end;&lt;br /&gt;  8      /&lt;br /&gt;&lt;br /&gt; begin&lt;br /&gt;*&lt;br /&gt;ERROR at line 1:&lt;br /&gt;ORA-55616: Transaction table needs Flashback Archiver processing&lt;br /&gt;ORA-06512: at line 4&lt;/pre&gt;Explanation for this error says &lt;pre&gt;*Cause: Too many transaction table slots were being taken by transactions on tracked tables.&lt;br /&gt;*Action: Wait for some amount of time before doing tracked transactions.&lt;/pre&gt;Which indicates it is possible to exhaust the slots in the tracker table and worryingly this will put an end to further DML on that table until more slots are available. Overhead was far greater than in 11.2&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/-_z-DGI32PEk/Td5fIec_ogI/AAAAAAAAARg/K8113Rs0MOs/s1600/t3.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 56px;" src="http://1.bp.blogspot.com/-_z-DGI32PEk/Td5fIec_ogI/AAAAAAAAARg/K8113Rs0MOs/s320/t3.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5611026784968483330" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/-qvHIQ6b43W4/Td5WIIS-eVI/AAAAAAAAARA/ccldfstiqzM/s1600/Untitled2.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 187px;" src="http://3.bp.blogspot.com/-qvHIQ6b43W4/Td5WIIS-eVI/AAAAAAAAARA/ccldfstiqzM/s320/Untitled2.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5611016883416234322" /&gt;&lt;/a&gt;However the key difference between 11.2 and 11.1 came when the elapsed time on individual DMLs were compared. Although execute time was low and similar to elapsed times of 11.2 or even without FBDA, commit time was far greater than in 11.2&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/-E-Utb9bBBh8/Td5fgOAnoII/AAAAAAAAARo/QDanEa9f2XU/s1600/t4.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 74px;" src="http://4.bp.blogspot.com/-E-Utb9bBBh8/Td5fgOAnoII/AAAAAAAAARo/QDanEa9f2XU/s320/t4.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5611027192871362690" /&gt;&lt;/a&gt;It could be said that 11.2 has some improvements over 11.1 when it comes to FBDA but still careful consideration must be given to the performance overhead introduced by FBDA.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;From metalink&lt;/span&gt;&lt;br /&gt;Bug : COMMIT DELAY WHEN UPDATING TABLE IN FLASHBACK DATA ARCHIVE MODE 8226666&lt;br /&gt;Bug 9786460 - ORA-600 [qertbfetchbyrowid_fda:no selected row] after bugfix 8226666 [ID 9786460.8] &lt;br /&gt;&lt;br /&gt;Test Case&lt;pre&gt;set timing on&lt;br /&gt;--create table x (a number, b varchar2(1000)); -- for without FBDA&lt;br /&gt;create table x (a number, b varchar2(1000)) flashback archive fbdarchive; -- for with FBDA&lt;br /&gt;&lt;br /&gt;begin&lt;br /&gt;  for i in 1 .. 100000&lt;br /&gt;  loop&lt;br /&gt;    insert into x values(i,i||'abcdefg');&lt;br /&gt;    commit;&lt;br /&gt;   end loop;&lt;br /&gt;end;&lt;br /&gt;/&lt;br /&gt;update x set b = 'aa' where a = 10;&lt;br /&gt;commit;&lt;br /&gt;delete from x where a = 10;&lt;br /&gt;commit;&lt;br /&gt;update x set b = 'bbbb' where a &lt; 10001;&lt;br /&gt;commit;&lt;br /&gt;delete from x where a &lt; 10001;&lt;br /&gt;commit;&lt;br /&gt;&lt;br /&gt;create unique index aidx on x(a) compute statistics nologging;&lt;br /&gt;&lt;br /&gt;begin&lt;br /&gt;  for i in 1 .. 100000&lt;br /&gt;  loop&lt;br /&gt;    update x set b = 'abcdef' where a = i;&lt;br /&gt;    commit;&lt;br /&gt;   end loop;&lt;br /&gt;end;&lt;br /&gt;/&lt;br /&gt;&lt;br /&gt;begin&lt;br /&gt;  for i in 1 .. 100000&lt;br /&gt;  loop&lt;br /&gt;    delete from x where a = i;&lt;br /&gt;    commit;&lt;br /&gt;   end loop;&lt;br /&gt;end;&lt;br /&gt;/&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2414933436751311863-8617543330984636157?l=asanga-pradeep.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/8617543330984636157'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/8617543330984636157'/><link rel='alternate' type='text/html' href='http://asanga-pradeep.blogspot.com/2011/05/performance-overhead-with-fbda-111-vs.html' title='Performance Overhead with FBDA 11.1 vs 11.2'/><author><name>Asanga</name><uri>http://www.blogger.com/profile/06917616787415349832</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_90fhbVRwXDU/TECqZgHU0eI/AAAAAAAAAIo/hwI2BMzwDcI/S220/profile.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-g6QVi_-vzSM/Td5eF18sbsI/AAAAAAAAARQ/LBN3M_tx3UI/s72-c/t1.png' height='72' width='72'/></entry><entry><id>tag:blogger.com,1999:blog-2414933436751311863.post-3083492048180419725</id><published>2011-05-24T04:43:00.000-07:00</published><updated>2011-05-26T04:55:03.827-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='flashback archive'/><category scheme='http://www.blogger.com/atom/ns#' term='11gR2'/><category scheme='http://www.blogger.com/atom/ns#' term='11.2.0.2'/><category scheme='http://www.blogger.com/atom/ns#' term='fdba'/><category scheme='http://www.blogger.com/atom/ns#' term='11gR1'/><title type='text'>Flashback Data Archive 11.1 vs 11.2</title><content type='html'>Some of the DDL statements that weren't allowed on tables that had FDBA enabled in 11.1 are now allowed on 11.2. Section below gives a summary of the changes.&lt;br /&gt;&lt;br /&gt;From 11.1 documentation&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;&lt;a href="http://download.oracle.com/docs/cd/B28359_01/appdev.111/b28424/adfns_flashback.htm#BJFJHDAG"&gt;DDL Statements Not Allowed on Tables Enabled for Flashback Data Archive&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style:italic;"&gt;Using any of the following DDL statements on a table enabled for Flashback Data Archive causes error ORA-55610:&lt;br /&gt;&lt;br /&gt;ALTER TABLE statement that does any of the following:&lt;br /&gt;Drops, renames, or modifies a column&lt;br /&gt;Performs partition or sub partition operations&lt;br /&gt;Converts a LONG column to a LOB column &lt;br /&gt;Includes an UPGRADE TABLE clause, with or without an INCLUDING DATA clause&lt;br /&gt;DROP TABLE statement&lt;br /&gt;RENAME TABLE statement&lt;br /&gt;TRUNCATE TABLE statement&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;On 11.1.0.7 (11.1.0.7.3 PSU)&lt;pre&gt;SQL&gt; create table x (a number, b varchar2(1000)) flashback archive fbdarchive;&lt;br /&gt;&lt;br /&gt;Table created.&lt;br /&gt;&lt;br /&gt;SQL&gt; alter table x rename to y;&lt;br /&gt;alter table x rename to y&lt;br /&gt;*&lt;br /&gt;ERROR at line 1:&lt;br /&gt;ORA-55610: Invalid DDL statement on history-tracked table&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;SQL&gt; truncate table x;&lt;br /&gt;truncate table x&lt;br /&gt;               *&lt;br /&gt;ERROR at line 1:&lt;br /&gt;ORA-55610: Invalid DDL statement on history-tracked table&lt;/pre&gt;From 11.2 documentation&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;&lt;a href="http://download.oracle.com/docs/cd/E11882_01/appdev.112/e17125/adfns_flashback.htm#BJFJHDAG"&gt;DDL Statements on Tables Enabled for Flashback Data Archive&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style:italic;"&gt;Flashback Data Archive supports many DDL statements, including some that alter the table definition or move data. For example:&lt;br /&gt;ALTER TABLE statement that does any of the following:&lt;br /&gt;Adds, drops, renames, or modifies a column&lt;br /&gt;Adds, drops, or renames a constraint&lt;br /&gt;Drops or truncates a partition or sub partition operation&lt;br /&gt;TRUNCATE TABLE statement&lt;br /&gt;RENAME statement that renames a table&lt;br /&gt;&lt;br /&gt;Some DDL statements cause error ORA-55610 when used on a table enabled for Flashback Data Archive. For example:&lt;br /&gt;ALTER TABLE statement that includes an UPGRADE TABLE clause, with or without an INCLUDING DATA clause&lt;br /&gt;&lt;br /&gt;ALTER TABLE statement that moves or exchanges a partition or sub partition operation&lt;br /&gt;&lt;br /&gt;DROP TABLE statement&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;On 11.2 (11.2.0.2)&lt;pre&gt;SQL&gt; create table x (a number, b varchar2(1000)) flashback archive auditarchive;&lt;br /&gt;&lt;br /&gt;Table created.&lt;br /&gt;&lt;br /&gt;SQL&gt; alter table x rename to y;&lt;br /&gt;&lt;br /&gt;Table altered.&lt;br /&gt;&lt;br /&gt;SQL&gt; truncate table y;&lt;br /&gt;&lt;br /&gt;Table truncated.&lt;br /&gt;&lt;br /&gt;SQL&gt; drop table y;&lt;br /&gt;drop table y&lt;br /&gt;           *&lt;br /&gt;ERROR at line 1:&lt;br /&gt;ORA-55610: Invalid DDL statement on history-tracked table&lt;/pre&gt;More bugs on 11.1 vs 11.2 Bug : COMMIT DELAY WHEN UPDATING TABLE IN FLASHBACK DATA ARCHIVE MODE 8226666 &lt;br /&gt;&lt;br /&gt;Bug 9786460 - ORA-600 [qertbfetchbyrowid_fda:no selected row] after bugfix 8226666 [ID 9786460.8]&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2414933436751311863-3083492048180419725?l=asanga-pradeep.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/3083492048180419725'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/3083492048180419725'/><link rel='alternate' type='text/html' href='http://asanga-pradeep.blogspot.com/2011/05/flashback-data-archive-111-vs-112.html' title='Flashback Data Archive 11.1 vs 11.2'/><author><name>Asanga</name><uri>http://www.blogger.com/profile/06917616787415349832</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_90fhbVRwXDU/TECqZgHU0eI/AAAAAAAAAIo/hwI2BMzwDcI/S220/profile.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-2414933436751311863.post-9123899316484353563</id><published>2011-05-15T08:16:00.000-07:00</published><updated>2011-12-20T04:08:43.273-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='java7'/><title type='text'>New On Java 7</title><content type='html'>Following are some of the things new on Java 7. Taken from various java documentations.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Catching More Than One Type of Exception with One Exception Handler&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;In Java SE 7 and later, a single catch block can handle more than one type of exception. This feature can reduce code duplication and lessen the temptation to catch an overly broad exception.&lt;br /&gt;&lt;br /&gt;In the catch clause, specify the types of exceptions that block can handle, and separate each exception type with a vertical bar (|):http://www.blogger.com/img/blank.gif&lt;br /&gt;&lt;br /&gt;catch (IOException|SQLException ex) {&lt;br /&gt;logger.log(ex);&lt;br /&gt;throw ex;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;Note: If a catch block handles more than one exception type, then the catch parameter is implicitly final. In this example, the catch parameter ex is final and therefore you cannot assign any values to it within the catch block.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://download.oracle.com/javase/tutorial/java/generics/non-reifiable-varargs-type.html"&gt;Using Non-Reifiable Parameters with Varargs Methods&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Generics in varargs&lt;/b&gt;&lt;br /&gt;The compiler issues a warning "warning: [unchecked] unchecked generic array creation" when generics are passed as varargs. This warning could be suppressed with @SafeVarArgs annotation on the method, which would ensure that the method wouldn't perform any unsafe operation.&lt;pre&gt;public static void main(String[] args) {&lt;br /&gt;        compute(new HashMap&lt;integer&gt;(), &lt;br /&gt;new TreeMap&lt;integer&gt;());&lt;br /&gt;       }&lt;br /&gt;&lt;br /&gt;@SafeVarargs&lt;br /&gt;    static void compute(Map&lt;integer&gt;... args) {&lt;br /&gt;        }&lt;br /&gt;}&lt;/pre&gt;&lt;span style="font-weight:bold;"&gt;Using Strings in switch Statements&lt;/span&gt;&lt;br /&gt;A switch works with the byte, short, char, and int primitive data types. It also works with enumerated types (discussed in Enum Types), the String class, and a few special classes that wrap certain primitive types: Character, Byte, Short, and Integer (discussed in Numbers and Strings).&lt;br /&gt;&lt;br /&gt;In Java SE 7 and later, you can use a String object in the switch statement's expression. &lt;br /&gt;&lt;pre&gt;public static int getMonthNumber(String month) {&lt;br /&gt;&lt;br /&gt;int monthNumber = 0;&lt;br /&gt;&lt;br /&gt;if (month == null) { return monthNumber; }&lt;br /&gt;&lt;br /&gt;switch (month.toLowerCase()) {&lt;br /&gt;case "january":    monthNumber =  1; break;&lt;br /&gt;case "february":   monthNumber =  2; break;&lt;br /&gt;case "march":      monthNumber =  3; break;&lt;br /&gt;case "april":      monthNumber =  4; break;&lt;br /&gt;case "may":        monthNumber =  5; break;&lt;br /&gt;case "june":       monthNumber =  6; break;&lt;br /&gt;case "july":       monthNumber =  7; break;&lt;br /&gt;case "august":     monthNumber =  8; break;&lt;br /&gt;case "september":  monthNumber =  9; break;&lt;br /&gt;case "october":    monthNumber = 10; break;&lt;br /&gt;case "november":   monthNumber = 11; break;&lt;br /&gt;case "december":   monthNumber = 12; break;&lt;br /&gt;default:           monthNumber =  0; break;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;return monthNumber;&lt;br /&gt;}&lt;/pre&gt;The String in the switch expression is compared with the expressions associated with each case label as if the String.equals method were being used.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Diamond syntax&lt;/b&gt;&lt;br /&gt;Until Java 7, generic instances were created with&lt;pre&gt;Map&amp;lt;Integer, String&amp;gt; map = new HashMap&amp;lt;Integer, String&amp;gt;();&lt;/pre&gt;In Java 7 only refernce requires type information and actual type could be without type information. &lt;pre&gt;Map&amp;lt;Integer, String&amp;gt; map = new HashMap&amp;lt;&amp;gt;();&lt;/pre&gt;&lt;br /&gt;&lt;b&gt;Binary literal and underscore in numeric literals&lt;/b&gt;&lt;br /&gt;Binary values could be defined as &lt;pre&gt;int number = 0b1100110; // decimal 102&lt;/pre&gt;Lengthy numeric values can be separated using underscores&lt;pre&gt;long longnum = 28_06_86L;&lt;br /&gt;long verylongnumber = 2334_7656_4503_3844L;&lt;/pre&gt;&lt;b&gt;Automatic Resource Management&lt;/b&gt;&lt;br /&gt;With the new Java 7 try block syntax, resources declared while defining the try block will automatically close when the control comes out of the try block.&lt;pre&gt;try (BufferedReader reader = new BufferedReader(new FileReader(fileName))) {&lt;br /&gt;while ((line = reader.readLine()) != null) {&lt;br /&gt;         //do some work&lt;br /&gt;       }&lt;br /&gt;    } catch (IOException ex) {&lt;br /&gt; }&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2414933436751311863-9123899316484353563?l=asanga-pradeep.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/9123899316484353563'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/9123899316484353563'/><link rel='alternate' type='text/html' href='http://asanga-pradeep.blogspot.com/2011/05/new-on-java-7.html' title='New On Java 7'/><author><name>Asanga</name><uri>http://www.blogger.com/profile/06917616787415349832</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_90fhbVRwXDU/TECqZgHU0eI/AAAAAAAAAIo/hwI2BMzwDcI/S220/profile.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-2414933436751311863.post-1078548052318863203</id><published>2011-04-04T06:32:00.000-07:00</published><updated>2011-12-06T07:52:01.832-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='lftp'/><category scheme='http://www.blogger.com/atom/ns#' term='ftp'/><category scheme='http://www.blogger.com/atom/ns#' term='ASM'/><title type='text'>Get ASM Files Using LFTP</title><content type='html'>If a database has XML DB set and ftp port configured then lftp could be used to get files out of the ASM.&lt;br /&gt;FTP port could be configured with &lt;pre&gt;SQL&gt; @$ORACLE_HOME/rdbms/admin/catxdbdbca.sql 7001 8001&lt;br /&gt;7001 is the ftp port &lt;br /&gt;8001 is the http port&lt;/pre&gt;Listener status would display these ports&lt;pre&gt;lsnrctl status&lt;br /&gt;...&lt;br /&gt;(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=&lt;i&gt;hostname&lt;/i&gt;)(PORT=7001))(Presentation=FTP)(Session=RAW))&lt;br /&gt;(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=&lt;i&gt;hostname&lt;/i&gt;)(PORT=8001))(Presentation=HTTP)(Session=RAW))&lt;br /&gt;...&lt;/pre&gt;To get a file for example an archive log file use&lt;pre&gt;lftp &lt;span style="font-weight:bold;"&gt;rac4&lt;/span&gt; -u&lt;span style="font-weight:bold;"&gt;system&lt;/span&gt;,&lt;span style="font-weight:bold;"&gt;passwd&lt;/span&gt; -p7001 -e 'get /sys/asm/FLASH/RAC11G2/ARCHIVELOG/2011_04_02/thread_2_seq_472.390.747360023;exit;'&lt;br /&gt;41125376 bytes transferred in 4 seconds (11.02M/s)&lt;/pre&gt;Here rac4 is the host on which the ASM instance is running, command could be executed from a remote node as well. Following -u is the username used to login into the system, in this case database's system user and comma separated by the password for system user. FTP port is specified with -p.&lt;br /&gt;&lt;br /&gt;Without the exit at the end, after the file is transferred shell prompt will end up in the ftp prompt.&lt;br /&gt;&lt;br /&gt;To remove the http and ftp ports get rid of the dispatcher parameter (as per &lt;b&gt;274508.1&lt;/b&gt; Listener Issue: Removing XDB Handlers for HTTP and FTP Ports) or &lt;pre&gt;conn / as sysdba&lt;br /&gt;exec dbms_xdb.sethttpport(0);&lt;br /&gt;exec dbms_xdb.setftpport(0);&lt;br /&gt;alter system register;&lt;/pre&gt;More on Master Note for Oracle XML DB Protocols: FTP HTTP HTTPS WebDAV, APEX and Native Database Web Services &lt;b&gt;[ID 1083991.1]&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Apart from lftp ftp client such filezilla could be used to connect to the ftp port specified and get the files.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2414933436751311863-1078548052318863203?l=asanga-pradeep.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/1078548052318863203'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/1078548052318863203'/><link rel='alternate' type='text/html' href='http://asanga-pradeep.blogspot.com/2011/04/get-asm-files-using-lftp.html' title='Get ASM Files Using LFTP'/><author><name>Asanga</name><uri>http://www.blogger.com/profile/06917616787415349832</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_90fhbVRwXDU/TECqZgHU0eI/AAAAAAAAAIo/hwI2BMzwDcI/S220/profile.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-2414933436751311863.post-3035703185314896632</id><published>2011-04-01T08:06:00.000-07:00</published><updated>2011-04-01T08:45:14.633-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='11gR2'/><category scheme='http://www.blogger.com/atom/ns#' term='11g'/><category scheme='http://www.blogger.com/atom/ns#' term='resetlogs'/><category scheme='http://www.blogger.com/atom/ns#' term='11.2.0.2'/><category scheme='http://www.blogger.com/atom/ns#' term='flashback'/><category scheme='http://www.blogger.com/atom/ns#' term='11gR1'/><category scheme='http://www.blogger.com/atom/ns#' term='dataguard'/><title type='text'>Enable Flashback On Standby</title><content type='html'>It is possible to enable flashback on a standby independent of the primary. (It's good to have flashback enabled both on primary and standby, if flashback IO is no concern).&lt;br /&gt;Data guard environment created &lt;a href="http://asanga-pradeep.blogspot.com/2011http://www.blogger.com/img/blank.gif/02/11gr2-rac-to-rac-switchover.html"&gt;earlier&lt;/a&gt; is used here. Steps are similar to &lt;span style="font-weight:bold;"&gt;How to Enable Flashback for a RAC Database on ASM ( 819905.1)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;To enable flashback on standby bring the stop log apply on standby (transport could also be stopped for the duration).&lt;pre&gt;DGMGRL&gt;  edit database rac11g2 set state='TRANSPORT-OFF';&lt;br /&gt;Succeeded.&lt;br /&gt;DGMGRL&gt; edit database rac11g2s set state='APPLY-OFF';&lt;br /&gt;Succeeded.&lt;/pre&gt;Trying to enable flashback while log apply is on will result in&lt;pre&gt;SQL&gt; alter database flashback on;&lt;br /&gt;alter database flashback on&lt;br /&gt;*&lt;br /&gt;ERROR at line 1:&lt;br /&gt;ORA-01153: an incompatible media recovery is active&lt;/pre&gt;If the standby is &lt;a href="http://asanga-pradeep.blogspot.com/2011/02/enable-active-dataguard-on-11gr2-rac.html"&gt;open in read only mode&lt;/a&gt; then shutdown and bring it up only one instance in mount mode as this is required to enable flashback.&lt;pre&gt;srvctl stop database -d rac11g2s&lt;br /&gt;srvctl start instance -d rac11g2s -i rac11g2s1 -o mount&lt;/pre&gt;Once in mount mode enable flashback on the standby&lt;pre&gt;SQL&gt; alter database flashback on;&lt;br /&gt;&lt;br /&gt;Database altered.&lt;/pre&gt;Enable log apply and transport on&lt;pre&gt;DGMGRL&gt; edit database rac11g2 set state='TRANSPORT-ON';&lt;br /&gt;Succeeded.&lt;br /&gt;DGMGRL&gt; edit database rac11g2s set state='APPLY-ON';&lt;br /&gt;Succeeded.&lt;/pre&gt;Open the standby mode in read only if required. Check the flashback on status of the database &lt;pre&gt;SQL&gt; select flashback_on from v$database;&lt;br /&gt;&lt;br /&gt;FLASHBACK_ON&lt;br /&gt;------------&lt;br /&gt;YES&lt;/pre&gt;Having flashback on standby is important especially to recover from open resetlogs situations in primary. If the standby has applied changes past the new resetlog scn and there's no flashback enabled on standby, only way to recover is to recreate the standby. If flashback was enabled on standby then it could be used to flashback to a scn prior to resetlogs and continue to use the standby from then onwards.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2414933436751311863-3035703185314896632?l=asanga-pradeep.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/3035703185314896632'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/3035703185314896632'/><link rel='alternate' type='text/html' href='http://asanga-pradeep.blogspot.com/2011/04/enable-flashback-on-standby.html' title='Enable Flashback On Standby'/><author><name>Asanga</name><uri>http://www.blogger.com/profile/06917616787415349832</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_90fhbVRwXDU/TECqZgHU0eI/AAAAAAAAAIo/hwI2BMzwDcI/S220/profile.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-2414933436751311863.post-6731229151170405265</id><published>2011-03-24T08:55:00.000-07:00</published><updated>2011-03-24T09:29:29.448-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='fal'/><category scheme='http://www.blogger.com/atom/ns#' term='archive gaps'/><category scheme='http://www.blogger.com/atom/ns#' term='11gR1'/><category scheme='http://www.blogger.com/atom/ns#' term='dataguard'/><category scheme='http://www.blogger.com/atom/ns#' term='arcn'/><title type='text'>Stuck Archiver Processes and FAL Gap Resolution Not Working</title><content type='html'>On a RAC to RAC data guard configuration (11.1.0.7) network wait class and waits on LGWR LNS seem to appear out of the blue. System has been running for a quite a number of years and there has not been any changes to network or any other hardware (NIC, cables and etc). Output from the emconsole&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/-AhMHy_BTC7o/TYtqvXdm1dI/AAAAAAAAAQI/zo-jGa_tdCM/s1600/emoutput.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 71px;" src="http://1.bp.blogspot.com/-AhMHy_BTC7o/TYtqvXdm1dI/AAAAAAAAAQI/zo-jGa_tdCM/s320/emoutput.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5587677124667823570" /&gt;&lt;/a&gt;Drilling down to "other" wait class could see following LGWR LNS wait&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/-Q1NES1ZJ2JY/TYtroUTtP1I/AAAAAAAAAQQ/x-syJVUCwpY/s1600/lgwr.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 62px;" src="http://4.bp.blogspot.com/-Q1NES1ZJ2JY/TYtroUTtP1I/AAAAAAAAAQQ/x-syJVUCwpY/s320/lgwr.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5587678103073537874" /&gt;&lt;/a&gt;The wait histogram showed a constant value of 16ms&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/-O4vPRbR8eVU/TYtsFU0Ip-I/AAAAAAAAAQY/dRNeLouCu8A/s1600/lgwrhisto.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 130px;" src="http://3.bp.blogspot.com/-O4vPRbR8eVU/TYtsFU0Ip-I/AAAAAAAAAQY/dRNeLouCu8A/s320/lgwrhisto.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5587678601425758178" /&gt;&lt;/a&gt;Following was observed in the network wait class drill down&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/-eGXsNPHqBFo/TYtshvP2vUI/AAAAAAAAAQg/dByFiMdx2DM/s1600/arch.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 66px;" src="http://2.bp.blogspot.com/-eGXsNPHqBFo/TYtshvP2vUI/AAAAAAAAAQg/dByFiMdx2DM/s320/arch.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5587679089557683522" /&gt;&lt;/a&gt;Metalink note &lt;span style="font-weight:bold;"&gt;Data Guard Wait Events (233491.1)&lt;/span&gt; describes these wait event as "&lt;span style="font-style:italic;"&gt;ARCH wait on ATTACH - This wait event monitors the amount of time spent by all archive processes to spawn an RFS connection. The LGWR-LNS wait on channel wait event is for standby destinations  configured with either the LGWR ASYNC or LGWR SYNC=PARALLEL attributes. &lt;br /&gt;LGWR-LNS wait on channel - This wait event monitors the amount of time spent by the log writer (LGWR) process or the network server processes waiting to receive messages on KSR channels.&lt;/span&gt;"&lt;br /&gt;&lt;br /&gt;During this time there was a considerable archive gap between primary and standby and FAL gap resolution seems unable to resolve it. (FAL use to work fine).&lt;br /&gt;&lt;br /&gt;The thought of making changes to transport related values in Oracle net (send and receive buffer) was suppressed since there has not been any hardware changes.&lt;br /&gt;Metalink didn't give any more than definition for these waits. &lt;br /&gt;Googling yield a forum post with a mention of metalink note &lt;span style="font-weight:bold;"&gt;Bug 5576816 - FAL gap resolution does not work with max_connection set in some scenario.&lt;/span&gt; This was applicable for 10.2.0.3 not 11.1.0.7 but the recommendation on the posting (found through googling) was to kill all the archive processes in primary(these will get restated as soon as they get killed). Reason given was that these archive processes were "stuck" and need restart. Looking at the emconsole it was also visible waits were happening on the archive processes.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/-XEPVixoSRwg/TYtu9SOIXQI/AAAAAAAAAQo/it5q6ErppvU/s1600/3.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 94px;" src="http://3.bp.blogspot.com/-XEPVixoSRwg/TYtu9SOIXQI/AAAAAAAAAQo/it5q6ErppvU/s320/3.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5587681761825414402" /&gt;&lt;/a&gt;&lt;br /&gt;Tried to kill the archive processors "proper way" by changing the log_archive_max_processes to 1 but this didn't kill any of the processes. Even after setting it to 1 all the archive processes were running. Then did a rolling shutdown and start up of the primary which resolved the issue.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/-Fy2FgcFS5_4/TYtv8CR2M5I/AAAAAAAAAQw/AoqnsB5HPpw/s1600/1.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 72px;" src="http://4.bp.blogspot.com/-Fy2FgcFS5_4/TYtv8CR2M5I/AAAAAAAAAQw/AoqnsB5HPpw/s320/1.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5587682839877792658" /&gt;&lt;/a&gt;&lt;br /&gt;Unfortunately the issue was back after few days on one of the nodes. This time killing the Oracle database session of the archive processes waiting for these wait events resolved it. It seem the archive processes being "stuck" is the symptom and cause could be something else. &lt;br /&gt;Blog post will be updated ...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2414933436751311863-6731229151170405265?l=asanga-pradeep.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/6731229151170405265'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/6731229151170405265'/><link rel='alternate' type='text/html' href='http://asanga-pradeep.blogspot.com/2011/03/stuck-archiver-processes-and-fal-gap.html' title='Stuck Archiver Processes and FAL Gap Resolution Not Working'/><author><name>Asanga</name><uri>http://www.blogger.com/profile/06917616787415349832</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_90fhbVRwXDU/TECqZgHU0eI/AAAAAAAAAIo/hwI2BMzwDcI/S220/profile.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/-AhMHy_BTC7o/TYtqvXdm1dI/AAAAAAAAAQI/zo-jGa_tdCM/s72-c/emoutput.png' height='72' width='72'/></entry><entry><id>tag:blogger.com,1999:blog-2414933436751311863.post-2180333217305529350</id><published>2011-03-18T05:27:00.000-07:00</published><updated>2011-03-18T05:46:53.463-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='expdp'/><category scheme='http://www.blogger.com/atom/ns#' term='11gR2'/><category scheme='http://www.blogger.com/atom/ns#' term='11g'/><category scheme='http://www.blogger.com/atom/ns#' term='impdp'/><category scheme='http://www.blogger.com/atom/ns#' term='remap_date'/><category scheme='http://www.blogger.com/atom/ns#' term='11gR1'/><title type='text'>Remap Column Data on the Fly using EXPDP</title><content type='html'>Remap data is a new feature introduced in 11g releases which allows data on a column to be changed on the fly when exporting (expdp).&lt;br /&gt;&lt;br /&gt;Few things to note. The help option gives the usage of remap_data as &lt;pre&gt;REMAP_DATA&lt;br /&gt;Specify a data conversion function.&lt;br /&gt;For example, REMAP_DATA=EMP.EMPNO:REMAPPKG.EMPNO.&lt;/pre&gt;It shows only the table name and column name is required but this result in following error&lt;pre&gt;Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.2.0 - 64bit Production&lt;br /&gt;With the Partitioning, OLAP, Data Mining and Real Application Testing options&lt;br /&gt;ORA-39001: invalid argument value&lt;br /&gt;ORA-39146: schema "" does not exist&lt;/pre&gt;Schema name is also required.&lt;br /&gt;&lt;br /&gt;Also the function used to remap the data must accept the column type as argument otherwise following error will be thrown&lt;pre&gt;ORA-31693: Table data object "ASANGA"."X" failed to load/unload and is being skipped due to error:&lt;br /&gt;ORA-06553: PLS-306: wrong number or types of arguments in call to &lt;span style="font-style:italic;"&gt;function_name&lt;/span&gt;&lt;/pre&gt;Also the function used must be a function within a function. Schema level function will not be used and following error will be shown&lt;pre&gt;ORA-39001: invalid argument value&lt;br /&gt;ORA-39232: invalid remap function: DUMP_OBFUSCATE&lt;/pre&gt;Below is an example package function that could be used&lt;pre&gt;create or replace package obfuscate as&lt;br /&gt;&lt;br /&gt; function dump_obfuscate(ssn in number) return number;&lt;br /&gt; &lt;br /&gt;end;&lt;br /&gt;/&lt;br /&gt;&lt;br /&gt;create or replace package body  obfuscate as&lt;br /&gt;  &lt;br /&gt; function dump_obfuscate(ssn in number) return number&lt;br /&gt; is&lt;br /&gt;  i number;&lt;br /&gt; begin&lt;br /&gt;  i := dbms_random.value(0,100);&lt;br /&gt;  return  round(i);&lt;br /&gt; end;&lt;br /&gt;&lt;br /&gt;end;&lt;br /&gt;/&lt;/pre&gt;Use the expdp syntax as &lt;pre&gt;expdp asanga/asa directory=dumpdir dumpfile=asa.dmp logfile=asa.log SCHEMAS=asanga&lt;br /&gt;REMAP_DATA=asanga.x.a:obfuscate.dump_obfuscate&lt;/pre&gt;It is also possible to remap data in multiple tables using multiple remap functions.&lt;pre&gt;expdp asanga/*** directory=dumpdir dumpfile=asa.dmp logfile=asa.log SCHEMAS=asanga&lt;br /&gt;REMAP_DATA=asanga.x.a:obfuscate.dump_obfuscate,asanga.y.a:obfuscate1.dump_obfuscate1&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2414933436751311863-2180333217305529350?l=asanga-pradeep.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/2180333217305529350'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/2180333217305529350'/><link rel='alternate' type='text/html' href='http://asanga-pradeep.blogspot.com/2011/03/remap-column-data-on-fly-using-exp.html' title='Remap Column Data on the Fly using EXPDP'/><author><name>Asanga</name><uri>http://www.blogger.com/profile/06917616787415349832</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_90fhbVRwXDU/TECqZgHU0eI/AAAAAAAAAIo/hwI2BMzwDcI/S220/profile.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-2414933436751311863.post-7748108036034493871</id><published>2011-03-11T07:36:00.000-08:00</published><updated>2011-03-14T03:15:10.592-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='11gR2'/><category scheme='http://www.blogger.com/atom/ns#' term='acfs'/><category scheme='http://www.blogger.com/atom/ns#' term='ASM'/><title type='text'>Creating and Removing ACFS</title><content type='html'>&lt;span style="font-style: italic;"&gt;&lt;a href="http://download.oracle.com/docs/cd/E11882_01/server.112/e16102/asmfilesystem.htm#CACJFGCD"&gt;Oracle Automatic Storage Management Cluster File System (Oracle ACFS) is a multi-platform, scalable file system, and storage management technology that extends Oracle Automatic Storage Management (Oracle ASM) functionality to support customer files maintained outside of Oracle Database.&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;Creating ACFS&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;1. Set the diskgroup attribute parameters. Compatible.asm and compatible.advm should be &gt;= 11.2&lt;pre&gt;$ sqlplus  / as sysasm&lt;br /&gt;SQL&gt; alter diskgroup flash set attribute 'compatible.asm'='11.2';&lt;br /&gt;SQL&gt; alter diskgroup flash set attribute 'compatible.advm'='11.2';&lt;/pre&gt;2. Create a volume in the appropriate diskgroup&lt;pre&gt;SQL&gt; alter diskgroup flash add volume volume1 size 1g;&lt;/pre&gt;This could also be done using asmcmd. Volume device could be identified with &lt;pre&gt;select volume_name,volume_device from v$asm_volume;&lt;br /&gt;VOLUME_NAME    VOLUME_DEVICE&lt;br /&gt;-------------- ---------------------&lt;br /&gt;VOLUMNE1       /dev/asm/volumne1-398&lt;/pre&gt;This could also confirmed with &lt;span style="font-style:italic;"&gt;ls /dev/asm/*&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;3. Create a file system on the created volume&lt;pre&gt;# mkfs -t acfs /dev/asm/volumne1-398&lt;br /&gt;mkfs.acfs: version                   = 11.2.0.2.0&lt;br /&gt;mkfs.acfs: on-disk version           = 39.0&lt;br /&gt;mkfs.acfs: volume                    = /dev/asm/volumne1-398&lt;br /&gt;mkfs.acfs: volume size               = 1073741824&lt;br /&gt;mkfs.acfs: Format complete.&lt;/pre&gt;4. Register the file system with &lt;pre&gt;acfsutil registry -a /dev/asm/volumne1-398 /opt/acfsvol&lt;/pre&gt;/opt/acfsvol will be the mountpoint for this file system.&lt;br /&gt;&lt;br /&gt;5. Mount the file system &lt;pre&gt;# mount -t acfs /dev/asm/volumne1-398 /opt/acfsvol&lt;br /&gt;&lt;br /&gt;ASMCMD&gt; volinfo -G flash VOLUMNE1&lt;br /&gt;Diskgroup Name: FLASH&lt;br /&gt;&lt;br /&gt;         Volume Name: VOLUMNE1&lt;br /&gt;         Volume Device: /dev/asm/volumne1-398&lt;br /&gt;         State: ENABLED&lt;br /&gt;         Size (MB): 1024&lt;br /&gt;         Resize Unit (MB): 256&lt;br /&gt;         Redundancy: UNPROT&lt;br /&gt;         Stripe Columns: 4&lt;br /&gt;         Stripe Width (K): 128&lt;br /&gt;         Usage: ACFS&lt;br /&gt;         Mountpath: /opt/acfsvol&lt;/pre&gt;6. Change ownership to Oracle user to allow oracle user processes to use the file system &lt;pre&gt;# chown oracle:oinstall /opt/acfsvol&lt;/pre&gt;6. As oracle user create a file in the mount point &lt;pre&gt;cd /opt/acfsvol&lt;br /&gt;touch x&lt;/pre&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;span style="font-size:130%;"&gt;Removing ACFS&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;1. Unmount the file system &lt;pre&gt;# umount /opt/acfsvol&lt;/pre&gt;2. De-register the file system&lt;pre&gt;# acfsutil registry -d /opt/acfsvol&lt;br /&gt;acfsutil registry: successfully removed ACFS mount point /opt/acfsvol from Oracle Registry&lt;/pre&gt;3. Drop the volumne from the diskgroup&lt;pre&gt;SQL&gt; alter diskgroup flash drop volume volume1;&lt;br /&gt;&lt;br /&gt;Diskgroup altered.&lt;br /&gt;&lt;br /&gt;SQL&gt; select volume_name,volume_device from v$asm_volume;&lt;br /&gt;&lt;br /&gt;no rows selected&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2414933436751311863-7748108036034493871?l=asanga-pradeep.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/7748108036034493871'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/7748108036034493871'/><link rel='alternate' type='text/html' href='http://asanga-pradeep.blogspot.com/2011/03/creating-and-removing-acfs.html' title='Creating and Removing ACFS'/><author><name>Asanga</name><uri>http://www.blogger.com/profile/06917616787415349832</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_90fhbVRwXDU/TECqZgHU0eI/AAAAAAAAAIo/hwI2BMzwDcI/S220/profile.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-2414933436751311863.post-4836416470980009154</id><published>2011-03-10T05:12:00.000-08:00</published><updated>2011-03-10T06:22:33.462-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='rac'/><category scheme='http://www.blogger.com/atom/ns#' term='11gR2'/><category scheme='http://www.blogger.com/atom/ns#' term='11.2.0.2'/><category scheme='http://www.blogger.com/atom/ns#' term='rman'/><category scheme='http://www.blogger.com/atom/ns#' term='dataguard'/><title type='text'>11gR2 RAC to RAC Data Guard - 2</title><content type='html'>The first &lt;a href="http://asanga-pradeep.blogspot.com/2011/02/11gr2-rac-to-rac-data-guard.html"&gt;11gR2 RAC to RAC Data Guard&lt;/a&gt; described the process of setting up a Data Guard between two node RAC. This blog is about another way to achieve the duplication of primary database, and was inspired by the second method of duplication given in &lt;a href="http://asanga-pradeep.blogspot.com/2010/10/rac-to-single-instance-active-database.html"&gt;RAC to single instance active duplication.&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;It is assumed all the preparatory work has been carried as described in &lt;a href="http://asanga-pradeep.blogspot.com/2011/02/11gr2-rac-to-rac-data-guard.html"&gt;11gR2 RAC to RAC Data Guard&lt;/a&gt;. The steps below would replace step 13 in the above blog.&lt;br /&gt;&lt;br /&gt;1. Instead of creating a pfile with just db_name create a complete pfile that will suite the standby database when it is fully operational. This could be done by creating a pfile on the primary (once data gurad related initialization parameters are set) and modifying it to suite the standby. Below is the one used in this case. The key difference is for control_files only the diskgroup locations are set&lt;pre&gt;cat initrac11g2s1.ora&lt;br /&gt;rac11g2s1.__db_cache_size=373293056&lt;br /&gt;rac11g2s1.__java_pool_size=4194304&lt;br /&gt;rac11g2s1.__large_pool_size=4194304&lt;br /&gt;rac11g2s1.__oracle_base='/opt/app/oracle'#ORACLE_BASE set from environment&lt;br /&gt;rac11g2s1.__pga_aggregate_target=209715200&lt;br /&gt;rac11g2s1.__sga_target=633339904&lt;br /&gt;rac11g2s1.__shared_io_pool_size=0&lt;br /&gt;rac11g2s1.__shared_pool_size=239075328&lt;br /&gt;rac11g2s1.__streams_pool_size=0&lt;br /&gt;rac11g2s2.__db_cache_size=373293056&lt;br /&gt;rac11g2s2.__java_pool_size=4194304&lt;br /&gt;rac11g2s2.__large_pool_size=4194304&lt;br /&gt;rac11g2s2.__oracle_base='/opt/app/oracle'#ORACLE_BASE set from environment&lt;br /&gt;rac11g2s2.__pga_aggregate_target=209715200&lt;br /&gt;rac11g2s2.__sga_target=633339904&lt;br /&gt;rac11g2s2.__shared_io_pool_size=0&lt;br /&gt;rac11g2s2.__shared_pool_size=239075328&lt;br /&gt;rac11g2s2.__streams_pool_size=0&lt;br /&gt;*.audit_file_dest='/opt/app/oracle/admin/rac11g2s/adump'&lt;br /&gt;*.audit_trail='db'&lt;br /&gt;*.cluster_database=true&lt;br /&gt;*.compatible='11.2.0.0.0'&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;*.control_files='+DATA','+FLASH'&lt;/span&gt;&lt;br /&gt;*.db_block_size=8192&lt;br /&gt;*.db_create_file_dest='+DATA'&lt;br /&gt;*.db_domain='domain.net'&lt;br /&gt;*.db_file_name_convert='+DATA/rac11g2','+DATA/rac11g2s'&lt;br /&gt;*.db_name='rac11g2'&lt;br /&gt;*.db_recovery_file_dest='+FLASH'&lt;br /&gt;*.db_recovery_file_dest_size=9470738432&lt;br /&gt;*.db_unique_name='rac11g2s'&lt;br /&gt;*.diagnostic_dest='/opt/app/oracle'&lt;br /&gt;*.dispatchers='(PROTOCOL=TCP) (SERVICE=rac11g2sXDB)'&lt;br /&gt;rac11g2s1.fal_client='RAC11G2S1'&lt;br /&gt;rac1g2s22.fal_client='RAC11G2S2'&lt;br /&gt;*.fal_server='RAC11G21','RAC11G22'&lt;br /&gt;rac11g2s1.instance_number=1&lt;br /&gt;rac11g2s2.instance_number=2&lt;br /&gt;*.log_archive_config='dg_config=(rac11g2,rac11g2s)'&lt;br /&gt;*.log_archive_dest_1='service=RAC11G2 LGWR ASYNC NOAFFIRM max_failure=10 max_connections=5 reopen=180 valid_for=(online_logfiles,primary_role) db_uniq&lt;br /&gt;ue_name=rac11g2'&lt;br /&gt;*.log_archive_dest_10='location=use_db_recovery_file_dest valid_for=(all_logfiles,all_roles) db_unique_name=rac11g2s'&lt;br /&gt;*.log_archive_dest_state_1='enable'&lt;br /&gt;*.log_archive_dest_state_10='enable'&lt;br /&gt;*.log_archive_format='%t_%s_%r.dbf'&lt;br /&gt;*.log_archive_max_processes=5&lt;br /&gt;*.log_file_name_convert='+FLASH/rac11g2','+FLASH/rac11g2s','+DATA/rac11g2','+DATA/rac11g2s'&lt;br /&gt;*.open_cursors=300&lt;br /&gt;*.pga_aggregate_target=209715200&lt;br /&gt;*.processes=150&lt;br /&gt;*.remote_listener='racb-scan:1521'&lt;br /&gt;*.remote_login_passwordfile='exclusive'&lt;br /&gt;*.sga_target=631242752&lt;br /&gt;*.standby_file_management='AUTO'&lt;br /&gt;rac11g2s1.undo_tablespace='UNDOTBS1'&lt;br /&gt;rac11g2s2.undo_tablespace='UNDOTBS2'&lt;/pre&gt;2. The duplication command is now very simple as all the parameters have been set. The duplication command on step 17 in &lt;a href="http://asanga-pradeep.blogspot.com/2011/02/11gr2-rac-to-rac-data-guard.html"&gt;earlier&lt;/a&gt; blog could be replaced with below command. Also multiple rman channels could be enabled to take advantage of parallel file duplication.&lt;pre&gt;run {&lt;br /&gt;allocate channel ch1 device type disk connect 'sys/rac11g2db@rac11g21';&lt;br /&gt;allocate channel ch2 device type disk connect 'sys/rac11g2db@rac11g22';&lt;br /&gt;&lt;br /&gt;allocate auxiliary channel ch3 device type disk connect 'sys/rac11g2db@rac11g2s1';&lt;br /&gt;allocate auxiliary channel ch4 device type disk connect 'sys/rac11g2db@rac11g2s1';&lt;br /&gt;&lt;br /&gt;duplicate target database for standby from active database;&lt;br /&gt;&lt;br /&gt;release channel ch1;&lt;br /&gt;release channel ch2;&lt;br /&gt;release channel ch3;&lt;br /&gt;release channel ch4;&lt;br /&gt;&lt;br /&gt;}&lt;/pre&gt;Output of executing the above command is given below.&lt;pre&gt;rman target / auxiliary sys/rac11g2db@rac11g2s1&lt;br /&gt;&lt;br /&gt;Recovery Manager: Release 11.2.0.2.0 - Production on Thu Mar 10 11:39:52 2011&lt;br /&gt;Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.&lt;br /&gt;connected to target database: RAC11G2 (DBID=379668842)&lt;br /&gt;connected to auxiliary database: RAC11G2 (not mounted)&lt;br /&gt;&lt;br /&gt;RMAN&gt; run {&lt;br /&gt;2&gt; allocate channel ch1 device type disk connect 'sys/rac11g2db@rac11g21';&lt;br /&gt;3&gt; allocate channel ch2 device type disk connect 'sys/rac11g2db@rac11g22';&lt;br /&gt;4&gt;&lt;br /&gt;5&gt; allocate auxiliary channel ch3 device type disk connect 'sys/rac11g2db@rac11g2s1';&lt;br /&gt;6&gt; allocate auxiliary channel ch4 device type disk connect 'sys/rac11g2db@rac11g2s1';&lt;br /&gt;7&gt;&lt;br /&gt;8&gt; duplicate target database for standby from active database;&lt;br /&gt;9&gt;&lt;br /&gt;10&gt; release channel ch1;&lt;br /&gt;11&gt; release channel ch2;&lt;br /&gt;12&gt; release channel ch3;&lt;br /&gt;13&gt; release channel ch4;&lt;br /&gt;14&gt;&lt;br /&gt;15&gt; }&lt;br /&gt;&lt;br /&gt;using target database control file instead of recovery catalog&lt;br /&gt;allocated channel: ch1&lt;br /&gt;channel ch1: SID=156 instance=rac11g21 device type=DISK&lt;br /&gt;&lt;br /&gt;allocated channel: ch2&lt;br /&gt;channel ch2: SID=26 instance=rac11g22 device type=DISK&lt;br /&gt;&lt;br /&gt;allocated channel: ch3&lt;br /&gt;channel ch3: SID=141 instance=rac11g2s1 device type=DISK&lt;br /&gt;&lt;br /&gt;allocated channel: ch4&lt;br /&gt;channel ch4: SID=19 instance=rac11g2s1 device type=DISK&lt;br /&gt;&lt;br /&gt;Starting Duplicate Db at 10-MAR-11&lt;br /&gt;&lt;br /&gt;contents of Memory Script:&lt;br /&gt;{&lt;br /&gt;   backup as copy reuse&lt;br /&gt;   targetfile  '/opt/app/oracle/product/11.2.0/db_1/dbs/orapwrac11g21' auxiliary format&lt;br /&gt; '/opt/app/oracle/product/11.2.0/db_1/dbs/orapwrac11g2s1'   ;&lt;br /&gt;}&lt;br /&gt;executing Memory Script&lt;br /&gt;&lt;br /&gt;Starting backup at 10-MAR-11&lt;br /&gt;Finished backup at 10-MAR-11&lt;br /&gt;&lt;br /&gt;contents of Memory Script:&lt;br /&gt;{&lt;br /&gt;   backup as copy current controlfile for standby auxiliary format  '+DATA/rac11g2s/controlfile/current.257.745418483';&lt;br /&gt;   restore clone controlfile to  '+FLASH/rac11g2s/controlfile/current.257.745418483' from&lt;br /&gt; '+DATA/rac11g2s/controlfile/current.257.745418483';&lt;br /&gt;   sql clone "create spfile from memory";&lt;br /&gt;   shutdown clone immediate;&lt;br /&gt;   startup clone nomount;&lt;br /&gt;   sql clone "alter system set  control_files =&lt;br /&gt;  ''+DATA/rac11g2s/controlfile/current.257.745418483'', ''+FLASH/rac11g2s/controlfile/current.257.745418483'' comment=&lt;br /&gt; ''Set by RMAN'' scope=spfile";&lt;br /&gt;   shutdown clone immediate;&lt;br /&gt;   startup clone nomount;&lt;br /&gt;}&lt;br /&gt;executing Memory Script&lt;br /&gt;&lt;br /&gt;Starting backup at 10-MAR-11&lt;br /&gt;channel ch1: starting datafile copy&lt;br /&gt;copying standby control file&lt;br /&gt;output file name=/opt/app/oracle/product/11.2.0/db_1/dbs/snapcf_rac11g21.f tag=TAG20110310T114022 RECID=2 STAMP=745414824&lt;br /&gt;channel ch1: datafile copy complete, elapsed time: 00:00:07&lt;br /&gt;Finished backup at 10-MAR-11&lt;br /&gt;&lt;br /&gt;Starting restore at 10-MAR-11&lt;br /&gt;&lt;br /&gt;channel ch4: skipped, AUTOBACKUP already found&lt;br /&gt;channel ch3: copied control file copy&lt;br /&gt;Finished restore at 10-MAR-11&lt;br /&gt;&lt;br /&gt;sql statement: create spfile from memory&lt;br /&gt;&lt;br /&gt;Oracle instance shut down&lt;br /&gt;&lt;br /&gt;connected to auxiliary database (not started)&lt;br /&gt;Oracle instance started&lt;br /&gt;&lt;br /&gt;Total System Global Area     630501376 bytes&lt;br /&gt;&lt;br /&gt;Fixed Size                     2229120 bytes&lt;br /&gt;Variable Size                251661440 bytes&lt;br /&gt;Database Buffers             369098752 bytes&lt;br /&gt;Redo Buffers                   7512064 bytes&lt;br /&gt;allocated channel: ch3&lt;br /&gt;channel ch3: SID=18 instance=rac11g2s1 device type=DISK&lt;br /&gt;allocated channel: ch4&lt;br /&gt;channel ch4: SID=141 instance=rac11g2s1 device type=DISK&lt;br /&gt;&lt;br /&gt;sql statement: alter system set  control_files =   ''+DATA/rac11g2s/controlfile/current.257.745418483'', ''+FLASH/rac11g2s/controlfile/current.257.745418483'' comment= ''Set by RMAN'' scope=spfile&lt;br /&gt;&lt;br /&gt;Oracle instance shut down&lt;br /&gt;&lt;br /&gt;connected to auxiliary database (not started)&lt;br /&gt;Oracle instance started&lt;br /&gt;&lt;br /&gt;Total System Global Area     630501376 bytes&lt;br /&gt;&lt;br /&gt;Fixed Size                     2229120 bytes&lt;br /&gt;Variable Size                251661440 bytes&lt;br /&gt;Database Buffers             369098752 bytes&lt;br /&gt;Redo Buffers                   7512064 bytes&lt;br /&gt;allocated channel: ch3&lt;br /&gt;channel ch3: SID=16 instance=rac11g2s1 device type=DISK&lt;br /&gt;allocated channel: ch4&lt;br /&gt;channel ch4: SID=143 instance=rac11g2s1 device type=DISK&lt;br /&gt;&lt;br /&gt;contents of Memory Script:&lt;br /&gt;{&lt;br /&gt;   sql clone 'alter database mount standby database';&lt;br /&gt;}&lt;br /&gt;executing Memory Script&lt;br /&gt;&lt;br /&gt;sql statement: alter database mount standby database&lt;br /&gt;RMAN-05529: WARNING: DB_FILE_NAME_CONVERT resulted in invalid ASM names; names changed to disk group only.&lt;br /&gt;&lt;br /&gt;contents of Memory Script:&lt;br /&gt;{&lt;br /&gt;   set newname for tempfile  1 to&lt;br /&gt; "+data";&lt;br /&gt;   switch clone tempfile all;&lt;br /&gt;   set newname for datafile  1 to&lt;br /&gt; "+data";&lt;br /&gt;   set newname for datafile  2 to&lt;br /&gt; "+data";&lt;br /&gt;   set newname for datafile  3 to&lt;br /&gt; "+data";&lt;br /&gt;   set newname for datafile  4 to&lt;br /&gt; "+data";&lt;br /&gt;   set newname for datafile  5 to&lt;br /&gt; "+data";&lt;br /&gt;   backup as copy reuse&lt;br /&gt;   datafile  1 auxiliary format&lt;br /&gt; "+data"   datafile&lt;br /&gt; 2 auxiliary format&lt;br /&gt; "+data"   datafile&lt;br /&gt; 3 auxiliary format&lt;br /&gt; "+data"   datafile&lt;br /&gt; 4 auxiliary format&lt;br /&gt; "+data"   datafile&lt;br /&gt; 5 auxiliary format&lt;br /&gt; "+data"   ;&lt;br /&gt;   sql 'alter system archive log current';&lt;br /&gt;}&lt;br /&gt;executing Memory Script&lt;br /&gt;&lt;br /&gt;executing command: SET NEWNAME&lt;br /&gt;&lt;br /&gt;renamed tempfile 1 to +data in control file&lt;br /&gt;&lt;br /&gt;executing command: SET NEWNAME&lt;br /&gt;&lt;br /&gt;executing command: SET NEWNAME&lt;br /&gt;&lt;br /&gt;executing command: SET NEWNAME&lt;br /&gt;&lt;br /&gt;executing command: SET NEWNAME&lt;br /&gt;&lt;br /&gt;executing command: SET NEWNAME&lt;br /&gt;&lt;br /&gt;Starting backup at 10-MAR-11&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;channel ch1&lt;/span&gt;: starting datafile copy&lt;br /&gt;input datafile file number=00002 name=+DATA/rac11g2/datafile/sysaux.257.740770047&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;channel ch2&lt;/span&gt;: starting datafile copy&lt;br /&gt;input datafile file number=00001 name=+DATA/rac11g2/datafile/system.256.740770045&lt;br /&gt;output file name=+DATA/rac11g2s/datafile/system.264.745418537 tag=TAG20110310T114116&lt;br /&gt;channel ch2: datafile copy complete, elapsed time: 00:02:27&lt;br /&gt;channel ch2: starting datafile copy&lt;br /&gt;input datafile file number=00003 name=+DATA/rac11g2/datafile/undotbs1.258.740770049&lt;br /&gt;output file name=+DATA/rac11g2s/datafile/sysaux.275.745418537 tag=TAG20110310T114116&lt;br /&gt;channel ch1: datafile copy complete, elapsed time: 00:02:34&lt;br /&gt;channel ch1: starting datafile copy&lt;br /&gt;input datafile file number=00005 name=+DATA/rac11g2/datafile/undotbs2.264.740770355&lt;br /&gt;output file name=+DATA/rac11g2s/datafile/undotbs1.274.745418685 tag=TAG20110310T114116&lt;br /&gt;channel ch2: datafile copy complete, elapsed time: 00:00:35&lt;br /&gt;channel ch2: starting datafile copy&lt;br /&gt;input datafile file number=00004 name=+DATA/rac11g2/datafile/users.259.740770049&lt;br /&gt;output file name=+DATA/rac11g2s/datafile/undotbs2.273.745418693 tag=TAG20110310T114116&lt;br /&gt;channel ch1: datafile copy complete, elapsed time: 00:00:31&lt;br /&gt;output file name=+DATA/rac11g2s/datafile/users.272.745418721 tag=TAG20110310T114116&lt;br /&gt;channel ch2: datafile copy complete, elapsed time: 00:00:03&lt;br /&gt;Finished backup at 10-MAR-11&lt;br /&gt;&lt;br /&gt;sql statement: alter system archive log current&lt;br /&gt;&lt;br /&gt;contents of Memory Script:&lt;br /&gt;{&lt;br /&gt;   switch clone datafile all;&lt;br /&gt;}&lt;br /&gt;executing Memory Script&lt;br /&gt;&lt;br /&gt;datafile 1 switched to datafile copy&lt;br /&gt;input datafile copy RECID=2 STAMP=745418726 file name=+DATA/rac11g2s/datafile/system.264.745418537&lt;br /&gt;datafile 2 switched to datafile copy&lt;br /&gt;input datafile copy RECID=3 STAMP=745418726 file name=+DATA/rac11g2s/datafile/sysaux.275.745418537&lt;br /&gt;datafile 3 switched to datafile copy&lt;br /&gt;input datafile copy RECID=4 STAMP=745418726 file name=+DATA/rac11g2s/datafile/undotbs1.274.745418685&lt;br /&gt;datafile 4 switched to datafile copy&lt;br /&gt;input datafile copy RECID=5 STAMP=745418726 file name=+DATA/rac11g2s/datafile/users.272.745418721&lt;br /&gt;datafile 5 switched to datafile copy&lt;br /&gt;input datafile copy RECID=6 STAMP=745418726 file name=+DATA/rac11g2s/datafile/undotbs2.273.745418693&lt;br /&gt;Finished Duplicate Db at 10-MAR-11&lt;br /&gt;&lt;br /&gt;released channel: ch1&lt;br /&gt;&lt;br /&gt;released channel: ch2&lt;br /&gt;&lt;br /&gt;released channel: ch3&lt;br /&gt;&lt;br /&gt;released channel: ch4&lt;/pre&gt;3. Since spfile is not copied from the primary the spfile generated during the duplication won't have any primary db related initializaton parametrs but it will have all the hidden parameters listed same as in rac to &lt;a href="http://asanga-pradeep.blogspot.com/2010/10/rac-to-single-instance-active-database.html"&gt;single instance duplication&lt;/a&gt;. Create a pfile from this genearted spfile and copy the control_files entry added by rman during duplication to initial pfile (initrac11g2s1.ora). During the duplication the control_files entry would have the full OMF path to the controlfiles.&lt;pre&gt;*.cluster_database=TRUE&lt;br /&gt;*.compatible='11.2.0.0.0'&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;*.control_files='+DATA/rac11g2s/controlfile/current.257.745423373','+FLASH/rac11g2s/controlfile/current.257.745423373'#Set by RMAN&lt;/span&gt;&lt;br /&gt;*.core_dump_dest='/opt/app/oracle/diag/rdbms/rac11g2s/rac11g2s1/cdump'&lt;br /&gt;*.db_block_size=8192&lt;/pre&gt;4. Once the above control_files line is copied to the initial pfile (initrac11g2s1.ora) shutdown the database and start the database in mount mode using this pfile.&lt;pre&gt;shutdown immediate;&lt;br /&gt;startup mount pfile='?/dbs/initrac11g2s1.ora';&lt;/pre&gt;5. Create the spfile for all instances with &lt;pre&gt;SQL&gt; create spfile='+DATA/rac11g2s/spfilerac11g2s.ora' from pfile='/opt/app/oracle/product/11.2.0/db_1/dbs/initrac11g2s1.ora';&lt;/pre&gt;For making the standby database cluster aware continue from step 22 onwards in the &lt;a href="http://asanga-pradeep.blogspot.com/2011/02/11gr2-rac-to-rac-data-guard.html"&gt;earlier blog&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2414933436751311863-4836416470980009154?l=asanga-pradeep.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/4836416470980009154'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/4836416470980009154'/><link rel='alternate' type='text/html' href='http://asanga-pradeep.blogspot.com/2011/03/11gr2-rac-to-rac-data-guard-2.html' title='11gR2 RAC to RAC Data Guard - 2'/><author><name>Asanga</name><uri>http://www.blogger.com/profile/06917616787415349832</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_90fhbVRwXDU/TECqZgHU0eI/AAAAAAAAAIo/hwI2BMzwDcI/S220/profile.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-2414933436751311863.post-6078927248859875421</id><published>2011-03-09T05:37:00.000-08:00</published><updated>2011-12-03T13:07:58.071-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='rac'/><category scheme='http://www.blogger.com/atom/ns#' term='grid infrastructure'/><category scheme='http://www.blogger.com/atom/ns#' term='11gR2'/><category scheme='http://www.blogger.com/atom/ns#' term='cluster'/><category scheme='http://www.blogger.com/atom/ns#' term='11.2.0.2'/><category scheme='http://www.blogger.com/atom/ns#' term='11.2.0.1'/><category scheme='http://www.blogger.com/atom/ns#' term='upgrade'/><title type='text'>Upgrading from 11.2.0.1 to 11.2.0.2</title><content type='html'>&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&lt;span style="font-size: small;"&gt;Updated 14th October 2011 :&lt;/span&gt;&lt;a href="http://asanga-pradeep.blogspot.com/2011/10/upgrading-from-11201-to-11202-part-2.html"&gt;&lt;span style="font-size: small;"&gt; &lt;/span&gt;More metalink notes&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Unlike patchsets of previous releases 11.2 patchsets are full releases, which means they could be used for a fresh installation (no need to go from 11.2.0.1 to 11.2.0.2).&lt;br /&gt;Following text is from various Oracle documentations.&lt;br /&gt;&lt;br /&gt;"&lt;span style="font-style: italic;"&gt;Starting with the 11.2.0.2 patch set, Oracle Database patch sets are full installations of the Oracle Database software. This means that you do not need to install Oracle Database 11g Release 2 (11.2.0.1) before installing Oracle Database 11g Release 2 (11.2.0.2).&lt;br /&gt;&lt;br /&gt;Note the following changes with the new patch set packaging:&lt;br /&gt;&lt;br /&gt;New installations consist of installing the most recent patch set, rather than  installing a base release and then upgrading to a patch release.&lt;br /&gt;&lt;br /&gt;Direct upgrades from previous releases to the most recent patch set are supported.&lt;br /&gt;&lt;br /&gt;Out-of-place patch set upgrades recommended, in which you install the patch set into a new, separate Oracle home. In-place upgrades are supported, but not recommended.&lt;br /&gt;&lt;br /&gt;Oracle Clusterware and Oracle ASM upgrades are always out-of-place upgrades. With 11g release 2 (11.2), you cannot perform an in-place upgrade of Oracle Clusterware and Oracle ASM to existing homes.&lt;br /&gt;&lt;br /&gt;Please note that 11.2 Patch Sets 11.2.0.2 and higher are supplied as full releases. See Note:1189783.1 for details. Also note that 11.2.0.2 software was reissued on 17th Nov 2010 as described in Note:1266978.1 (1179474.1)&lt;/span&gt;"&lt;br /&gt;&lt;br /&gt;Patchset comes in serveral bundles and don't have to download all of them unless required.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Oracle Database (includes Oracle Database and Oracle RAC) Note: you must download both zip files to install Oracle Database.&lt;br /&gt;p10098816_112020_platform_1of7.zip&lt;br /&gt;p10098816_112020_platform_2of7.zip&lt;br /&gt;&lt;br /&gt;Oracle Grid Infrastructure (includes Oracle ASM, Oracle Clusterware, and Oracle Restart)&lt;br /&gt;p10098816_112020_platform_3of7.zip&lt;br /&gt;&lt;br /&gt;Oracle Database Client&lt;br /&gt;p10098816_112020_platform_4of7.zip&lt;br /&gt;&lt;br /&gt;Oracle Gateways&lt;br /&gt;p10098816_112020_platform_5of7.zip&lt;br /&gt;&lt;br /&gt;Oracle Examples&lt;br /&gt;p10098816_112020_platform_6of7.zip&lt;br /&gt;&lt;br /&gt;Deinstall&lt;br /&gt;p10098816_112020_platform_7of7.zip&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Another change is that patchsets don't have a readme.html or similar document with how to apply the patchset (which was avaibale with previous releases). For upgrade information Oracle (GI / Database) Administrator Guides must be refered. Admin Guide states "&lt;span style="font-style: italic;"&gt;To upgrade existing 11.2.0.1 Oracle Grid Infrastructure installations to Oracle Grid Infrastructure 11.2.0.2 using a rolling upgrade, you must first do one of the following, depending on your platform:&lt;br /&gt;&lt;br /&gt;Patch the release 11.2.0.1 Oracle Grid Infrastructure home with the 9413827 patch, and install Oracle Grid Infrastructure Patchset Update 1 (GI PSU1). When you apply patch 9413827, it shows up in the inventory as GIPSU2 bug 9655006.&lt;br /&gt;&lt;br /&gt;Install Oracle Grid Infrastructure Patchset Update 2 (GI PSU2), which includes the 9413827 patch.&lt;/span&gt;"&lt;br /&gt;&lt;br /&gt;Failure to apply these patches could result in number of issues and these have been listed in following metalink notes.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Bug 9413827 - CRS rolling upgrade from 11.2.0.1 to 11.2.0.2 fails with OCR on ASM [ID 9413827.8]&lt;br /&gt;&lt;br /&gt;Bug 10036834 - Linux Platforms: Patches not found upgrading Grid Infrastructure from 11.2.0.1 to 11.2.0.2 [ID 10036834.8]&lt;br /&gt;&lt;br /&gt;Pre-requsite for 11.2.0.1 to 11.2.0.2 ASM Rolling Upgrade [ID 1274629.1]&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;If "Patch 9655006 - 11.2.0.1.2 for Grid Infrastructure (GI) Patch Set Update" is applied on the GI home then applying 9413827 or 9706490 (as per ID 1274629.1) will always try to rollback the 9655006.With 9413827 &lt;br /&gt;&lt;pre&gt;opatch napply -local -oh $CRS_HOME -id 9413827&lt;br /&gt;..&lt;br /&gt;..&lt;br /&gt;Conflicts/Supersets for each patch are:&lt;br /&gt;&lt;br /&gt;Patch : 9413827&lt;br /&gt;&lt;br /&gt;Bug Superset of 9655006&lt;br /&gt;Super set bugs are:&lt;br /&gt;9655006,  9778840,  9343627,  9783609,  9262748,  9262722&lt;br /&gt;&lt;br /&gt;Patches [   9655006 ] will be rolled back.&lt;/pre&gt;This is a conflict with the information given on 10036834.8. With 9706490&lt;br /&gt;&lt;pre&gt;opatch napply -local -oh  $CRS_HOME -id 9706490&lt;br /&gt;..&lt;br /&gt;..&lt;br /&gt;Conflicts/Supersets for each patch are:&lt;br /&gt;&lt;br /&gt;Patch : 9706490&lt;br /&gt;&lt;br /&gt;Bug Superset of 9655006&lt;br /&gt;Super set bugs are:&lt;br /&gt;9655006,  9778840,  9343627,  9783609,  9262748,  9262722&lt;br /&gt;&lt;br /&gt;Patches [   9655006 ] will be rolled back.&lt;/pre&gt;For this upgrade the base installation of 11.2.0.1 was applied with the GI PSU 2 (Patch 9655006 - 11.2.0.1.2 for Grid Infrastructure (GI) Patch Set Update) and then 9706490 and finally 11.2.0.1.4 Patch Set Update was applied to the Oracle Home (Not GI Home). Steps below are from this point onwards.&lt;br /&gt;&lt;br /&gt;Unzip the grid infrastructure patchset and execute runInstaller. Since this is an out of place upgrade the current cluster could be up and running. &lt;br /&gt;&lt;a href="http://2.bp.blogspot.com/-Iy1hJgBVxmc/TXeOJ77BpGI/AAAAAAAAAOw/AsmTEL_LyjU/s1600/1.jpg"&gt;&lt;img alt="" border="0" id="BLOGGER_PHOTO_ID_5582086564504249442" src="http://2.bp.blogspot.com/-Iy1hJgBVxmc/TXeOJ77BpGI/AAAAAAAAAOw/AsmTEL_LyjU/s320/1.jpg" style="cursor: hand; cursor: pointer; display: block; height: 240px; margin: 0px auto 10px; text-align: center; width: 320px;" /&gt;&lt;/a&gt;&lt;br /&gt;On the second step select upgrade GI and ASM.&lt;a href="http://3.bp.blogspot.com/-MCn973ylhn8/TXeOWXa82CI/AAAAAAAAAO4/vjCl-ZD9Zug/s1600/2.jpg"&gt;&lt;img alt="" border="0" id="BLOGGER_PHOTO_ID_5582086778044340258" src="http://3.bp.blogspot.com/-MCn973ylhn8/TXeOWXa82CI/AAAAAAAAAO4/vjCl-ZD9Zug/s320/2.jpg" style="cursor: hand; cursor: pointer; display: block; height: 239px; margin: 0px auto 10px; text-align: center; width: 320px;" /&gt;&lt;/a&gt;&lt;br /&gt;Select the nodes for upgrade, for this test it's a single node cluster&lt;br /&gt;&lt;a href="http://3.bp.blogspot.com/-A3dT-6qjbG4/TXePFWIUg1I/AAAAAAAAAPA/0F0363OtXU8/s1600/3.jpg"&gt;&lt;img alt="" border="0" id="BLOGGER_PHOTO_ID_5582087585151615826" src="http://3.bp.blogspot.com/-A3dT-6qjbG4/TXePFWIUg1I/AAAAAAAAAPA/0F0363OtXU8/s320/3.jpg" style="cursor: hand; cursor: pointer; display: block; height: 240px; margin: 0px auto 10px; text-align: center; width: 320px;" /&gt;&lt;/a&gt;&lt;br /&gt;Select a new location to install the patchset.&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/-MoA8NUovXQ0/TXePPYDxHKI/AAAAAAAAAPI/YiXUvy5qlOI/s1600/3.1.jpg"&gt;&lt;img alt="" border="0" id="BLOGGER_PHOTO_ID_5582087757468081314" src="http://4.bp.blogspot.com/-MoA8NUovXQ0/TXePPYDxHKI/AAAAAAAAAPI/YiXUvy5qlOI/s320/3.1.jpg" style="cursor: hand; cursor: pointer; display: block; height: 242px; margin: 0px auto 10px; text-align: center; width: 320px;" /&gt;&lt;/a&gt;&lt;br /&gt;Fix any pre-req warning and start the installation&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/-_XdSPymYPfE/TXeQN8u7wxI/AAAAAAAAAPQ/Y_sBcBQP1KA/s1600/4.jpg"&gt;&lt;img alt="" border="0" id="BLOGGER_PHOTO_ID_5582088832464700178" src="http://4.bp.blogspot.com/-_XdSPymYPfE/TXeQN8u7wxI/AAAAAAAAAPQ/Y_sBcBQP1KA/s320/4.jpg" style="cursor: hand; cursor: pointer; display: block; height: 239px; margin: 0px auto 10px; text-align: center; width: 320px;" /&gt;&lt;/a&gt;&lt;br /&gt;After the installation is complete rootupgrade script needs to be run on the nodes involved. Up until this the cluster was running and during rootupgrade it will be brought down (via the rootupgrade script, no manual shutdown is required) and backup again once the upgrade is complete.&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/-5AqbVsLtbhg/TXeQqUdG5DI/AAAAAAAAAPY/pwAUL5sN8WI/s1600/5.jpg"&gt;&lt;img alt="" border="0" id="BLOGGER_PHOTO_ID_5582089319868720178" src="http://1.bp.blogspot.com/-5AqbVsLtbhg/TXeQqUdG5DI/AAAAAAAAAPY/pwAUL5sN8WI/s320/5.jpg" style="cursor: hand; cursor: pointer; display: block; height: 240px; margin: 0px auto 10px; text-align: center; width: 320px;" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;pre&gt;/flash/11.2.0/grid11.2.0.2/rootupgrade.sh&lt;br /&gt;Running Oracle 11g root script...&lt;br /&gt;&lt;br /&gt;The following environment variables are set as:&lt;br /&gt;ORACLE_OWNER= oracle&lt;br /&gt;ORACLE_HOME=  /flash/11.2.0/grid11.2.0.2&lt;br /&gt;&lt;br /&gt;Enter the full pathname of the local bin directory: [/usr/local/bin]:&lt;br /&gt;The contents of "dbhome" have not changed. No need to overwrite.&lt;br /&gt;The file "oraenv" already exists in /usr/local/bin.  Overwrite it? (y/n)&lt;br /&gt;[n]: y&lt;br /&gt;Copying oraenv to /usr/local/bin ...&lt;br /&gt;The file "coraenv" already exists in /usr/local/bin.  Overwrite it? (y/n)&lt;br /&gt;[n]: y&lt;br /&gt;Copying coraenv to /usr/local/bin ...&lt;br /&gt;&lt;br /&gt;Entries will be added to the /etc/oratab file as needed by&lt;br /&gt;Database Configuration Assistant when a database is created&lt;br /&gt;Finished running generic part of root script.&lt;br /&gt;Now product-specific root actions will be performed.&lt;br /&gt;Using configuration parameter file: /flash/11.2.0/grid11.2.0.2/crs/install/crsconfig_params&lt;br /&gt;Creating trace directory&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Failed to add (property/value):('OLD_OCR_ID/'-1') for checkpoint:ROOTCRS_OLDHOMEINFO.Error code is 256&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;ASM upgrade has started on first node.&lt;br /&gt;&lt;br /&gt;CRS-2791: Starting shutdown of Oracle High Availability Services-managed resources on 'hpc3'&lt;br /&gt;CRS-2673: Attempting to stop 'ora.crsd' on 'hpc3'&lt;br /&gt;CRS-2790: Starting shutdown of Cluster Ready Services-managed resources on 'hpc3'&lt;br /&gt;CRS-2673: Attempting to stop 'ora.LISTENER.lsnr' on 'hpc3'&lt;br /&gt;CRS-2673: Attempting to stop 'ora.LISTENER_SCAN1.lsnr' on 'hpc3'&lt;br /&gt;CRS-2673: Attempting to stop 'ora.CLUSTERDG.dg' on 'hpc3'&lt;br /&gt;CRS-2673: Attempting to stop 'ora.clusdb.db' on 'hpc3'&lt;br /&gt;CRS-2673: Attempting to stop 'ora.registry.acfs' on 'hpc3'&lt;br /&gt;CRS-2677: Stop of 'ora.LISTENER.lsnr' on 'hpc3' succeeded&lt;br /&gt;CRS-2673: Attempting to stop 'ora.hpc3.vip' on 'hpc3'&lt;br /&gt;CRS-2677: Stop of 'ora.LISTENER_SCAN1.lsnr' on 'hpc3' succeeded&lt;br /&gt;CRS-2673: Attempting to stop 'ora.scan1.vip' on 'hpc3'&lt;br /&gt;CRS-2677: Stop of 'ora.hpc3.vip' on 'hpc3' succeeded&lt;br /&gt;CRS-2677: Stop of 'ora.scan1.vip' on 'hpc3' succeeded&lt;br /&gt;CRS-2677: Stop of 'ora.registry.acfs' on 'hpc3' succeeded&lt;br /&gt;CRS-2677: Stop of 'ora.CLUSTERDG.dg' on 'hpc3' succeeded&lt;br /&gt;CRS-2677: Stop of 'ora.clusdb.db' on 'hpc3' succeeded&lt;br /&gt;CRS-2673: Attempting to stop 'ora.DATA.dg' on 'hpc3'&lt;br /&gt;CRS-2673: Attempting to stop 'ora.FLASH.dg' on 'hpc3'&lt;br /&gt;CRS-2677: Stop of 'ora.DATA.dg' on 'hpc3' succeeded&lt;br /&gt;CRS-2677: Stop of 'ora.FLASH.dg' on 'hpc3' succeeded&lt;br /&gt;CRS-2673: Attempting to stop 'ora.asm' on 'hpc3'&lt;br /&gt;CRS-2677: Stop of 'ora.asm' on 'hpc3' succeeded&lt;br /&gt;CRS-2673: Attempting to stop 'ora.ons' on 'hpc3'&lt;br /&gt;CRS-2673: Attempting to stop 'ora.eons' on 'hpc3'&lt;br /&gt;CRS-2677: Stop of 'ora.ons' on 'hpc3' succeeded&lt;br /&gt;CRS-2673: Attempting to stop 'ora.net1.network' on 'hpc3'&lt;br /&gt;CRS-2677: Stop of 'ora.net1.network' on 'hpc3' succeeded&lt;br /&gt;CRS-2677: Stop of 'ora.eons' on 'hpc3' succeeded&lt;br /&gt;CRS-2792: Shutdown of Cluster Ready Services-managed resources on 'hpc3' has completed&lt;br /&gt;CRS-2677: Stop of 'ora.crsd' on 'hpc3' succeeded&lt;br /&gt;CRS-2673: Attempting to stop 'ora.cssdmonitor' on 'hpc3'&lt;br /&gt;CRS-2673: Attempting to stop 'ora.ctssd' on 'hpc3'&lt;br /&gt;CRS-2673: Attempting to stop 'ora.evmd' on 'hpc3'&lt;br /&gt;CRS-2673: Attempting to stop 'ora.asm' on 'hpc3'&lt;br /&gt;CRS-2673: Attempting to stop 'ora.drivers.acfs' on 'hpc3'&lt;br /&gt;CRS-2673: Attempting to stop 'ora.mdnsd' on 'hpc3'&lt;br /&gt;CRS-2677: Stop of 'ora.cssdmonitor' on 'hpc3' succeeded&lt;br /&gt;CRS-2677: Stop of 'ora.evmd' on 'hpc3' succeeded&lt;br /&gt;CRS-2677: Stop of 'ora.mdnsd' on 'hpc3' succeeded&lt;br /&gt;CRS-2677: Stop of 'ora.ctssd' on 'hpc3' succeeded&lt;br /&gt;CRS-2677: Stop of 'ora.drivers.acfs' on 'hpc3' succeeded&lt;br /&gt;CRS-2677: Stop of 'ora.asm' on 'hpc3' succeeded&lt;br /&gt;CRS-2673: Attempting to stop 'ora.cssd' on 'hpc3'&lt;br /&gt;CRS-2677: Stop of 'ora.cssd' on 'hpc3' succeeded&lt;br /&gt;CRS-2673: Attempting to stop 'ora.gpnpd' on 'hpc3'&lt;br /&gt;CRS-2673: Attempting to stop 'ora.diskmon' on 'hpc3'&lt;br /&gt;CRS-2677: Stop of 'ora.gpnpd' on 'hpc3' succeeded&lt;br /&gt;CRS-2673: Attempting to stop 'ora.gipcd' on 'hpc3'&lt;br /&gt;CRS-2677: Stop of 'ora.gipcd' on 'hpc3' succeeded&lt;br /&gt;CRS-2677: Stop of 'ora.diskmon' on 'hpc3' succeeded&lt;br /&gt;CRS-2793: Shutdown of Oracle High Availability Services-managed resources on 'hpc3' has completed&lt;br /&gt;CRS-4133: Oracle High Availability Services has been stopped.&lt;br /&gt;Successfully deleted 1 keys from OCR.&lt;br /&gt;Creating OCR keys for user 'root', privgrp 'root'..&lt;br /&gt;Operation successful.&lt;br /&gt;OLR initialization - successful&lt;br /&gt;Adding daemon to inittab&lt;br /&gt;ACFS-9200: Supported&lt;br /&gt;ACFS-9300: ADVM/ACFS distribution files found.&lt;br /&gt;ACFS-9312: Existing ADVM/ACFS installation detected.&lt;br /&gt;ACFS-9314: Removing previous ADVM/ACFS installation.&lt;br /&gt;ACFS-9315: Previous ADVM/ACFS components successfully removed.&lt;br /&gt;ACFS-9307: Installing requested ADVM/ACFS software.&lt;br /&gt;ACFS-9308: Loading installed ADVM/ACFS drivers.&lt;br /&gt;ACFS-9321: Creating udev for ADVM/ACFS.&lt;br /&gt;ACFS-9323: Creating module dependencies - this may take some time.&lt;br /&gt;ACFS-9327: Verifying ADVM/ACFS devices.&lt;br /&gt;ACFS-9309: ADVM/ACFS installation correctness verified.&lt;br /&gt;clscfg: EXISTING configuration version 5 detected.&lt;br /&gt;clscfg: version 5 is 11g Release 2.&lt;br /&gt;Successfully accumulated necessary OCR keys.&lt;br /&gt;Creating OCR keys for user 'root', privgrp 'root'..&lt;br /&gt;Operation successful.&lt;br /&gt;Started to upgrade the Oracle Clusterware. This operation may take a few minutes.&lt;br /&gt;Started to upgrade the CSS.&lt;br /&gt;Started to upgrade the CRS.&lt;br /&gt;The CRS was successfully upgraded.&lt;br /&gt;Oracle Clusterware operating version was successfully set to 11.2.0.2.0&lt;br /&gt;ASM upgrade has finished on last node.&lt;br /&gt;&lt;br /&gt;Preparing packages for installation...&lt;br /&gt;cvuqdisk-1.0.9-1&lt;br /&gt;Configure Oracle Grid Infrastructure for a Cluster ... succeeded&lt;/pre&gt;The error line &lt;br /&gt;&lt;pre&gt;Failed to add (property/value):('OLD_OCR_ID/'-1') for checkpoint:ROOTCRS_OLDHOMEINFO.Error code is 256&lt;/pre&gt;is similar to part of the error message give on 10036834.8 but after a SR was raised Oracle informed this is due to "&lt;span style="font-style: italic;"&gt;&lt;span style="font-weight: bold;"&gt;Bug 10056593: FAIL TO ADD OLD_OCR_ID PROPERTY FOR ROOTCRS_OLDHOMEINFO&lt;/span&gt;. As per this bug the message can be ignored. You can continue with the installation.&lt;/span&gt;"&lt;br /&gt;&lt;br /&gt;Following commands shows that GI has been upgraded to 11.2.0.2&lt;br /&gt;&lt;pre&gt;crsctl query crs softwareversion&lt;br /&gt;Oracle Clusterware version on node [hpc3] is [11.2.0.2.0]&lt;br /&gt;&lt;br /&gt;crsctl query crs releaseversion&lt;br /&gt;Oracle High Availability Services release version on the local node is [11.2.0.2.0]&lt;br /&gt;&lt;br /&gt;crsctl query crs activeversion&lt;br /&gt;Oracle Clusterware active version on the cluster is [11.2.0.2.0]&lt;/pre&gt;It is important that if GI Home has been set on environment variables and PATH variable then to change it to point to new home, if not commands would be running out of the "old" GI Home.&lt;br /&gt;&lt;br /&gt;Check the inventory.xml to see if the new GI Home has been set properly. Before upgrade&lt;br /&gt;&lt;pre&gt;&amp;lt;HOME NAME="Ora11g_gridinfrahome1" LOC="/flash/11.2.0/grid11.2.0.1" TYPE="O" IDX="1" CRS="true"&amp;gt;&lt;br /&gt;&amp;lt;NODE_LIST&amp;gt;&lt;br /&gt;&amp;lt;NODE NAME="hpc3"/&amp;gt;&lt;br /&gt;&amp;lt;/NODE_LIST&amp;gt;&lt;br /&gt;&amp;lt;/HOME&amp;gt;&lt;/pre&gt;After upgrade&lt;br /&gt;&lt;pre&gt;&amp;lt;HOME NAME="Ora11g_gridinfrahome1" LOC="/flash/11.2.0/grid11.2.0.2" TYPE="O" IDX="1" CRS="true"&amp;gt;&lt;br /&gt;&amp;lt;NODE_LIST&amp;gt;&lt;br /&gt;&amp;lt;NODE NAME="hpc3"/&amp;gt;&lt;br /&gt;&amp;lt;/NODE_LIST&amp;gt;&lt;br /&gt;&amp;lt;/HOME&amp;gt;&lt;/pre&gt;&lt;script type="text/javascript"&gt;&lt;!--google_ad_client = "ca-pub-5510817526739610";/* leadborad */google_ad_slot = "9860710817";google_ad_width = 728;google_ad_height = 90;//--&gt;&lt;/script&gt;&lt;br /&gt;&lt;script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;&lt;/script&gt;&lt;br /&gt;&lt;br /&gt;Next upgrade the Oracle Home and the database. With 11.2 patchset this could be done in one step where software is installed and at the end dbua will get run from the same session (no need to manually run dbua). Same as GI Home it is better to have a out of place upgrade for Oralce Home, trying to install on the same location would result in the following.&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/-53IKPgebK2Q/TXeTOnpYd4I/AAAAAAAAAPg/CpPfUqUJEj0/s1600/7.jpg"&gt;&lt;img alt="" border="0" id="BLOGGER_PHOTO_ID_5582092142519023490" src="http://4.bp.blogspot.com/-53IKPgebK2Q/TXeTOnpYd4I/AAAAAAAAAPg/CpPfUqUJEj0/s320/7.jpg" style="cursor: hand; cursor: pointer; display: block; height: 239px; margin: 0px auto 10px; text-align: center; width: 320px;" /&gt;&lt;/a&gt;&lt;br /&gt;After running runInstaller from database patchset home, select upgrade existing database option&lt;br /&gt;&lt;a href="http://3.bp.blogspot.com/-wQf1VW7JmAw/TXeTjQeE4nI/AAAAAAAAAPo/3Zdti9SRfX8/s1600/db1.jpg"&gt;&lt;img alt="" border="0" id="BLOGGER_PHOTO_ID_5582092497074840178" src="http://3.bp.blogspot.com/-wQf1VW7JmAw/TXeTjQeE4nI/AAAAAAAAAPo/3Zdti9SRfX8/s320/db1.jpg" style="cursor: hand; cursor: pointer; display: block; height: 240px; margin: 0px auto 10px; text-align: center; width: 320px;" /&gt;&lt;/a&gt;&lt;br /&gt;Select the nodes involved and start the install.&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/-JdblNgdj5Ac/TXeT1Di2l0I/AAAAAAAAAPw/9vYmCbeRfd0/s1600/db2.jpg"&gt;&lt;img alt="" border="0" id="BLOGGER_PHOTO_ID_5582092802842859330" src="http://4.bp.blogspot.com/-JdblNgdj5Ac/TXeT1Di2l0I/AAAAAAAAAPw/9vYmCbeRfd0/s320/db2.jpg" style="cursor: hand; cursor: pointer; display: block; height: 237px; margin: 0px auto 10px; text-align: center; width: 320px;" /&gt;&lt;/a&gt;&lt;br /&gt;After the software has been installed (roughly around 86% mark on the progress bar) dbua would get run prompting to upgrade the database. This will have in addition to the usual option, an option to upgrade the time zone data, which will upgrade the time zone from 11 to 14. &lt;br /&gt;Below is the summary before and after the upgrade.&lt;br /&gt;&lt;a href="http://2.bp.blogspot.com/-za9xl4otUug/TXeUdpGa3bI/AAAAAAAAAP4/eKiuCn5JeoY/s1600/db3.jpg"&gt;&lt;img alt="" border="0" id="BLOGGER_PHOTO_ID_5582093500118916530" src="http://2.bp.blogspot.com/-za9xl4otUug/TXeUdpGa3bI/AAAAAAAAAP4/eKiuCn5JeoY/s320/db3.jpg" style="cursor: hand; cursor: pointer; display: block; height: 241px; margin: 0px auto 10px; text-align: center; width: 320px;" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/-5aE0FKQdHlk/TXeUi0r0rbI/AAAAAAAAAQA/XA-l0fSlD-8/s1600/db4.jpg"&gt;&lt;img alt="" border="0" id="BLOGGER_PHOTO_ID_5582093589127933362" src="http://1.bp.blogspot.com/-5aE0FKQdHlk/TXeUi0r0rbI/AAAAAAAAAQA/XA-l0fSlD-8/s320/db4.jpg" style="cursor: hand; cursor: pointer; display: block; height: 241px; margin: 0px auto 10px; text-align: center; width: 320px;" /&gt;&lt;/a&gt;&lt;br /&gt;Once the upgrade is complete the runInstaller will complete and concludes the upgrade process. As with GI Home set any environment variables to new Oracle Home.&lt;br /&gt;&lt;br /&gt;Now it is possible to deinstall the "old" GI Home and Oracle Home. Either the deinstall within those Homes or an external deinstall installation (unzipping p10098816_112020_platform_7of7.zip) could be used for this.&lt;br /&gt;&lt;pre&gt;cd /opt/app/oracle/product/11.2.0/clusdb_1/deinstall&lt;br /&gt;unset ORACLE_HOME&lt;br /&gt;./deinstall -local&lt;br /&gt;..&lt;br /&gt;Checking for existence of the Oracle home location /opt/app/oracle/product/11.2.0/clusdb_1&lt;br /&gt;Oracle Home type selected for de-install is: RACDB&lt;br /&gt;Oracle Base selected for de-install is: /opt/app/oracle&lt;br /&gt;Checking for existence of central inventory location /opt/app/oraInventory&lt;br /&gt;Checking for existence of the Oracle Grid Infrastructure home /opt/app/oracle/product/11.2.0/clusdb_1&lt;br /&gt;The following nodes are part of this cluster: hpc3&lt;br /&gt;..&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Specify the list of database names that are configured in this Oracle home []:&lt;/span&gt;&lt;br /&gt;Database Check Configuration END&lt;br /&gt;..&lt;br /&gt;Oracle Grid Infrastructure Home is: /opt/app/oracle/product/11.2.0/clusdb_1&lt;br /&gt;The cluster node(s) on which the Oracle home exists are: (Please input nodes seperated by ",", eg: node1,node2,...)hpc3&lt;br /&gt;Since -local option has been specified, the Oracle home will be de-installed only on &lt;span style="font-weight: bold;"&gt;the local node, 'hpc3', and the global configuration will be removed.&lt;br /&gt;Oracle Home selected for de-install is: /opt/app/oracle/product/11.2.0/clusdb_1&lt;/span&gt;&lt;/pre&gt;It is imporant to note that database should not be running out of this Oracle Home. Similarly GI Home could also be deinstalled. In some cases during deinstall the directories inside GI Home may not get deleted and error message "directory in use" could be seen. But all the files inside the directories would be deleted (except in bin directory) and GI Home would be listed in inventory.xml as removed. In this case the "old" GI Home could be deleted with OS command.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2414933436751311863-6078927248859875421?l=asanga-pradeep.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/6078927248859875421'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/6078927248859875421'/><link rel='alternate' type='text/html' href='http://asanga-pradeep.blogspot.com/2011/03/upgrading-from-11201-to-11202.html' title='Upgrading from 11.2.0.1 to 11.2.0.2'/><author><name>Asanga</name><uri>http://www.blogger.com/profile/06917616787415349832</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_90fhbVRwXDU/TECqZgHU0eI/AAAAAAAAAIo/hwI2BMzwDcI/S220/profile.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/-Iy1hJgBVxmc/TXeOJ77BpGI/AAAAAAAAAOw/AsmTEL_LyjU/s72-c/1.jpg' height='72' width='72'/></entry><entry><id>tag:blogger.com,1999:blog-2414933436751311863.post-9033702218390748934</id><published>2011-03-02T07:30:00.000-08:00</published><updated>2011-04-06T06:39:33.113-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='ons'/><category scheme='http://www.blogger.com/atom/ns#' term='failover'/><category scheme='http://www.blogger.com/atom/ns#' term='11gR2'/><category scheme='http://www.blogger.com/atom/ns#' term='11.2.0.2'/><category scheme='http://www.blogger.com/atom/ns#' term='11.2.0.1'/><category scheme='http://www.blogger.com/atom/ns#' term='JDBC'/><category scheme='http://www.blogger.com/atom/ns#' term='10g'/><category scheme='http://www.blogger.com/atom/ns#' term='FCF'/><category scheme='http://www.blogger.com/atom/ns#' term='11gR1'/><title type='text'>Fast Connection Failover Behavior Change in 11.2</title><content type='html'>Fast Connection Failover (FCF) allows jdbc connections to failover to surviving nodes in a RAC when one or more nodes are unavailable. This is very useful to have with middleware application server connection pools so when rolling upgrades or patch application is done on the database the connections in the middleware server would failover to surviving instances and client connections would not receive any errors.&lt;br /&gt;&lt;br /&gt;It seem with 11.2.0.2 and 11.2.0.1 this doesn't work same as in 11gR1 and 10gR2.&lt;br /&gt;&lt;br /&gt;There are two metalink notes available to test fcf on 10gR2 (&lt;span style="font-weight: bold;"&gt;How to Verify and Test Fast Connection Failover (FCF) Setup from a JDBC Thin Client Against a 10.2.x RAC Cluster [ID 433827.1]&lt;/span&gt;) and 11gR1 (&lt;span style="font-weight: bold;"&gt;Fast Connection Failover (FCF) Test Client Using 11g JDBC Driver and 11g RAC Cluster [ID 566573.1]&lt;/span&gt;).&lt;br /&gt;&lt;br /&gt;In this case the java code provided with 566573.1 was used to test the failover of 10gR2 (10.2.0.4) , 11gR1 (11.1.0.7) and 11gR2 (11.2.0.1 and 11.2.0.2)&lt;br /&gt;&lt;br /&gt;There are some differences between 433827.1 and 566573.1 note. In 10gR2 note the ons configuration uses vip hostname whereas in the 11gR1 note machine hostname is used. But for the testing purpose vip hostnames were used throughout (and 11gR1 has been deployed on production system using the vip hostname for ons configuration and failover worked without any problem), for 11gR2 it was tested with both vip hostname and hostname but there was no change in the result.&lt;br /&gt;&lt;br /&gt;Furthermore the ons remote port on 11gR2 is changed to 6200 (same as 10gR2) but on 11gR1 it was 6251. The &lt;span style="font-style: italic;"&gt;onsctl ping&lt;/span&gt; command on 10gR2 and 11gR1 provided the remote port this is no longer the case on 11gR2 but remote port could be observed with &lt;span style="font-style: italic;"&gt;onsctl debug&lt;/span&gt;.&lt;pre&gt; $GI_HOME/bin/onsctl ping&lt;br /&gt;ons is running ...&lt;br /&gt;&lt;br /&gt;$GI_HOME/bin/onsctl debug&lt;br /&gt;HTTP/1.1 200 OK&lt;br /&gt;Content-Length: 2488&lt;br /&gt;Content-Type: text/html&lt;br /&gt;Response:&lt;br /&gt;&lt;br /&gt;== rac4.domain.net:6200 3640 11/03/02 15:36:32 ==&lt;br /&gt;Home: /opt/app/11.2.0/grid&lt;br /&gt;&lt;br /&gt;======== ONS ========&lt;br /&gt;     IP ADDRESS                   PORT    TIME   SEQUENCE  FLAGS&lt;br /&gt;--------------------------------------- ----- -------- -------- --------&lt;br /&gt;                     192.168.0.86  6200 4d6e6210 00000002 00000008&lt;br /&gt;&lt;br /&gt;Listener:&lt;br /&gt;&lt;br /&gt;TYPE                BIND ADDRESS               PORT  SOCKET&lt;br /&gt;-------- --------------------------------------- ----- ------&lt;br /&gt;Local                                  127.0.0.1  6100      5&lt;br /&gt;Remote                                       any  6200      7&lt;br /&gt;Remote                                       any  6200      &lt;/pre&gt;ojdbc6.jar and ons.jar from a 11gR2 home was used for all the test.&lt;br /&gt;&lt;br /&gt;The test code gets 5 jdbc connections from the connection pool and prints to which instance these connections point to and close them and  waits 30 seconds and re-tries the same procedure. During the 30 second wait one of the instnaces is shutdown with &lt;pre&gt;srvctl stop instance -d &lt;span style="font-style: italic;"&gt;dbname&lt;/span&gt; -i &lt;span style="font-style: italic;"&gt;instancename &lt;/span&gt;-o abort&lt;/pre&gt;If the FCF is working properly then connections to the aborted instance would have been cleaned up and all the connections in the pool will be valid connections, connected to surviving node(s).&lt;br /&gt;&lt;br /&gt;Output from running against the 10gR2 RAC&lt;pre&gt;java support.au.fcf11g.FCFDemo&lt;br /&gt;&amp;gt;&amp;gt; PROGRAM using JDBC thin driver, no oracle client required&lt;br /&gt;&amp;gt;&amp;gt; ojdbc5.jar (for JDK 1.5) or ojdbc6.jar (for JDK 1.6) and ons.jar from $ORACLE_HOME/opmn/lib directory must be in the CLASSPATH&lt;br /&gt;&amp;gt;&amp;gt; Press CNTRL C to exit running program&lt;br /&gt;&lt;br /&gt;** Retrieving 5 connections from pool **&lt;br /&gt;5 connections have been retrieved..&lt;br /&gt;&lt;br /&gt;=============&lt;br /&gt;Database Product Name is ... Oracle&lt;br /&gt;Database Product Version is  Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - 64bit Production&lt;br /&gt;With the Partitioning, Real Application Clusters, OLAP, Data Mining&lt;br /&gt;and Real Application Testing options&lt;br /&gt;=============&lt;br /&gt;JDBC Driver Name is ........ Oracle JDBC driver&lt;br /&gt;JDBC Driver Version is ..... 11.2.0.2.0&lt;br /&gt;JDBC Driver Major Version is 11&lt;br /&gt;JDBC Driver Minor Version is 2&lt;br /&gt;=============&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;-- Connection number #1&lt;br /&gt;Instance -&amp;gt; rac10g21&lt;br /&gt;Host -&amp;gt; rac1&lt;br /&gt;Service -&amp;gt; rac10g2.domain.net&lt;br /&gt;-- Connection number #2&lt;br /&gt;Instance -&amp;gt; rac10g21&lt;br /&gt;Host -&amp;gt; rac1&lt;br /&gt;Service -&amp;gt; rac10g2.domain.net&lt;/span&gt;&lt;br /&gt;-- Connection number #3&lt;br /&gt;Instance -&amp;gt; rac10g22&lt;br /&gt;Host -&amp;gt; rac2&lt;br /&gt;Service -&amp;gt; rac10g2.domain.net&lt;br /&gt;-- Connection number #4&lt;br /&gt;Instance -&amp;gt; rac10g22&lt;br /&gt;Host -&amp;gt; rac2&lt;br /&gt;Service -&amp;gt; rac10g2.domain.net&lt;br /&gt;-- Connection number #5&lt;br /&gt;Instance -&amp;gt; rac10g22&lt;br /&gt;Host -&amp;gt; rac2&lt;br /&gt;Service -&amp;gt; rac10g2.domain.net&lt;br /&gt;&lt;br /&gt;-- Displaying Cache Details --&lt;br /&gt;NumberOfAvailableConnections: 0&lt;br /&gt;NumberOfActiveConnections: 5&lt;br /&gt;Number of query failures: 0&lt;br /&gt;-----------&lt;br /&gt;&lt;br /&gt;Sleeping for 30 seconds..&lt;br /&gt;Woke up, will continue now..&lt;br /&gt;&lt;br /&gt;** Retrieving 5 connections from pool **&lt;br /&gt;5 connections have been retrieved..&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;-- Connection number #1&lt;br /&gt;Instance -&amp;gt; rac10g22&lt;br /&gt;Host -&amp;gt; rac2&lt;br /&gt;Service -&amp;gt; rac10g2.domain.net&lt;br /&gt;-- Connection number #2&lt;br /&gt;Instance -&amp;gt; rac10g22&lt;br /&gt;Host -&amp;gt; rac2&lt;br /&gt;Service -&amp;gt; rac10g2.domain.net&lt;/span&gt;&lt;br /&gt;-- Connection number #3&lt;br /&gt;Instance -&amp;gt; rac10g22&lt;br /&gt;Host -&amp;gt; rac2&lt;br /&gt;Service -&amp;gt; rac10g2.domain.net&lt;br /&gt;-- Connection number #4&lt;br /&gt;Instance -&amp;gt; rac10g22&lt;br /&gt;Host -&amp;gt; rac2&lt;br /&gt;Service -&amp;gt; rac10g2.domain.net&lt;br /&gt;-- Connection number #5&lt;br /&gt;Instance -&amp;gt; rac10g22&lt;br /&gt;Host -&amp;gt; rac2&lt;br /&gt;Service -&amp;gt; rac10g2.domain.net&lt;br /&gt;&lt;br /&gt;-- Displaying Cache Details --&lt;br /&gt;NumberOfAvailableConnections: 0&lt;br /&gt;NumberOfActiveConnections: 5&lt;br /&gt;Number of query failures: 0&lt;br /&gt;-----------&lt;br /&gt;&lt;br /&gt;Sleeping for 30 seconds..&lt;/pre&gt;The two connections that were connected to instance rac10g21 has been cleaned up and all the connections now point to rac10g22.&lt;br /&gt;&lt;br /&gt;Output from running against 11gR1 RAC&lt;pre&gt;java support.au.fcf11g.FCFDemo&lt;br /&gt;&amp;gt;&amp;gt; PROGRAM using JDBC thin driver, no oracle client required&lt;br /&gt;&amp;gt;&amp;gt; ojdbc5.jar (for JDK 1.5) or ojdbc6.jar (for JDK 1.6) and ons.jar from $ORACLE_HOME/opmn/lib directory must be in the CLASSPATH&lt;br /&gt;&amp;gt;&amp;gt; Press CNTRL C to exit running program&lt;br /&gt;&lt;br /&gt;** Retrieving 5 connections from pool **&lt;br /&gt;5 connections have been retrieved..&lt;br /&gt;&lt;br /&gt;=============&lt;br /&gt;Database Product Name is ... Oracle&lt;br /&gt;Database Product Version is  Oracle Database 11g Enterprise Edition Release 11.1.0.7.0 - 64bit Production&lt;br /&gt;With the Partitioning, Real Application Clusters, OLAP, Data Mining&lt;br /&gt;and Real Application Testing options&lt;br /&gt;=============&lt;br /&gt;JDBC Driver Name is ........ Oracle JDBC driver&lt;br /&gt;JDBC Driver Version is ..... 11.2.0.2.0&lt;br /&gt;JDBC Driver Major Version is 11&lt;br /&gt;JDBC Driver Minor Version is 2&lt;br /&gt;=============&lt;br /&gt;&lt;br /&gt;-- Connection number #1&lt;br /&gt;Instance -&amp;gt; rac11g11&lt;br /&gt;Host -&amp;gt; rac1&lt;br /&gt;Service -&amp;gt; rac11g1.domain.net&lt;br /&gt;-- Connection number #2&lt;br /&gt;Instance -&amp;gt; rac11g11&lt;br /&gt;Host -&amp;gt; rac1&lt;br /&gt;Service -&amp;gt; rac11g1.domain.net&lt;br /&gt;-- Connection number #3&lt;br /&gt;Instance -&amp;gt; rac11g11&lt;br /&gt;Host -&amp;gt; rac1&lt;br /&gt;Service -&amp;gt; rac11g1.domain.net&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;-- Connection number #4&lt;br /&gt;Instance -&amp;gt; rac11g12&lt;br /&gt;Host -&amp;gt; rac2&lt;br /&gt;Service -&amp;gt; rac11g1.domain.net&lt;/span&gt;&lt;br /&gt;-- Connection number #5&lt;br /&gt;Instance -&amp;gt; rac11g11&lt;br /&gt;Host -&amp;gt; rac1&lt;br /&gt;Service -&amp;gt; rac11g1.domain.net&lt;br /&gt;&lt;br /&gt;-- Displaying Cache Details --&lt;br /&gt;NumberOfAvailableConnections: 0&lt;br /&gt;NumberOfActiveConnections: 5&lt;br /&gt;Number of query failures: 0&lt;br /&gt;-----------&lt;br /&gt;&lt;br /&gt;Sleeping for 30 seconds..&lt;br /&gt;Woke up, will continue now..&lt;br /&gt;&lt;br /&gt;** Retrieving 5 connections from pool **&lt;br /&gt;5 connections have been retrieved..&lt;br /&gt;&lt;br /&gt;-- Connection number #1&lt;br /&gt;Instance -&amp;gt; rac11g11&lt;br /&gt;Host -&amp;gt; rac1&lt;br /&gt;Service -&amp;gt; rac11g1.domain.net&lt;br /&gt;-- Connection number #2&lt;br /&gt;Instance -&amp;gt; rac11g11&lt;br /&gt;Host -&amp;gt; rac1&lt;br /&gt;Service -&amp;gt; rac11g1.domain.net&lt;br /&gt;-- Connection number #3&lt;br /&gt;Instance -&amp;gt; rac11g11&lt;br /&gt;Host -&amp;gt; rac1&lt;br /&gt;Service -&amp;gt; rac11g1.domain.net&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;-- Connection number #4&lt;br /&gt;Instance -&amp;gt; rac11g11&lt;br /&gt;Host -&amp;gt; rac1&lt;br /&gt;Service -&amp;gt; rac11g1.domain.net&lt;/span&gt;&lt;br /&gt;-- Connection number #5&lt;br /&gt;Instance -&amp;gt; rac11g11&lt;br /&gt;Host -&amp;gt; rac1&lt;br /&gt;Service -&amp;gt; rac11g1.domain.net&lt;br /&gt;&lt;br /&gt;-- Displaying Cache Details --&lt;br /&gt;NumberOfAvailableConnections: 0&lt;br /&gt;NumberOfActiveConnections: 5&lt;br /&gt;Number of query failures: 0&lt;br /&gt;-----------&lt;br /&gt;&lt;br /&gt;Sleeping for 30 seconds..&lt;/pre&gt;There was one connection to rac11g12 instnace and this has been cleaned up and all the connections now point to rac11g11.&lt;br /&gt;&lt;br /&gt;Now the 11.2 RACs first against 11.2.0.1&lt;pre&gt;java support.au.fcf11g.FCFDemo&lt;br /&gt;&amp;gt;&amp;gt; PROGRAM using JDBC thin driver, no oracle client required&lt;br /&gt;&amp;gt;&amp;gt; ojdbc5.jar (for JDK 1.5) or ojdbc6.jar (for JDK 1.6) and ons.jar from $ORACLE_HOME/opmn/lib directory must be in the CLASSPATH&lt;br /&gt;&amp;gt;&amp;gt; Press CNTRL C to exit running program&lt;br /&gt;&lt;br /&gt;** Retrieving 5 connections from pool **&lt;br /&gt;5 connections have been retrieved..&lt;br /&gt;&lt;br /&gt;=============&lt;br /&gt;Database Product Name is ... Oracle&lt;br /&gt;Database Product Version is  Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production&lt;br /&gt;With the Partitioning, Real Application Clusters, Automatic Storage Management, OLAP,&lt;br /&gt;Data Mining and Real Application Testing options&lt;br /&gt;=============&lt;br /&gt;JDBC Driver Name is ........ Oracle JDBC driver&lt;br /&gt;JDBC Driver Version is ..... 11.2.0.2.0&lt;br /&gt;JDBC Driver Major Version is 11&lt;br /&gt;JDBC Driver Minor Version is 2&lt;br /&gt;=============&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;-- Connection number #1&lt;br /&gt;Instance -&amp;gt; rac11g21&lt;br /&gt;Host -&amp;gt; rac4&lt;br /&gt;Service -&amp;gt; rac11g2.domain.net&lt;br /&gt;-- Connection number #2&lt;br /&gt;Instance -&amp;gt; rac11g22&lt;br /&gt;Host -&amp;gt; rac5&lt;br /&gt;Service -&amp;gt; rac11g2.domain.net&lt;/span&gt;&lt;br /&gt;-- Connection number #3&lt;br /&gt;Instance -&amp;gt; rac11g22&lt;br /&gt;Host -&amp;gt; rac5&lt;br /&gt;Service -&amp;gt; rac11g2.domain.net&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;-- Connection number #4&lt;br /&gt;Instance -&amp;gt; rac11g21&lt;br /&gt;Host -&amp;gt; rac4&lt;br /&gt;Service -&amp;gt; rac11g2.domain.net&lt;/span&gt;&lt;br /&gt;-- Connection number #5&lt;br /&gt;Instance -&amp;gt; rac11g21&lt;br /&gt;Host -&amp;gt; rac4&lt;br /&gt;Service -&amp;gt; rac11g2.domain.net&lt;br /&gt;&lt;br /&gt;-- Displaying Cache Details --&lt;br /&gt;NumberOfAvailableConnections: 0&lt;br /&gt;NumberOfActiveConnections: 5&lt;br /&gt;Number of query failures: 0&lt;br /&gt;-----------&lt;br /&gt;&lt;br /&gt;Sleeping for 30 seconds..&lt;br /&gt;Woke up, will continue now..&lt;br /&gt;&lt;br /&gt;** Retrieving 5 connections from pool **&lt;br /&gt;5 connections have been retrieved..&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;-- Connection number #1&lt;br /&gt;Error running query: No more data to read from socket&lt;br /&gt;-- Connection number #2&lt;br /&gt;Error running query: No more data to read from socket&lt;/span&gt;&lt;br /&gt;-- Connection number #3&lt;br /&gt;Instance -&amp;gt; rac11g22&lt;br /&gt;Host -&amp;gt; rac5&lt;br /&gt;Service -&amp;gt; rac11g2.domain.net&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;-- Connection number #4&lt;br /&gt;Error running query: No more data to read from socket&lt;/span&gt;&lt;br /&gt;-- Connection number #5&lt;br /&gt;Instance -&amp;gt; rac11g22&lt;br /&gt;Host -&amp;gt; rac5&lt;br /&gt;Service -&amp;gt; rac11g2.domain.net&lt;br /&gt;&lt;br /&gt;-- Displaying Cache Details --&lt;br /&gt;NumberOfAvailableConnections: 0&lt;br /&gt;NumberOfActiveConnections: 5&lt;br /&gt;Number of query failures: 3&lt;br /&gt;-----------&lt;br /&gt;&lt;br /&gt;Sleeping for 30 seconds..&lt;/pre&gt;As seen from the above output the FCF hasn't happened and an error is thrown on the java program.&lt;br /&gt;&lt;br /&gt;Running against 11.2.0.2&lt;pre&gt;java support.au.fcf11g.FCFDemo&lt;br /&gt;&amp;gt;&amp;gt; PROGRAM using JDBC thin driver, no oracle client required&lt;br /&gt;&amp;gt;&amp;gt; ojdbc5.jar (for JDK 1.5) or ojdbc6.jar (for JDK 1.6) and ons.jar from $ORACLE_HOME/opmn/lib directory must be in the CLASSPATH&lt;br /&gt;&amp;gt;&amp;gt; Press CNTRL C to exit running program&lt;br /&gt;&lt;br /&gt;** Retrieving 5 connections from pool **&lt;br /&gt;5 connections have been retrieved..&lt;br /&gt;&lt;br /&gt;=============&lt;br /&gt;Database Product Name is ... Oracle&lt;br /&gt;Database Product Version is  Oracle Database 11g Enterprise Edition Release 11.2.0.2.0 - 64bit Production&lt;br /&gt;With the Partitioning, Real Application Clusters, Automatic Storage Management, OLAP,&lt;br /&gt;Data Mining and Real Application Testing options&lt;br /&gt;=============&lt;br /&gt;JDBC Driver Name is ........ Oracle JDBC driver&lt;br /&gt;JDBC Driver Version is ..... 11.2.0.2.0&lt;br /&gt;JDBC Driver Major Version is 11&lt;br /&gt;JDBC Driver Minor Version is 2&lt;br /&gt;=============&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;-- Connection number #1&lt;br /&gt;Instance -&amp;gt; rac11g22&lt;br /&gt;Host -&amp;gt; rac5&lt;br /&gt;Service -&amp;gt; rac11g2.domain.net&lt;br /&gt;-- Connection number #2&lt;br /&gt;Instance -&amp;gt; rac11g22&lt;br /&gt;Host -&amp;gt; rac5&lt;br /&gt;Service -&amp;gt; rac11g2.domain.net&lt;/span&gt;&lt;br /&gt;-- Connection number #3&lt;br /&gt;Instance -&amp;gt; rac11g21&lt;br /&gt;Host -&amp;gt; rac4&lt;br /&gt;Service -&amp;gt; rac11g2.domain.net&lt;br /&gt;-- Connection number #4&lt;br /&gt;Instance -&amp;gt; rac11g21&lt;br /&gt;Host -&amp;gt; rac4&lt;br /&gt;Service -&amp;gt; rac11g2.domain.net&lt;br /&gt;-- Connection number #5&lt;br /&gt;Instance -&amp;gt; rac11g21&lt;br /&gt;Host -&amp;gt; rac4&lt;br /&gt;Service -&amp;gt; rac11g2.domain.net&lt;br /&gt;&lt;br /&gt;-- Displaying Cache Details --&lt;br /&gt;NumberOfAvailableConnections: 0&lt;br /&gt;NumberOfActiveConnections: 5&lt;br /&gt;Number of query failures: 0&lt;br /&gt;-----------&lt;br /&gt;&lt;br /&gt;Sleeping for 30 seconds..&lt;br /&gt;Woke up, will continue now..&lt;br /&gt;&lt;br /&gt;** Retrieving 5 connections from pool **&lt;br /&gt;5 connections have been retrieved..&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;-- Connection number #1&lt;br /&gt;Error running query: No more data to read from socket&lt;/span&gt;&lt;br /&gt;-- Connection number #2&lt;br /&gt;Instance -&amp;gt; rac11g21&lt;br /&gt;Host -&amp;gt; rac4&lt;br /&gt;Service -&amp;gt; rac11g2.domain.net&lt;br /&gt;-- Connection number #3&lt;br /&gt;Instance -&amp;gt; rac11g21&lt;br /&gt;Host -&amp;gt; rac4&lt;br /&gt;Service -&amp;gt; rac11g2.domain.net&lt;br /&gt;-- Connection number #4&lt;br /&gt;Instance -&amp;gt; rac11g21&lt;br /&gt;Host -&amp;gt; rac4&lt;br /&gt;Service -&amp;gt; rac11g2.domain.net&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;-- Connection number #5&lt;br /&gt;Error running query: No more data to read from socket&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;-- Displaying Cache Details --&lt;br /&gt;NumberOfAvailableConnections: 0&lt;br /&gt;NumberOfActiveConnections: 5&lt;br /&gt;Number of query failures: 2&lt;br /&gt;-----------&lt;br /&gt;&lt;br /&gt;Sleeping for 30 seconds..&lt;/pre&gt;Since the FCF is not working when the application receives connections that are connected to the instnace that was shutdown error is thrown.&lt;br /&gt;&lt;br /&gt;SR has been raised blog will be updated with the outcome.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-size:130%;" &gt;Update 03 March 2011&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Oracle has pointed out several metalink note regarding this. First it was stated this is expected behavior and mentioned in the metalink note&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;How To Use JDBC FCF Feature To Detect That a RAC Node Instance Has Been Shutdown ? [ID 364005.1]&lt;/span&gt;This error would have thrown if a node went down after a connection is taken from the pool and before doing some work with it. But the behavior change does not lie there but how connection pool cleans up invalid connections.&lt;br /&gt;&lt;br /&gt;Two more metalink notes were pointed out &lt;span style="font-weight: bold;"&gt;Oracle Universal Connection Pool (UCP) and Deprecation of JDBC Implicit Connection Cache [ID 743726.1]&lt;/span&gt; and &lt;span style="font-weight: bold;"&gt;How to Verify Universal Connection Pool (UCP) / Fast Connection Failover (FCF) Setup [ID 1064652.1]&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;It seem with 11gR2 implicit connectoin caching is deprecated. Tests wer done using the code provided with 1064652.1 on 11gR2 and 11gR1 and still (with this whatever implicit caching mechanism present or not present on the jdbc side using UCP was common on both test cases) the difference on connection pool clean up is there. First test was on 11gR2 RAC. &lt;pre&gt;----------- UCP Details ---------&lt;br /&gt;NumberOfAvailableConnections: 4 &lt;span style="font-style: italic;"&gt;&amp;lt;== 4 connection in the pool&lt;/span&gt;&lt;br /&gt;BorrowedConnectionsCount: 1&lt;br /&gt;---------------------------------&lt;br /&gt;&lt;br /&gt;** UCPPool : connection returned to pool&lt;br /&gt;** UCPPool : retrieveConnection&lt;br /&gt;** FCFTest : Query #13  -&amp;gt; instance[rac11g22], host[rac5], service[rac11g2.domain.net]&lt;br /&gt;&lt;br /&gt;----------- UCP Details ---------&lt;br /&gt;NumberOfAvailableConnections: 4&lt;br /&gt;BorrowedConnectionsCount: 1&lt;br /&gt;---------------------------------&lt;br /&gt;&lt;br /&gt;====================== instance shutdown =============================&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;** UCPPool : connection returned to pool&lt;br /&gt;** UCPPool : retrieveConnection&lt;br /&gt;** FCFTest : Connection retry necessary : No more data to read from socket&lt;br /&gt;** FCFTest :&lt;br /&gt;** UCPPool : connection returned to pool&lt;br /&gt;** UCPPool : retrieveConnection&lt;br /&gt;** FCFTest : Connection retry necessary : No more data to read from socket &lt;span style="font-style: italic;"&gt;&amp;lt;== expected behavior on 11gR2&lt;/span&gt;&lt;br /&gt;** FCFTest :&lt;/span&gt;&lt;br /&gt;** UCPPool : connection returned to pool&lt;br /&gt;** UCPPool : retrieveConnection&lt;br /&gt;** FCFTest : Query #16  -&amp;gt; instance[rac11g22], host[rac5], service[rac11g2.domain.net]&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;----------- UCP Details ---------&lt;br /&gt;NumberOfAvailableConnections: 2 &lt;span style="font-style: italic;"&gt;&amp;lt;== connection pool cleaned up of invalid connections&lt;/span&gt;&lt;br /&gt;BorrowedConnectionsCount: 1&lt;br /&gt;---------------------------------&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;** UCPPool : connection returned to pool&lt;br /&gt;** UCPPool : retrieveConnection&lt;br /&gt;** FCFTest : Query #17  -&amp;gt; instance[rac11g22], host[rac5], service[rac11g2.domain.net]&lt;br /&gt;&lt;br /&gt;----------- UCP Details ---------&lt;br /&gt;NumberOfAvailableConnections: 2&lt;br /&gt;BorrowedConnectionsCount: 1&lt;br /&gt;---------------------------------&lt;/pre&gt;Now with 11gR1&lt;pre&gt;java au.support.jdbc.scan.fcf.FCFTest&lt;br /&gt;Started UCP FCF Test at Thu Mar 03 11:21:03 GMT 2011&lt;br /&gt;** UCPPool : retrieveConnection&lt;br /&gt;** FCFTest : Query #1  -&amp;gt; instance[rac11g12], host[rac2], service[rac11g1.domain.net]&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;----------- UCP Details ---------&lt;br /&gt;NumberOfAvailableConnections: 4 &lt;span style="font-style: italic;"&gt;&amp;lt;== 4 connections in the pool&lt;/span&gt;&lt;br /&gt;BorrowedConnectionsCount: 1&lt;br /&gt;---------------------------------&lt;br /&gt;&lt;br /&gt;** UCPPool : connection returned to pool&lt;br /&gt;** UCPPool : retrieveConnection&lt;br /&gt;** FCFTest : Query #2  -&amp;gt; instance[rac11g11], host[rac1], service[rac11g1.domain.net]&lt;br /&gt;&lt;br /&gt;----------- UCP Details ---------&lt;br /&gt;NumberOfAvailableConnections: 4&lt;br /&gt;BorrowedConnectionsCount: 1&lt;br /&gt;---------------------------------&lt;br /&gt;================== instance shutdown and connection pool gets cleaned up immediately.&lt;br /&gt;&lt;br /&gt;** UCPPool : connection returned to pool&lt;br /&gt;** UCPPool : retrieveConnection&lt;br /&gt;** FCFTest : Query #3  -&amp;gt; instance[rac11g12], host[rac2], service[rac11g1.domain.net]&lt;br /&gt;&lt;br /&gt;----------- UCP Details ---------&lt;br /&gt;NumberOfAvailableConnections: 1 &lt;span style="font-style: italic;"&gt;&amp;lt;== pool is cleaned up immediately no connection retry&lt;/span&gt;&lt;br /&gt;BorrowedConnectionsCount: 1&lt;br /&gt;---------------------------------&lt;br /&gt;&lt;br /&gt;** UCPPool : connection returned to pool&lt;br /&gt;** UCPPool : retrieveConnection&lt;br /&gt;** FCFTest : Query #4  -&amp;gt; instance[rac11g12], host[rac2], service[rac11g1.domain.net]&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;----------- UCP Details ---------&lt;br /&gt;NumberOfAvailableConnections: 1&lt;br /&gt;BorrowedConnectionsCount: 1&lt;br /&gt;---------------------------------&lt;/pre&gt;SR is ongoing will be updated.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-size:130%;" &gt;Update 11 March 2011&lt;/span&gt;&lt;br /&gt;Running the ucp test case with logging enabled showed the failover events in 11gR2 was missing the domain part of the service name whereas in 11gR1 the full service name including domain was sent. Logs below from the test for 11gR1&lt;pre&gt;** UCPPool : connection returned to pool&lt;br /&gt;2011-03-07T12:15:57.904+0000 UCP FINEST seq-43,thread-11 oracle.ucp.jdbc.oracle.OracleFailoverEventImpl.setEventType eventType: database/event/service&lt;br /&gt;2011-03-07T12:15:57.904+0000 UCP FINEST seq-44,thread-11 oracle.ucp.jdbc.oracle.OracleFailoverEventImpl.validateEventType eventType: database/event/service&lt;br /&gt;2011-03-07T12:15:57.904+0000 UCP FINEST seq-45,thread-11 &lt;span style="font-weight: bold;"&gt;oracle.ucp.jdbc.oracle.ONSDatabaseFailoverEvent.&lt;init&gt; eventType: database/event/service, eventBody: VERSION=1.0 service=rac11g1.domain.net instance=rac11g11 database=rac11g1 host=rac1 status=down reason=user&lt;/init&gt;&lt;/span&gt;&lt;br /&gt;2011-03-07T12:15:57.905+0000 UCP FINEST seq-46,thread-11 oracle.ucp.jdbc.oracle.OracleFailoverEventImpl.setServiceName serviceName: rac11g1.domain.net&lt;br /&gt;2011-03-07T12:15:57.905+0000 UCP FINEST seq-47,thread-11 oracle.ucp.jdbc.oracle.OracleFailoverEventImpl.setInstanceName instanceName: rac11g11&lt;br /&gt;2011-03-07T12:15:57.905+0000 UCP FINEST seq-48,thread-11 oracle.ucp.jdbc.oracle.OracleFailoverEventImpl.setDbUniqueName dbUniqueName: rac11g1&lt;br /&gt;2011-03-07T12:15:57.906+0000 UCP FINEST seq-49,thread-11 oracle.ucp.jdbc.oracle.OracleFailoverEventImpl.setHostName hostName: rac1&lt;br /&gt;2011-03-07T12:15:57.906+0000 UCP FINEST seq-50,thread-11 oracle.ucp.jdbc.oracle.OracleFailoverEventImpl.setStatus status: down&lt;br /&gt;2011-03-07T12:15:57.906+0000 UCP FINEST seq-51,thread-11 oracle.ucp.jdbc.oracle.OracleFailoverEventImpl.setReason reason: user&lt;/pre&gt;On 11gR2 the domain name is missing on the service name&lt;pre&gt;** UCPPool : connection returned to pool&lt;br /&gt;2011-03-07T12:41:47.951+0000 UCP FINEST seq-49,thread-11 oracle.ucp.jdbc.oracle.OracleFailoverEventImpl.setEventType eventType: database/event/service&lt;br /&gt;2011-03-07T12:41:47.951+0000 UCP FINEST seq-50,thread-11 oracle.ucp.jdbc.oracle.OracleFailoverEventImpl.validateEventType eventType: database/event/service&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;2011-03-07T12:41:47.952+0000 UCP FINEST seq-51,thread-11 oracle.ucp.jdbc.oracle.ONSDatabaseFailoverEvent.&lt;init&gt; eventType: database/event/service, eventBody: VERSION=1.0 service=rac11g2 instance=rac11g21 database=rac11g2 host=rac4 status=down reason=USER&lt;/init&gt;&lt;/span&gt;&lt;br /&gt;2011-03-07T12:41:47.952+0000 UCP FINEST seq-52,thread-11 oracle.ucp.jdbc.oracle.OracleFailoverEventImpl.setServiceName serviceName: rac11g2&lt;br /&gt;2011-03-07T12:41:47.952+0000 UCP FINEST seq-53,thread-11 oracle.ucp.jdbc.oracle.OracleFailoverEventImpl.setInstanceName instanceName: rac11g21&lt;br /&gt;2011-03-07T12:41:47.953+0000 UCP FINEST seq-54,thread-11 oracle.ucp.jdbc.oracle.OracleFailoverEventImpl.setDbUniqueName dbUniqueName: rac11g2&lt;br /&gt;2011-03-07T12:41:47.953+0000 UCP FINEST seq-55,thread-11 oracle.ucp.jdbc.oracle.OracleFailoverEventImpl.setHostName hostName: rac4&lt;br /&gt;2011-03-07T12:41:47.953+0000 UCP FINEST seq-56,thread-11 oracle.ucp.jdbc.oracle.OracleFailoverEventImpl.setStatus status: down&lt;br /&gt;2011-03-07T12:41:47.954+0000 UCP FINEST seq-57,thread-11 oracle.ucp.jdbc.oracle.OracleFailoverEventImpl.setReason reason: user&lt;/pre&gt;According to &lt;a href="http://download.oracle.com/docs/cd/E14072_01/rac.112/e10718/hafeats.htm#BABGCEBF"&gt;Oracle Documentation provided throught the SR&lt;/a&gt;this service name should match the service name in dba_services. Looking at this dba view &lt;pre&gt;SQL&amp;gt; select service_id,name from dba_services;&lt;br /&gt;&lt;br /&gt;SERVICE_ID NAME&lt;br /&gt;---------- ------------&lt;br /&gt;1 SYS$BACKGROUND&lt;br /&gt;2 SYS$USERS&lt;br /&gt;3 rac11g2sXDB&lt;br /&gt;4 rac11g2s.domain.net&lt;br /&gt;5 rac11g2XDB&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;6 rac11g2.domain.net&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;6 rows selected.&lt;br /&gt;&lt;br /&gt;SQL&amp;gt; show parameter service&lt;br /&gt;&lt;br /&gt;NAME TYPE VALUE&lt;br /&gt;------------- ------ -------------------&lt;br /&gt;service_names string rac11g2.domain.net&lt;/pre&gt;Pointed this out to oracle and was told this is related to "&lt;span style="font-weight: bold;"&gt;RDBMS Bug 9363352: SERVICE NAME HAS NO DOMAIN FOR UP/DOWN EVENTS, closed as not a bug&lt;/span&gt;" and at this point Oracle couldn't reproduce the error seen above (No more data to read from socket). Looking at the service name oracle is using noticed that it is a service name without a domain.&lt;br /&gt;&lt;br /&gt;So created service name without a domain and tested.&lt;pre&gt;srvctl add service -d rac11g2 -s nodomain -r "rac11g21,rac11g22"&lt;br /&gt;&lt;br /&gt;srvctl start service -d rac11g2 -s nodomain&lt;br /&gt;&lt;br /&gt;srvctl status service -d rac11g2 -s nodomain&lt;br /&gt;Service nodomain is running on instance(s) rac11g21,rac11g22&lt;br /&gt;&lt;br /&gt;SQL&amp;gt; show parameter service&lt;br /&gt;&lt;br /&gt;NAME TYPE VALUE&lt;br /&gt;------------- ------ ----------------------------&lt;br /&gt;service_names string rac11g2.domain.net,&lt;span style="font-weight:bold;"&gt;nodomain&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;SQL&amp;gt; select name from dba_services;&lt;br /&gt;&lt;br /&gt;NAME&lt;br /&gt;---------------------&lt;br /&gt;SYS$BACKGROUND&lt;br /&gt;SYS$USERS&lt;br /&gt;rac11g2sXDB&lt;br /&gt;rac11g2s.domain.net&lt;br /&gt;rac11g2XDB&lt;br /&gt;rac11g2.domain.net&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;nodomain&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;$ lsnrctl status&lt;br /&gt;&lt;br /&gt;LSNRCTL for Linux: Version 11.2.0.2.0 - Production on 11-MAR-2011 10:34:57&lt;br /&gt;&lt;br /&gt;Copyright (c) 1991, 2010, Oracle.  All rights reserved.&lt;br /&gt;&lt;br /&gt;Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521))&lt;br /&gt;STATUS of the LISTENER&lt;br /&gt;------------------------&lt;br /&gt;Alias                     LISTENER&lt;br /&gt;Version                   TNSLSNR for Linux: Version 11.2.0.2.0 - Production&lt;br /&gt;Start Date                07-MAR-2011 12:48:29&lt;br /&gt;Uptime                    3 days 21 hr. 46 min. 27 sec&lt;br /&gt;Trace Level               off&lt;br /&gt;Security                  ON: Local OS Authentication&lt;br /&gt;SNMP                      OFF&lt;br /&gt;Listener Parameter File   /opt/app/11.2.0/grid/network/admin/listener.ora&lt;br /&gt;Listener Log File         /opt/app/oracle/diag/tnslsnr/rac4/listener/alert/log.xml&lt;br /&gt;Listening Endpoints Summary...&lt;br /&gt;(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=LISTENER)))&lt;br /&gt;(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.0.86)(PORT=1521)))&lt;br /&gt;(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.0.90)(PORT=1521)))&lt;br /&gt;Services Summary...&lt;br /&gt;Service "+ASM" has 1 instance(s).&lt;br /&gt;Instance "+ASM1", status READY, has 1 handler(s) for this service...&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Service "nodomain.domain.net" has 1 instance(s).&lt;/span&gt;&lt;br /&gt;Instance "rac11g21", status READY, has 1 handler(s) for this service...&lt;br /&gt;Service "rac11g2.domain.net" has 2 instance(s).&lt;br /&gt;Instance "rac11g21", status UNKNOWN, has 1 handler(s) for this service...&lt;br /&gt;Instance "rac11g21", status READY, has 1 handler(s) for this service...&lt;/pre&gt;Ran the test with logging enabled. This time the service name has the domain name even though it was created without a one and connection pool get refresh and validated quickly just as it was with 11gR1&lt;pre&gt;** UCPPool : connection returned to pool&lt;br /&gt;2011-03-11T10:25:00.022+0000 UCP FINEST seq-75,thread-11 oracle.ucp.jdbc.oracle.OracleFailoverEventImpl.setEventType eventType: database/event/service&lt;br /&gt;2011-03-11T10:25:00.022+0000 UCP FINEST seq-76,thread-11 oracle.ucp.jdbc.oracle.OracleFailoverEventImpl.validateEventType eventType: database/event/service&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;2011-03-11T10:25:00.022+0000 UCP FINEST seq-77,thread-11 oracle.ucp.jdbc.oracle.ONSDatabaseFailoverEvent.&lt;init&gt; eventType: database/event/service, eventBody: VERSION=1.0 service=nodomain.domain.net instance=rac11g22 database=rac11g2 host=rac5 status=down reason=USER&lt;/init&gt;&lt;/span&gt;&lt;br /&gt;2011-03-11T10:25:00.023+0000 UCP FINEST seq-78,thread-11 oracle.ucp.jdbc.oracle.OracleFailoverEventImpl.setServiceName serviceName: nodomain.domain.net&lt;br /&gt;2011-03-11T10:25:00.023+0000 UCP FINEST seq-79,thread-11 oracle.ucp.jdbc.oracle.OracleFailoverEventImpl.setInstanceName instanceName: rac11g22&lt;br /&gt;2011-03-11T10:25:00.023+0000 UCP FINEST seq-80,thread-11 oracle.ucp.jdbc.oracle.OracleFailoverEventImpl.setDbUniqueName dbUniqueName: rac11g2&lt;br /&gt;2011-03-11T10:25:00.024+0000 UCP FINEST seq-81,thread-11 oracle.ucp.jdbc.oracle.OracleFailoverEventImpl.setHostName hostName: rac5&lt;br /&gt;2011-03-11T10:25:00.024+0000 UCP FINEST seq-82,thread-11 oracle.ucp.jdbc.oracle.OracleFailoverEventImpl.setStatus status: down&lt;br /&gt;2011-03-11T10:25:00.024+0000 UCP FINEST seq-83,thread-11 oracle.ucp.jdbc.oracle.OracleFailoverEventImpl.setReason reason: user&lt;/pre&gt; Waiting for Oracle reply on this.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-size:130%;"&gt;Update 06 April 2011&lt;/span&gt;&lt;br /&gt;Oracle came back with this is similar to "&lt;span style="font-style:italic;"&gt;unpublished bug 9740127 fixed in version 12&lt;/span&gt;" also mentioned couple of bugs &lt;span style="font-style:italic;"&gt;8779597 and 9740127&lt;/span&gt; and pointed out that if a application service was created with domain name (instead of using the default database service) failover works as expected.&lt;br /&gt;&lt;br /&gt;So created an application service (additional service as before)&lt;pre&gt; srvctl add service -d rac11g2 -s withdomain.domain.net -r "rac11g21,rac11g22"&lt;/pre&gt;Ran the test again and the connection failover was as before.&lt;pre&gt;** UCPPool : connection returned to pool&lt;br /&gt;** UCPPool : retrieveConnection&lt;br /&gt;** FCFTest : Query #9  -&gt; instance[rac11g21], host[rac4], service[withdomain.domain.net]&lt;br /&gt;&lt;br /&gt;----------- UCP Details ---------&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;NumberOfAvailableConnections: 4&lt;br /&gt;BorrowedConnectionsCount: 1&lt;/span&gt;&lt;br /&gt;---------------------------------&lt;br /&gt;&lt;br /&gt;** UCPPool : connection returned to pool&lt;br /&gt;** UCPPool : retrieveConnection&lt;br /&gt;** FCFTest : Query #10  -&gt; instance[rac11g21], host[rac4], service[withdomain.domain.net]&lt;br /&gt;&lt;br /&gt;----------- UCP Details ---------&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;NumberOfAvailableConnections: 0&lt;br /&gt;BorrowedConnectionsCount: 1&lt;/span&gt;&lt;br /&gt;---------------------------------&lt;/pre&gt;In other versions (10gR2 and 11gR1) default service with or without domain would work fine in a failover situation. &lt;br /&gt;Created another database without a domain name and ran the test again and saw that failover wasn't working as expected.&lt;pre&gt;** UCPPool : connection returned to pool&lt;br /&gt;** UCPPool : retrieveConnection&lt;br /&gt;** FCFTest : Query #181  -&gt; instance[testdb1], host[rac4], service[testdb]&lt;br /&gt;&lt;br /&gt;----------- UCP Details ---------&lt;br /&gt;NumberOfAvailableConnections: 1&lt;br /&gt;BorrowedConnectionsCount: 1&lt;br /&gt;---------------------------------&lt;br /&gt;&lt;br /&gt;** UCPPool : connection returned to pool&lt;br /&gt;** UCPPool : retrieveConnection&lt;br /&gt;** FCFTest : Connection retry necessary : No more data to read from socket&lt;br /&gt;** FCFTest : Apr 6, 2011 2:14 PM SUCCESS &lt;Type:SERVICE_UP&gt; &lt;Service:"testdb"&gt; &lt;Instance:"testdb2"&gt; &lt;Db:"testdb"&gt; Connections:(Available=1 Affected=0 FailedToProcess=0 MarkedDown=0 Closed=0)(Borrowed=0 Affected=0 FailedToProcess=0 MarkedDown=0 MarkedDeferredClose=0 Closed=0) cardinality=2 targetedToTear=0 tornDown=0 markedToClose=0 targetUpEventNewConns=1 upEventNewConns=1&lt;br /&gt;Apr 6, 2011 2:14 PM SUCCESS &lt;Reason:user&gt; &lt;Type:SERVICE_DOWN&gt; &lt;Service:"testdb"&gt; &lt;Instance:"testdb2"&gt; &lt;Db:"testdb"&gt; Connections:(Available=2 Affected=1 FailedToProcess=0 MarkedDown=1 Closed=1)(Borrowed=0 Affected=0 FailedToProcess=0 MarkedDown=0 MarkedDeferredClose=0 Closed=0)&lt;br /&gt;Apr 6, 2011 2:13 PM SUCCESS &lt;Type:SERVICE_UP&gt; &lt;Service:"testdb"&gt; &lt;Instance:"testdb1"&gt; &lt;Db:"testdb"&gt; Connections:(Available=1 Affected=0 FailedToProcess=0 MarkedDown=0 Closed=0)(Borrowed=0 Affected=0 FailedToProcess=0 MarkedDown=0 MarkedDeferredClose=0 Closed=0) cardinality=2 targetedToTear=0 tornDown=0 markedToClose=0 targetUpEventNewConns=1 upEventNewConns=1&lt;br /&gt;Apr 6, 2011 2:12 PM SUCCESS &lt;Reason:user&gt; &lt;Type:SERVICE_DOWN&gt; &lt;Service:"testdb"&gt; &lt;Instance:"testdb1"&gt; &lt;Db:"testdb"&gt; Connections:(Available=1 Affected=1 FailedToProcess=0 MarkedDown=1 Closed=1)(Borrowed=0 Affected=0 FailedToProcess=0 MarkedDown=0 MarkedDeferredClose=0 Closed=0)&lt;br /&gt;Apr 6, 2011 2:12 PM SUCCESS &lt;Type:SERVICE_UP&gt; &lt;Service:"testdb"&gt; &lt;Instance:"testdb2"&gt; &lt;Db:"testdb"&gt; Connections:(Available=1 Affected=0 FailedToProcess=0 MarkedDown=0 Closed=0)(Borrowed=0 Affected=0 FailedToProcess=0 MarkedDown=0 MarkedDeferredClose=0 Closed=0) cardinality=2 targetedToTear=0 tornDown=0 markedToClose=0 targetUpEventNewConns=1 upEventNewConns=1&lt;br /&gt;Apr 6, 2011 2:11 PM SUCCESS &lt;Reason:user&gt; &lt;Type:SERVICE_DOWN&gt; &lt;Service:"testdb"&gt; &lt;Instance:"testdb2"&gt; &lt;Db:"testdb"&gt; Connections:(Available=2 Affected=1 FailedToProcess=0 MarkedDown=1 Closed=1)(Borrowed=0 Affected=0 FailedToProcess=0 MarkedDown=0 MarkedDeferredClose=0 Closed=0)&lt;br /&gt;Apr 6, 2011 2:11 PM SUCCESS &lt;Type:SERVICE_UP&gt; &lt;Service:"testdb"&gt; &lt;Instance:"testdb1"&gt; &lt;Db:"testdb"&gt; Connections:(Available=1 Affected=0 FailedToProcess=0 MarkedDown=0 Closed=0)(Borrowed=0 Affected=0 FailedToProcess=0 MarkedDown=0 MarkedDeferredClose=0 Closed=0) cardinality=2 targetedToTear=0 tornDown=0 markedToClose=0 targetUpEventNewConns=1 upEventNewConns=1&lt;br /&gt;Apr 6, 2011 2:10 PM SUCCESS &lt;Reason:user&gt; &lt;Type:SERVICE_DOWN&gt; &lt;Service:"testdb"&gt; &lt;Instance:"testdb1"&gt; &lt;Db:"testdb"&gt; Connections:(Available=3 Affected=2 FailedToProcess=0 MarkedDown=2 Closed=2)(Borrowed=0 Affected=0 FailedToProcess=0 MarkedDown=0 MarkedDeferredClose=0 Closed=0)&lt;br /&gt;Apr 6, 2011 2:10 PM SUCCESS &lt;Type:SERVICE_UP&gt; &lt;Service:"testdb"&gt; &lt;Instance:"testdb2"&gt; &lt;Db:"testdb"&gt; Connections:(Available=2 Affected=0 FailedToProcess=0 MarkedDown=0 Closed=0)(Borrowed=0 Affected=0 FailedToProcess=0 MarkedDown=0 MarkedDeferredClose=0 Closed=0) cardinality=2 targetedToTear=0 tornDown=0 markedToClose=0 targetUpEventNewConns=2 upEventNewConns=2&lt;br /&gt;Apr 6, 2011 2:09 PM SUCCESS &lt;Reason:user&gt; &lt;Type:SERVICE_DOWN&gt; &lt;Service:"testdb"&gt; &lt;Instance:"testdb2"&gt; &lt;Db:"testdb"&gt; Connections:(Available=6 Affected=4 FailedToProcess=0 MarkedDown=4 Closed=4)(Borrowed=0 Affected=0 FailedToProcess=0 MarkedDown=0 MarkedDeferredClose=0 Closed=0)&lt;br /&gt;Apr 6, 2011 2:09 PM SUCCESS &lt;Type:SERVICE_UP&gt; &lt;Service:"testdb"&gt; &lt;Instance:"testdb1"&gt; &lt;Db:"testdb"&gt; Connections:(Available=3 Affected=0 FailedToProcess=0 MarkedDown=0 Closed=0)(Borrowed=0 Affected=0 FailedToProcess=0 MarkedDown=0 MarkedDeferredClose=0 Closed=0) cardinality=2 targetedToTear=0 tornDown=0 markedToClose=0 targetUpEventNewConns=3 upEventNewConns=3&lt;br /&gt;Apr 6, 2011 2:08 PM SUCCESS &lt;Reason:user&gt; &lt;Type:SERVICE_DOWN&gt; &lt;Service:"testdb"&gt; &lt;Instance:"testdb1"&gt; &lt;Db:"testdb"&gt; Connections:(Available=5 Affected=2 FailedToProcess=0 MarkedDown=2 Closed=2)(Borrowed=0 Affected=0 FailedToProcess=0 MarkedDown=0 MarkedDeferredClose=0 Closed=0)&lt;br /&gt;&lt;br /&gt;** UCPPool : connection returned to pool&lt;br /&gt;** UCPPool : retrieveConnection&lt;br /&gt;** FCFTest : Query #183  -&gt; instance[testdb2], host[rac5], service[testdb]&lt;br /&gt;&lt;br /&gt;----------- UCP Details ---------&lt;br /&gt;NumberOfAvailableConnections: 0&lt;br /&gt;BorrowedConnectionsCount: 1&lt;br /&gt;---------------------------------&lt;/pre&gt; Oracle confirmed this is related to using default database service and suggested to create and use application services instead of the default database service.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2414933436751311863-9033702218390748934?l=asanga-pradeep.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/9033702218390748934'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/9033702218390748934'/><link rel='alternate' type='text/html' href='http://asanga-pradeep.blogspot.com/2011/03/fast-connection-failover-not-working-in.html' title='Fast Connection Failover Behavior Change in 11.2'/><author><name>Asanga</name><uri>http://www.blogger.com/profile/06917616787415349832</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_90fhbVRwXDU/TECqZgHU0eI/AAAAAAAAAIo/hwI2BMzwDcI/S220/profile.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-2414933436751311863.post-6396133858294669810</id><published>2011-02-24T05:48:00.000-08:00</published><updated>2011-11-29T12:10:10.127-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='rac'/><category scheme='http://www.blogger.com/atom/ns#' term='11gR2'/><category scheme='http://www.blogger.com/atom/ns#' term='11.2.0.2'/><category scheme='http://www.blogger.com/atom/ns#' term='dataguard broker'/><category scheme='http://www.blogger.com/atom/ns#' term='switchover'/><category scheme='http://www.blogger.com/atom/ns#' term='dataguard'/><title type='text'>Data Guard Broker for 11gR2</title><content type='html'>Data guard broker makes managing the data guard configuration easy by masking lot of the sql commands and multiple steps into few (sometimes one as in the case of switchover) data guard broker commands. Once the dataguard broker is setup it's advisable to use that to manipulate the dataguard configuration rather than the sql commands.&lt;br /&gt;The &lt;a href="http://asanga-pradeep.blogspot.com/2011/02/11gr2-rac-to-rac-data-guard.html"&gt;data guard configuration created earlier&lt;/a&gt; will be configured to be managed through dataguard broker. There are some dataguard broker specific setup and configuration need to be done to the earlier setup.&lt;br /&gt;&lt;br /&gt;1. Data guard broker requires a special naming convention to be followed in the value entered for global_dbname in listener.ora. Database sid should be suffixed with _DGMGRL if not data guard broker will not function properly. &lt;span style="font-weight: bold;"&gt;See metalink note Automatic Restart of Databases during Switchover fail with ORA-12514 in DGMGRL [ID 308943.1]&lt;/span&gt;&lt;br /&gt;Change the &lt;a href="http://asanga-pradeep.blogspot.com/2011/02/11gr2-rac-to-rac-data-guard.html"&gt;earlier listener.ora&lt;/a&gt; files as below, on standby rac4b&lt;pre&gt;more listener.ora&lt;br /&gt;&lt;br /&gt;LISTENER=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER))))            # line added by Agent&lt;br /&gt;LISTENER_SCAN1=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER_SCAN1))))                # line added by Agent&lt;br /&gt;ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER_SCAN1=ON                # line added by Agent&lt;br /&gt;ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER=ON              # line added by Agent&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;SID_LIST_LISTENER =&lt;br /&gt;(SID_LIST =&lt;br /&gt;(SID_DESC =&lt;br /&gt;(GLOBAL_DBNAME = rac11g2s.domain.net)&lt;br /&gt;(SID_NAME = rac11g2s1)&lt;br /&gt;(ORACLE_HOME = /opt/app/oracle/product/11.2.0/db_1)&lt;br /&gt;)&lt;br /&gt;(SID_DESC =&lt;br /&gt;(GLOBAL_DBNAME = rac11g2s_DGMGRL.domain.net)&lt;br /&gt;(SID_NAME = rac11g2s1)&lt;br /&gt;(ORACLE_HOME = /opt/app/oracle/product/11.2.0/db_1)&lt;br /&gt;)&lt;br /&gt;)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;SID_LIST_LISTENER_SCAN1 =&lt;br /&gt;(SID_LIST =&lt;br /&gt;(SID_DESC =&lt;br /&gt;(GLOBAL_DBNAME = rac11g2s.domain.net)&lt;br /&gt;(SID_NAME = rac11g2s1)&lt;br /&gt;(ORACLE_HOME = /opt/app/oracle/product/11.2.0/db_1)&lt;br /&gt;)&lt;br /&gt;(SID_DESC =&lt;br /&gt;(GLOBAL_DBNAME = rac11g2s_DGMGRL.domain.net)&lt;br /&gt;(SID_NAME = rac11g2s1)&lt;br /&gt;(ORACLE_HOME = /opt/app/oracle/product/11.2.0/db_1)&lt;br /&gt;)&lt;br /&gt;)&lt;/pre&gt;on rac5b&lt;pre&gt;more listener.ora&lt;br /&gt;&lt;br /&gt;LISTENER_SCAN1=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER_SCAN1))))                # line added by Agent&lt;br /&gt;LISTENER=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER))))            # line added by Agent&lt;br /&gt;ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER=ON              # line added by Agent&lt;br /&gt;ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER_SCAN1=ON                # line added by Agent&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;SID_LIST_LISTENER =&lt;br /&gt;(SID_LIST =&lt;br /&gt;(SID_DESC =&lt;br /&gt;(GLOBAL_DBNAME = rac11g2s.domain.net)&lt;br /&gt;(SID_NAME = rac11g2s2)&lt;br /&gt;(ORACLE_HOME = /opt/app/oracle/product/11.2.0/db_1)&lt;br /&gt;)&lt;br /&gt;(SID_DESC =&lt;br /&gt;(GLOBAL_DBNAME = rac11g2s_DGMGRL.domain.net)&lt;br /&gt;(SID_NAME = rac11g2s2)&lt;br /&gt;(ORACLE_HOME = /opt/app/oracle/product/11.2.0/db_1)&lt;br /&gt;)&lt;br /&gt;&lt;br /&gt;)&lt;br /&gt;&lt;br /&gt;SID_LIST_LISTENER_SCAN1 =&lt;br /&gt;(SID_LIST =&lt;br /&gt;(SID_DESC =&lt;br /&gt;(GLOBAL_DBNAME = rac11g2s.domain.net)&lt;br /&gt;(SID_NAME = rac11g2s2)&lt;br /&gt;(ORACLE_HOME = /opt/app/oracle/product/11.2.0/db_1)&lt;br /&gt;)&lt;br /&gt;(SID_DESC =&lt;br /&gt;(GLOBAL_DBNAME = rac11g2s_DGMGRL.domain.net)&lt;br /&gt;(SID_NAME = rac11g2s2)&lt;br /&gt;(ORACLE_HOME = /opt/app/oracle/product/11.2.0/db_1)&lt;br /&gt;)&lt;br /&gt;)&lt;/pre&gt;Stop and start the listeners and check the static listener is available&lt;pre&gt;srvctl stop listener -n `hostname -s`&lt;br /&gt;srvctl start listener -n `hostname -s`&lt;br /&gt;&lt;br /&gt;srvctl stop scan_listener&lt;br /&gt;srvctl start scan_listener&lt;br /&gt;&lt;br /&gt;lsnrctl status listener&lt;br /&gt;&lt;br /&gt;LSNRCTL for Linux: Version 11.2.0.2.0 - Production on 23-FEB-2011 17:51:05&lt;br /&gt;&lt;br /&gt;Copyright (c) 1991, 2010, Oracle.  All rights reserved.&lt;br /&gt;&lt;br /&gt;Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER)))&lt;br /&gt;STATUS of the LISTENER&lt;br /&gt;------------------------&lt;br /&gt;Alias                     LISTENER&lt;br /&gt;Version                   TNSLSNR for Linux: Version 11.2.0.2.0 - Production&lt;br /&gt;Start Date                23-FEB-2011 17:42:04&lt;br /&gt;Uptime                    0 days 0 hr. 9 min. 1 sec&lt;br /&gt;Trace Level               off&lt;br /&gt;Security                  ON: Local OS Authentication&lt;br /&gt;SNMP                      OFF&lt;br /&gt;Listener Parameter File   /opt/app/11.2.0/grid/network/admin/listener.ora&lt;br /&gt;Listener Log File         /opt/app/oracle/diag/tnslsnr/rac5b/listener/alert/log.xml&lt;br /&gt;Listening Endpoints Summary...&lt;br /&gt;(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=LISTENER)))&lt;br /&gt;(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.0.93)(PORT=1521)))&lt;br /&gt;(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.0.97)(PORT=1521)))&lt;br /&gt;Services Summary...&lt;br /&gt;Service "+ASM" has 1 instance(s).&lt;br /&gt;Instance "+ASM2", status READY, has 1 handler(s) for this service...&lt;br /&gt;Service "rac11g2s.domain.net" has 1 instance(s).&lt;br /&gt;Instance "rac11g2s2", status UNKNOWN, has 1 handler(s) for this service...&lt;br /&gt;Service "rac11g2s.domain.net" has 1 instance(s).&lt;br /&gt;Instance "rac11g2s2", status READY, has 1 handler(s) for this service...&lt;br /&gt;Service "rac11g2s_DGMGRL.domain.net" has 1 instance(s).&lt;br /&gt;Instance "rac11g2s2", status UNKNOWN, has 1 handler(s) for this service...&lt;br /&gt;The command completed successfully&lt;/pre&gt;To view the scan listener status it is important to set the ORACLE_HOME variable to GRID_HOME (or CRS_HOME whatever used) if not &lt;pre&gt;lsnrctl status listener_scan1&lt;br /&gt;&lt;br /&gt;TNS-01101: Could not find service name listener_scan1&lt;/pre&gt;will be shown. &lt;pre&gt;export ORACLE_HOME=$CRS_HOME&lt;br /&gt;$CRS_HOME/bin/lsnrctl status listener_scan1&lt;br /&gt;&lt;br /&gt;LSNRCTL for Linux: Version 11.2.0.2.0 - Production on 23-FEB-2011 17:50:18&lt;br /&gt;&lt;br /&gt;Copyright (c) 1991, 2010, Oracle.  All rights reserved.&lt;br /&gt;&lt;br /&gt;Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER_SCAN1)))&lt;br /&gt;STATUS of the LISTENER&lt;br /&gt;------------------------&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Alias                     LISTENER_SCAN1&lt;/span&gt;&lt;br /&gt;Version                   TNSLSNR for Linux: Version 11.2.0.2.0 - Production&lt;br /&gt;Start Date                23-FEB-2011 17:49:44&lt;br /&gt;Uptime                    0 days 0 hr. 0 min. 34 sec&lt;br /&gt;Trace Level               off&lt;br /&gt;Security                  ON: Local OS Authentication&lt;br /&gt;SNMP                      OFF&lt;br /&gt;Listener Parameter File   /opt/app/11.2.0/grid/network/admin/listener.ora&lt;br /&gt;Listener Log File         /opt/app/11.2.0/grid/log/diag/tnslsnr/rac5b/listener_scan1/alert/log.xml&lt;br /&gt;Listening Endpoints Summary...&lt;br /&gt;(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=LISTENER_SCAN1)))&lt;br /&gt;(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.0.92)(PORT=1521)))&lt;br /&gt;Services Summary...&lt;br /&gt;Service "rac11g2s.domain.net" has 1 instance(s).&lt;br /&gt;Instance "rac11g2s2", status UNKNOWN, has 1 handler(s) for this service...&lt;br /&gt;Service "rac11g2s_DGMGRL.domain.net" has 1 instance(s).&lt;br /&gt;Instance "rac11g2s2", status UNKNOWN, has 1 handler(s) for this service...&lt;br /&gt;The command completed successfully&lt;/pre&gt;Similarly make the changes to primary listener.ora files as well. On rac4&lt;pre&gt;LISTENER=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER))))            # line added by Agent&lt;br /&gt;LISTENER_SCAN1=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER_SCAN1))))                # line added by Agent&lt;br /&gt;ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER_SCAN1=ON                # line added by Agent&lt;br /&gt;ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER=ON              # line added by Agent&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;SID_LIST_LISTENER =&lt;br /&gt;(SID_LIST =&lt;br /&gt;(SID_DESC =&lt;br /&gt;(GLOBAL_DBNAME = rac11g2.domain.net)&lt;br /&gt;(SID_NAME = rac11g21)&lt;br /&gt;(ORACLE_HOME = /opt/app/oracle/product/11.2.0/db_1)&lt;br /&gt;)&lt;br /&gt;(SID_DESC =&lt;br /&gt;(GLOBAL_DBNAME = rac11g2_DGMGRL.domain.net)&lt;br /&gt;(SID_NAME = rac11g21)&lt;br /&gt;(ORACLE_HOME = /opt/app/oracle/product/11.2.0/db_1)&lt;br /&gt;)&lt;br /&gt;)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;SID_LIST_LISTENER_SCAN1 =&lt;br /&gt;(SID_LIST =&lt;br /&gt;(SID_DESC =&lt;br /&gt;(GLOBAL_DBNAME = rac11g2.domain.net)&lt;br /&gt;(SID_NAME = rac11g21)&lt;br /&gt;(ORACLE_HOME = /opt/app/oracle/product/11.2.0/db_1)&lt;br /&gt;)&lt;br /&gt;(SID_DESC =&lt;br /&gt;(GLOBAL_DBNAME = rac11g2_DGMGRL.domain.net)&lt;br /&gt;(SID_NAME = rac11g21)&lt;br /&gt;(ORACLE_HOME = /opt/app/oracle/product/11.2.0/db_1)&lt;br /&gt;)&lt;br /&gt;)&lt;/pre&gt;On rac5&lt;pre&gt;LISTENER_SCAN1=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER_SCAN1))))                # line added by Agent&lt;br /&gt;LISTENER=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER))))            # line added by Agent&lt;br /&gt;ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER=ON              # line added by Agent&lt;br /&gt;ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER_SCAN1=ON                # line added by Agent&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;SID_LIST_LISTENER =&lt;br /&gt;(SID_LIST =&lt;br /&gt;(SID_DESC =&lt;br /&gt;(GLOBAL_DBNAME = rac11g2.domain.net)&lt;br /&gt;(SID_NAME = rac11g22)&lt;br /&gt;(ORACLE_HOME = /opt/app/oracle/product/11.2.0/db_1)&lt;br /&gt;)&lt;br /&gt;(SID_DESC =&lt;br /&gt;(GLOBAL_DBNAME = rac11g2_DGMGRL.domain.net)&lt;br /&gt;(SID_NAME = rac11g22)&lt;br /&gt;(ORACLE_HOME = /opt/app/oracle/product/11.2.0/db_1)&lt;br /&gt;)&lt;br /&gt;)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;SID_LIST_LISTENER_SCAN1 =&lt;br /&gt;(SID_LIST =&lt;br /&gt;(SID_DESC =&lt;br /&gt;(GLOBAL_DBNAME = rac11g2.domain.net)&lt;br /&gt;(SID_NAME = rac11g22)&lt;br /&gt;(ORACLE_HOME = /opt/app/oracle/product/11.2.0/db_1)&lt;br /&gt;)&lt;br /&gt;(SID_DESC =&lt;br /&gt;(GLOBAL_DBNAME = rac11g2_DGMGRL.domain.net)&lt;br /&gt;(SID_NAME = rac11g22)&lt;br /&gt;(ORACLE_HOME = /opt/app/oracle/product/11.2.0/db_1)&lt;br /&gt;)&lt;br /&gt;)&lt;/pre&gt;As with the standby restart the listeners and verify the static listener is available.&lt;br /&gt;&lt;br /&gt;2. There are three initialization parameters that is related to data guard broker &lt;pre&gt;SQL&gt; show parameter dg&lt;br /&gt;&lt;br /&gt;NAME                                 TYPE        VALUE&lt;br /&gt;------------------------------------ ----------- ------------------------------&lt;br /&gt;dg_broker_config_file1               string      /opt/app/oracle/product/11.2.0&lt;br /&gt;/db_1/dbs/dr1rac11g2.dat&lt;br /&gt;dg_broker_config_file2               string      /opt/app/oracle/product/11.2.0&lt;br /&gt;/db_1/dbs/dr2rac11g2.dat&lt;br /&gt;dg_broker_start                      boolean     FALSE&lt;/pre&gt;In a RAC environment dg_broker_config_file1 and dg_broker_config_file2 must be stored in a shared location that could be accessed by all instances. The location could be Cluster file system,Raw devices or ASM. These location must be same on all instances. The file need not exist but if a new location is created to store them create it beforehand. In this case these files were stored in ASM and a directory was created inside asm diskgroup. On primary &lt;pre&gt;ASMCMD&gt;cd data/rac11g2&lt;br /&gt;pwd&lt;br /&gt;+data/rac11g2&lt;br /&gt;ASMCMD&gt; mkdir dgbroker&lt;/pre&gt;On standby &lt;pre&gt;ASMCMD&gt;cd data/rac11g2s&lt;br /&gt;pwd&lt;br /&gt;+data/rac11g2s&lt;br /&gt;ASMCMD&gt; mkdir dgbroker&lt;/pre&gt;Then set the intialization parameters on primary with &lt;pre&gt;SQL&gt; alter system set dg_broker_config_file1='+DATA/rac11g2/dgbroker/dr1rac11g2.dat' scope=both sid='*';&lt;br /&gt;System altered.&lt;br /&gt;&lt;br /&gt;SQL&gt; alter system set dg_broker_config_file2='+DATA/rac11g2/dgbroker/dr2rac11g2.dat' scope=both sid='*';&lt;br /&gt;System altered.&lt;/pre&gt;On standby &lt;pre&gt;SQL&gt; alter system set dg_broker_config_file1='+DATA/rac11g2s/dgbroker/dr1rac11g2s.dat' scope=both sid='*';&lt;br /&gt;System altered.&lt;br /&gt;&lt;br /&gt;SQL&gt; alter system set dg_broker_config_file2='+DATA/rac11g2s/dgbroker/dr2rac11g2s.dat' scope=both sid='*';&lt;br /&gt;System altered.&lt;/pre&gt;3. Enterprise Manager will automatically set the next required initialization parameter DG_BROKER_START to TRUE for new standby databases that it creates. But as in this case when using DGMGRL, this must be explicitly set to true otherwise dataguard broker daemon will not start. Both on primary and standby set &lt;pre&gt;SQL&gt; alter system set dg_broker_start=true scope=both sid='*';&lt;br /&gt;System altered.&lt;/pre&gt;When this gets executed following message will appear on the alert log indicating the start of data guard broker daemon&lt;pre&gt;Thu Feb 24 11:04:54 2011&lt;br /&gt;DMON started with pid=56, OS id=16310&lt;br /&gt;Starting Data Guard Broker (DMON)&lt;br /&gt;Thu Feb 24 11:05:08 2011&lt;br /&gt;INSV started with pid=60, OS id=16327&lt;/pre&gt;4. Next step is to create the data guard broker configuration. This must be created on the primary running on standby would give the following error&lt;pre&gt;DGMGRL&gt; create configuration rac11g2_dgb as primary database is rac11g2 connect identifier is rac11g2;&lt;br /&gt;Error: ORA-16584: operation cannot be performed on a standby database&lt;br /&gt;&lt;br /&gt;Failed.&lt;/pre&gt;5. On primary run dgmgrl command line tool to create the configuration&lt;pre&gt;$ dgmgrl&lt;br /&gt;DGMGRL for Linux: Version 11.2.0.2.0 - 64bit Production&lt;br /&gt;&lt;br /&gt;Copyright (c) 2000, 2009, Oracle. All rights reserved.&lt;br /&gt;&lt;br /&gt;Welcome to DGMGRL, type "help" for information.&lt;br /&gt;DGMGRL&gt; connect sys&lt;br /&gt;Password:&lt;br /&gt;Connected.&lt;br /&gt;&lt;br /&gt;DGMGRL&gt; create configuration rac11g2_dgb as primary database is rac11g2 connect identifier is rac11g2;&lt;br /&gt;Configuration "rac11g2_dgb" created with primary database "rac11g2"&lt;br /&gt;&lt;br /&gt;DGMGRL&gt; show configuration&lt;br /&gt;&lt;br /&gt;Configuration - rac11g2_dgb&lt;br /&gt;&lt;br /&gt;Protection Mode: MaxPerformance&lt;br /&gt;Databases:&lt;br /&gt;rac11g2 - Primary database&lt;br /&gt;&lt;br /&gt;Fast-Start Failover: DISABLED&lt;br /&gt;&lt;br /&gt;Configuration Status:&lt;br /&gt;DISABLED&lt;/pre&gt;Syntax to add the physical standby could be of many forms. In 11gR1 documentation "maintained as physical" was used to explicity indicate the database added is a standby. But in 11gR2 this could be ommited and configuration recognize the database role and configure it accordingly. Both commands are shown below&lt;pre&gt;DGMGRL&gt; add database rac11g2s as connect identifier is rac11g2s;&lt;br /&gt;Database "rac11g2s" added&lt;br /&gt;DGMGRL&gt; show configuration&lt;br /&gt;&lt;br /&gt;Configuration - rac11g2_dgb&lt;br /&gt;&lt;br /&gt;Protection Mode: MaxPerformance&lt;br /&gt;Databases:&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;rac11g2  - Primary database&lt;br /&gt;rac11g2s - Physical standby database&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Fast-Start Failover: DISABLED&lt;br /&gt;&lt;br /&gt;Configuration Status:&lt;br /&gt;DISABLED&lt;/pre&gt;To remove a database from the configuration use &lt;pre&gt;DGMGRL&gt; remove database rac11g2s;&lt;br /&gt;Removed database "rac11g2s" from the configuration&lt;/pre&gt;The 11gR1 syntax&lt;pre&gt;DGMGRL&gt; add database rac11g2s as connect identifier is rac11g2s maintained as physical;&lt;br /&gt;Database "rac11g2s" added&lt;br /&gt;DGMGRL&gt; show configuration&lt;br /&gt;&lt;br /&gt;Configuration - rac11g2_dgb&lt;br /&gt;&lt;br /&gt;Protection Mode: MaxPerformance&lt;br /&gt;Databases:&lt;br /&gt;rac11g2  - Primary database&lt;br /&gt;rac11g2s - Physical standby database&lt;br /&gt;&lt;br /&gt;Fast-Start Failover: DISABLED&lt;br /&gt;&lt;br /&gt;Configuration Status:&lt;br /&gt;DISABLED&lt;/pre&gt;6. Even though configuration is created it is disabled. As the final step enable the configuration&lt;pre&gt;DGMGRL&gt; enable configuration;&lt;br /&gt;Enabled.&lt;/pre&gt;Following could be observed on the primary alert log&lt;pre&gt;Thu Feb 24 11:12:53 2011&lt;br /&gt;RSM0 started with pid=61, OS id=16735&lt;br /&gt;ALTER SYSTEM SET log_archive_trace=0 SCOPE=BOTH SID='rac11g21';&lt;br /&gt;ALTER SYSTEM SET log_archive_format='%t_%s_%r.dbf' SCOPE=SPFILE SID='rac11g21';&lt;br /&gt;ALTER SYSTEM SET standby_file_management='AUTO' SCOPE=BOTH SID='*';&lt;br /&gt;ALTER SYSTEM SET archive_lag_target=0 SCOPE=BOTH SID='*';&lt;br /&gt;ALTER SYSTEM SET log_archive_max_processes=10 SCOPE=BOTH SID='*';&lt;br /&gt;ALTER SYSTEM SET log_archive_min_succeed_dest=1 SCOPE=BOTH SID='*';&lt;br /&gt;ALTER SYSTEM SET db_file_name_convert='+DATA/rac11g2s','+DATA/rac11g2' SCOPE=SPFILE;&lt;br /&gt;ALTER SYSTEM SET log_file_name_convert='+FLASH/rac11g2s','+FLASH/rac11g2','+DATA/rac11g2s','+DATA/rac11g2' SCOPE=SPFILE;&lt;br /&gt;ALTER SYSTEM ARCHIVE LOG&lt;br /&gt;Thu Feb 24 11:13:01 2011&lt;br /&gt;Thread 1 advanced to log sequence 125 (LGWR switch)&lt;br /&gt;Current log# 1 seq# 125 mem# 0: +DATA/rac11g2/onlinelog/group_1.261.740770161&lt;br /&gt;Current log# 1 seq# 125 mem# 1: +FLASH/rac11g2/onlinelog/group_1.257.740770161&lt;br /&gt;Thu Feb 24 11:13:03 2011&lt;br /&gt;LNS: Standby redo logfile selected for thread 1 sequence 125 for destination LOG_ARCHIVE_DEST_1&lt;br /&gt;Thu Feb 24 11:13:03 2011&lt;br /&gt;Archived Log entry 353 added for thread 1 sequence 124 ID 0x16d045c1 dest 10:&lt;/pre&gt;and on standby alert log &lt;pre&gt;Thu Feb 24 12:13:50 2011&lt;br /&gt;RSM0 started with pid=54, OS id=19480&lt;br /&gt;ALTER SYSTEM SET log_archive_trace=0 SCOPE=BOTH SID='rac11g2s1';&lt;br /&gt;ALTER SYSTEM SET log_archive_format='%t_%s_%r.dbf' SCOPE=SPFILE SID='rac11g2s1';&lt;br /&gt;ALTER SYSTEM SET standby_file_management='AUTO' SCOPE=BOTH SID='*';&lt;br /&gt;ALTER SYSTEM SET archive_lag_target=0 SCOPE=BOTH SID='*';&lt;br /&gt;ALTER SYSTEM SET log_archive_max_processes=5 SCOPE=BOTH SID='*';&lt;br /&gt;ALTER SYSTEM SET log_archive_min_succeed_dest=1 SCOPE=BOTH SID='*';&lt;br /&gt;ALTER SYSTEM SET db_file_name_convert='+DATA/rac11g2','+DATA/rac11g2s' SCOPE=SPFILE;&lt;br /&gt;ALTER SYSTEM SET log_file_name_convert='+FLASH/rac11g2','+FLASH/rac11g2s','+DATA/rac11g2','+DATA/rac11g2s' SCOPE=SPFILE;&lt;br /&gt;ALTER SYSTEM SET fal_server='rac11g2' SCOPE=BOTH;&lt;br /&gt;Thu Feb 24 12:14:00 2011&lt;br /&gt;RFS[2]: Selected log 5 for thread 1 sequence 125 dbid 379668842 branch 740770160&lt;br /&gt;Thu Feb 24 12:14:00 2011&lt;br /&gt;Archived Log entry 189 added for thread 1 sequence 124 ID 0x16d045c1 dest 10:&lt;br /&gt;Thu Feb 24 12:14:01 2011&lt;br /&gt;RFS[5]: Selected log 8 for thread 2 sequence 117 dbid 379668842 branch 740770160&lt;br /&gt;Thu Feb 24 12:14:01 2011&lt;br /&gt;Archived Log entry 190 added for thread 2 sequence 116 ID 0x16d045c1 dest 10:&lt;/pre&gt;7. Check the configuration status with &lt;pre&gt;DGMGRL&gt; show configuration&lt;br /&gt;&lt;br /&gt;Configuration - rac11g2_dgb&lt;br /&gt;&lt;br /&gt;Protection Mode: MaxPerformance&lt;br /&gt;Databases:&lt;br /&gt;rac11g2  - Primary database&lt;br /&gt;rac11g2s - Physical standby database&lt;br /&gt;&lt;br /&gt;Fast-Start Failover: DISABLED&lt;br /&gt;&lt;br /&gt;Configuration Status:&lt;br /&gt;SUCCESS&lt;/pre&gt;If the status is not success then resolve any issues. Sometimes it is possible to have a warning status &lt;pre&gt;DGMGRL&gt; show configuration&lt;br /&gt;&lt;br /&gt;Configuration - rac11g2_dgb&lt;br /&gt;&lt;br /&gt;Protection Mode: MaxPerformance&lt;br /&gt;Databases:&lt;br /&gt;rac11g2  - Primary database&lt;br /&gt;Warning: ORA-16792: configurable property value is inconsistent with database setting&lt;br /&gt;&lt;br /&gt;rac11g2s - Physical standby database&lt;br /&gt;&lt;br /&gt;Fast-Start Failover: DISABLED&lt;br /&gt;&lt;br /&gt;Configuration Status:&lt;br /&gt;WARNING&lt;/pre&gt;Looking at the error number &lt;pre&gt;oerr ora 16792&lt;br /&gt;16792, 0000, "configurable property value is inconsistent with database setting"&lt;br /&gt;// *Cause:  The values of one or more configurable properties were&lt;br /&gt;//          inconsistent with database in-memory settings or server parameter&lt;br /&gt;//          file settings. This may happen by directly altering initialization&lt;br /&gt;//          parameters instead of editing configurable property values using&lt;br /&gt;//          Data Guard broker.&lt;br /&gt;// *Action: Query the InconsistentProperties property on the database or check&lt;br /&gt;//          the Data Guard broker log to find which properties are set&lt;br /&gt;//          inconsistently. Reset these properties to make them consistent&lt;br /&gt;//          with the database settings. Alternatively, enable the database&lt;br /&gt;//          or the entire configuration to allow the configurable property&lt;br /&gt;//          settings to be propagated to the initialization parameters.&lt;/pre&gt;it was possible to bring all the instance into a consistent state with a database restart&lt;pre&gt;srvctl stop database -d rac11g2&lt;br /&gt;srvctl start database -d rac11g2&lt;br /&gt;&lt;br /&gt;gmgrl&lt;br /&gt;DGMGRL for Linux: Version 11.2.0.2.0 - 64bit Production&lt;br /&gt;&lt;br /&gt;Copyright (c) 2000, 2009, Oracle. All rights reserved.&lt;br /&gt;&lt;br /&gt;Welcome to DGMGRL, type "help" for information.&lt;br /&gt;DGMGRL&gt; connect sys&lt;br /&gt;Password:&lt;br /&gt;Connected.&lt;br /&gt;DGMGRL&gt; show configuration&lt;br /&gt;&lt;br /&gt;Configuration - rac11g2_dgb&lt;br /&gt;&lt;br /&gt;Protection Mode: MaxPerformance&lt;br /&gt;Databases:&lt;br /&gt;rac11g2  - Primary database&lt;br /&gt;rac11g2s - Physical standby database&lt;br /&gt;&lt;br /&gt;Fast-Start Failover: DISABLED&lt;br /&gt;&lt;br /&gt;Configuration Status:&lt;br /&gt;SUCCESS&lt;/pre&gt;8. Check the status of each database in the data guard broker configuration&lt;pre&gt;DGMGRL&gt; show database verbose rac11g2&lt;br /&gt;&lt;br /&gt;Database - rac11g2&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Role:            PRIMARY&lt;br /&gt;Intended State:  TRANSPORT-ON&lt;/span&gt;&lt;br /&gt;Instance(s):&lt;br /&gt;rac11g21&lt;br /&gt;rac11g22&lt;br /&gt;&lt;br /&gt;Properties:&lt;br /&gt;DGConnectIdentifier             = 'rac11g2'&lt;br /&gt;ObserverConnectIdentifier       = ''&lt;br /&gt;LogXptMode                      = 'ASYNC'&lt;br /&gt;DelayMins                       = '0'&lt;br /&gt;Binding                         = 'optional'&lt;br /&gt;MaxFailure                      = '0'&lt;br /&gt;MaxConnections                  = '1'&lt;br /&gt;ReopenSecs                      = '300'&lt;br /&gt;NetTimeout                      = '30'&lt;br /&gt;RedoCompression                 = 'DISABLE'&lt;br /&gt;LogShipping                     = 'ON'&lt;br /&gt;PreferredApplyInstance          = ''&lt;br /&gt;ApplyInstanceTimeout            = '0'&lt;br /&gt;ApplyParallel                   = 'AUTO'&lt;br /&gt;StandbyFileManagement           = 'AUTO'&lt;br /&gt;ArchiveLagTarget                = '0'&lt;br /&gt;LogArchiveMaxProcesses          = '10'&lt;br /&gt;LogArchiveMinSucceedDest        = '1'&lt;br /&gt;DbFileNameConvert               = '+DATA/rac11g2s, +DATA/rac11g2'&lt;br /&gt;LogFileNameConvert              = '+FLASH/rac11g2s, +FLASH/rac11g2, +DATA/rac11g2s, +DATA/rac11g2'&lt;br /&gt;FastStartFailoverTarget         = ''&lt;br /&gt;InconsistentProperties          = '(monitor)'&lt;br /&gt;InconsistentLogXptProps         = '(monitor)'&lt;br /&gt;SendQEntries                    = '(monitor)'&lt;br /&gt;LogXptStatus                    = '(monitor)'&lt;br /&gt;RecvQEntries                    = '(monitor)'&lt;br /&gt;SidName(*)&lt;br /&gt;StaticConnectIdentifier(*)&lt;br /&gt;StandbyArchiveLocation(*)&lt;br /&gt;AlternateLocation(*)&lt;br /&gt;LogArchiveTrace(*)&lt;br /&gt;LogArchiveFormat(*)&lt;br /&gt;TopWaitEvents(*)&lt;br /&gt;(*) - Please check specific instance for the property value&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Database Status:&lt;br /&gt;SUCCESS&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;DGMGRL&gt; show database verbose rac11g2s&lt;br /&gt;&lt;br /&gt;Database - rac11g2s&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;Role:            PHYSICAL STANDBY&lt;br /&gt;Intended State:  APPLY-ON&lt;/span&gt;&lt;br /&gt;Transport Lag:   0 seconds&lt;br /&gt;Apply Lag:       0 seconds&lt;br /&gt;Real Time Query: OFF&lt;br /&gt;Instance(s):&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;rac11g2s1 (apply instance)&lt;/span&gt;&lt;br /&gt;rac11g2s2&lt;br /&gt;&lt;br /&gt;Properties:&lt;br /&gt;DGConnectIdentifier             = 'rac11g2s'&lt;br /&gt;ObserverConnectIdentifier       = ''&lt;br /&gt;LogXptMode                      = 'ASYNC'&lt;br /&gt;DelayMins                       = '0'&lt;br /&gt;Binding                         = 'MANDATORY'&lt;br /&gt;MaxFailure                      = '10'&lt;br /&gt;MaxConnections                  = '5'&lt;br /&gt;ReopenSecs                      = '180'&lt;br /&gt;NetTimeout                      = '30'&lt;br /&gt;RedoCompression                 = 'DISABLE'&lt;br /&gt;LogShipping                     = 'ON'&lt;br /&gt;PreferredApplyInstance          = ''&lt;br /&gt;ApplyInstanceTimeout            = '0'&lt;br /&gt;ApplyParallel                   = 'AUTO'&lt;br /&gt;StandbyFileManagement           = 'AUTO'&lt;br /&gt;ArchiveLagTarget                = '0'&lt;br /&gt;LogArchiveMaxProcesses          = '5'&lt;br /&gt;LogArchiveMinSucceedDest        = '1'&lt;br /&gt;DbFileNameConvert               = '+DATA/rac11g2, +DATA/rac11g2s'&lt;br /&gt;LogFileNameConvert              = '+FLASH/rac11g2, +FLASH/rac11g2s, +DATA/rac11g2, +DATA/rac11g2s'&lt;br /&gt;FastStartFailoverTarget         = ''&lt;br /&gt;InconsistentProperties          = '(monitor)'&lt;br /&gt;InconsistentLogXptProps         = '(monitor)'&lt;br /&gt;SendQEntries                    = '(monitor)'&lt;br /&gt;LogXptStatus                    = '(monitor)'&lt;br /&gt;RecvQEntries                    = '(monitor)'&lt;br /&gt;SidName(*)&lt;br /&gt;StaticConnectIdentifier(*)&lt;br /&gt;StandbyArchiveLocation(*)&lt;br /&gt;AlternateLocation(*)&lt;br /&gt;LogArchiveTrace(*)&lt;br /&gt;LogArchiveFormat(*)&lt;br /&gt;TopWaitEvents(*)&lt;br /&gt;(*) - Please check specific instance for the property value&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Database Status:&lt;br /&gt;SUCCESS&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt;From 11gR2 data guard broker documentation "&lt;span style="font-style: italic;"&gt;If the standby database is an Oracle RAC database, the broker starts Redo Apply on exactly one standby instance, called the apply instance. If this instance fails, the broker automatically chooses another instance that is either mounted or open read-only. This new instance then becomes the apply instance.&lt;/span&gt;"&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Switchover Using Data Guard Broker&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;To test all the configuration parameters are setup properly a switchover will be carried out using the data guard broker. Data guard broker will take care of all the steps that were carried out manually during &lt;a href="http://asanga-pradeep.blogspot.com/2011/02/11gr2-rac-to-rac-switchover.html"&gt;earlier switchover scenario using sql commands.&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;To switchover using data guard broker all that is required is issue the command "switchover to" followed by the database name to switchover to.&lt;pre&gt;DGMGRL&gt; switchover to rac11g2s&lt;br /&gt;Performing switchover NOW, please wait...&lt;br /&gt;New primary database "rac11g2s" is opening...&lt;br /&gt;Operation requires shutdown of instance "rac11g21" on database "rac11g2"&lt;br /&gt;Shutting down instance "rac11g21"...&lt;br /&gt;ORACLE instance shut down.&lt;br /&gt;Operation requires startup of instance "rac11g21" on database "rac11g2"&lt;br /&gt;Starting instance "rac11g21"...&lt;br /&gt;ORACLE instance started.&lt;br /&gt;Database mounted.&lt;br /&gt;Switchover succeeded, new primary is "rac11g2s"&lt;/pre&gt;. At the time issuing this there were two primary instances (rac11g21 and rac11g22) in open read,write mode and two standby instance (rac11g2s1 and rac11g2s2) in mount mode. &lt;br /&gt;&lt;br /&gt;The command was issued from rac11g21 instance and as soon as it was issued rac11g22 was shutdown by the data guard broker(with shutdown abort) as seen from rac11g22 alert log&lt;pre&gt;Thu Feb 24 15:35:50 2011&lt;br /&gt;Shutting down instance (abort)&lt;br /&gt;License high water mark = 5&lt;br /&gt;USER (ospid: 22346): terminating the instance&lt;br /&gt;Instance terminated by USER, pid = 22346&lt;br /&gt;Thu Feb 24 15:35:50 2011&lt;br /&gt;Instance shutdown complete&lt;/pre&gt;rac11g21 disconnect all the sessions and commit to switchover with session shutdown as seen from rac11g21 alert log (only partial information is shown here, not all the entries generated at the time of switchover)&lt;pre&gt;Thu Feb 24 15:35:53 2011&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;ALTER DATABASE COMMIT TO SWITCHOVER TO PHYSICAL STANDBY WITH SESSION SHUTDOWN&lt;/span&gt;&lt;br /&gt;ALTER DATABASE COMMIT TO SWITCHOVER TO PHYSICAL STANDBY [Process Id: 26886] (rac11g21)&lt;br /&gt;Thu Feb 24 15:35:53 2011&lt;br /&gt;Thread 1 advanced to log sequence 184 (LGWR switch)&lt;br /&gt;Current log# 1 seq# 184 mem# 0: +DATA/rac11g2/onlinelog/group_1.261.740770161&lt;br /&gt;Current log# 1 seq# 184 mem# 1: +FLASH/rac11g2/onlinelog/group_1.257.740770161&lt;br /&gt;Thu Feb 24 15:35:53 2011&lt;br /&gt;Stopping background process CJQ0&lt;br /&gt;Stopping background process QMNC&lt;br /&gt;Thu Feb 24 15:35:54 2011&lt;br /&gt;Archived Log entry 541 added for thread 2 sequence 173 ID 0x16d1ac74 dest 10:&lt;br /&gt;All dispatchers and shared servers shutdown&lt;br /&gt;CLOSE: killing server sessions.&lt;br /&gt;Active process 32445 user 'oracle' program 'oracle@rac4.domain.net (W000)'&lt;br /&gt;Active process 32445 user 'oracle' program 'oracle@rac4.domain.net (W000)'&lt;br /&gt;Active process 437 user 'oracle' program 'oracle@rac4.domain.net (TNS V1-V3)'&lt;br /&gt;Active process 32445 user 'oracle' program 'oracle@rac4.domain.net (W000)'&lt;br /&gt;..&lt;br /&gt;..&lt;br /&gt;Switchover: Complete - Database shutdown required&lt;br /&gt;Completed: &lt;span style="font-weight:bold;"&gt;ALTER DATABASE COMMIT TO SWITCHOVER TO PHYSICAL STANDBY WITH SESSION SHUTDOWN&lt;/span&gt;&lt;/pre&gt;Once the shutdown is complete rac11g21 is started as the new standby and log apply process is started&lt;pre&gt;ALTER SYSTEM SET fal_server='rac11g2s' SCOPE=BOTH;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;ALTER DATABASE RECOVER MANAGED STANDBY DATABASE  THROUGH ALL SWITCHOVER DISCONNECT  USING CURRENT LOGFILE&lt;/span&gt;&lt;br /&gt;Attempt to start background Managed Standby Recovery process (rac11g21)&lt;br /&gt;Thu Feb 24 15:36:29 2011&lt;br /&gt;MRP0 started with pid=64, OS id=719&lt;br /&gt;MRP0: Background Managed Standby Recovery process started (rac11g21)&lt;br /&gt;started logmerger process&lt;br /&gt;Thu Feb 24 15:36:34 2011&lt;br /&gt;Managed Standby Recovery starting Real Time Apply&lt;br /&gt;Parallel Media Recovery started with 2 slaves&lt;br /&gt;Waiting for all non-current ORLs to be archived...&lt;br /&gt;All non-current ORLs have been archived.&lt;br /&gt;Clearing online redo logfile 1 +DATA/rac11g2/onlinelog/group_1.261.740770161&lt;br /&gt;Clearing online log 1 of thread 1 sequence number 189&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Completed: ALTER DATABASE RECOVER MANAGED STANDBY DATABASE  THROUGH ALL SWITCHOVER DISCONNECT  USING CURRENT LOGFILE&lt;/span&gt;&lt;br /&gt;Clearing online redo logfile 1 complete&lt;/pre&gt;The other instance in this new standby (old primary) is also stated in the mount mode.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;While the above is going on there's activity on the old standby (rac11g2s, new primary) as well. As soon as the switchover command is issued the apply instance (rac11g2s1) at standby disconnect from the primary and stop the log apply process &lt;pre&gt;Thu Feb 24 16:36:47 2011&lt;br /&gt;RFS[11]: Possible network disconnect with primary database&lt;br /&gt;Thu Feb 24 16:36:47 2011&lt;br /&gt;RFS[9]: Possible network disconnect with primary database&lt;br /&gt;Thu Feb 24 16:36:47 2011&lt;br /&gt;RFS[7]: Possible network disconnect with primary database&lt;br /&gt;Thu Feb 24 16:36:47 2011&lt;br /&gt;RFS[8]: Possible network disconnect with primary database&lt;br /&gt;Thu Feb 24 16:36:47 2011&lt;br /&gt;RFS[14]: Assigned to RFS process 29873&lt;br /&gt;RFS[14]: Possible network disconnect with primary database&lt;br /&gt;..&lt;br /&gt;..&lt;br /&gt;Resetting standby activation ID 382839924 (0x16d1ac74)&lt;br /&gt;Thu Feb 24 16:36:56 2011&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL&lt;/span&gt;&lt;br /&gt;Media Recovery Waiting for thread 1 sequence 185&lt;br /&gt;MRP0: Background Media Recovery cancelled with status 16037&lt;/pre&gt;Once this completes it switchover to the primary database role and open the database&lt;pre&gt;MRP0: Background Media Recovery process shutdown (rac11g2s1)&lt;br /&gt;Managed Standby Recovery Canceled (rac11g2s1)&lt;br /&gt;Completed: ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL&lt;br /&gt;ALTER DATABASE COMMIT TO SWITCHOVER TO PRIMARY WAIT WITH SESSION SHUTDOWN&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;ALTER DATABASE SWITCHOVER TO PRIMARY &lt;/span&gt;(rac11g2s1)&lt;br /&gt;Maximum wait for role transition is 15 minutes.&lt;/pre&gt;As soon as the switchover is complete other instances in the (old)standby are also brought up in open mode and the new primary is available for use. Following from the rac11g2s2 alert log&lt;pre&gt;Thu Feb 24 16:36:56 2011&lt;br /&gt;Managed Standby Recovery not using Real Time Apply&lt;br /&gt;Switchover: Complete - Database mounted as primary&lt;br /&gt;Thu Feb 24 16:37:02 2011&lt;br /&gt;ALTER DATABASE OPEN&lt;br /&gt;Data Guard Broker initializing...&lt;br /&gt;Picked broadcast on commit scheme to generate SCNs&lt;/pre&gt;Checking the new configuration&lt;pre&gt;DGMGRL&gt; show configuration&lt;br /&gt;&lt;br /&gt;Configuration - rac11g2_dgb&lt;br /&gt;&lt;br /&gt;Protection Mode: MaxPerformance&lt;br /&gt;Databases:&lt;br /&gt;rac11g2s - Primary database&lt;br /&gt;rac11g2  - Physical standby database&lt;br /&gt;&lt;br /&gt;Fast-Start Failover: DISABLED&lt;br /&gt;&lt;br /&gt;Configuration Status:&lt;br /&gt;SUCCESS&lt;br /&gt;&lt;br /&gt;DGMGRL&gt; show database verbose rac11g2&lt;br /&gt;&lt;br /&gt;Database - rac11g2&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Role:            PHYSICAL STANDBY&lt;br /&gt;Intended State:  APPLY-ON&lt;/span&gt;&lt;br /&gt;Transport Lag:   0 seconds&lt;br /&gt;Apply Lag:       0 seconds&lt;br /&gt;Real Time Query: OFF&lt;br /&gt;Instance(s):&lt;br /&gt;&lt;span style="font-weight:bold;"&gt; rac11g21 (apply instance)&lt;/span&gt;&lt;br /&gt;rac11g22&lt;br /&gt;..&lt;br /&gt;..&lt;br /&gt;&lt;/pre&gt;&lt;a href="working ok http://asanga-pradeep.blogspot.com/2010/01/vip-dataguard-broker-rac.html"&gt;Unlike 11gR1 configuration&lt;/a&gt; 11gR2 does use the VIPs for StaticConnectIdentifier.&lt;br /&gt;&lt;script type="text/javascript"&gt;&lt;!--google_ad_client = "ca-pub-5510817526739610";/* leadborad */google_ad_slot = "9860710817";google_ad_width = 728;google_ad_height = 90;//--&gt;&lt;/script&gt;&lt;br /&gt;&lt;script type="text/javascript"        src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2414933436751311863-6396133858294669810?l=asanga-pradeep.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/6396133858294669810'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2414933436751311863/posts/default/6396133858294669810'/><link rel='alternate' type='text/html' href='http://asanga-pradeep.blogspot.com/2011/02/data-guard-broker-for-11gr2.html' title='Data Guard Broker for 11gR2'/><author><name>Asanga</name><uri>http://www.blogger.com/profile/06917616787415349832</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_90fhbVRwXDU/TECqZgHU0eI/AAAAAAAAAIo/hwI2BMzwDcI/S220/profile.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-2414933436751311863.post-3499432382353566472</id><published>2011-02-23T06:54:00.000-08:00</pub
