<?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-6897144177599049811</id><updated>2012-02-13T01:13:39.899-08:00</updated><category term='Oracle Dataguards'/><category term='Oracle Performance'/><category term='Oracle clusterware'/><category term='Oracle upgrades(9i'/><category term='Oracle DB Administration'/><category term='11g..)'/><category term='11g New Features'/><category term='Management'/><category term='Book'/><category term='10g'/><category term='Solaris Kernel Configuration - Oracle'/><category term='Real Application Clusters'/><category term='Oracle ASM'/><category term='My home town - Goa'/><title type='text'>Ashak Ali Khan</title><subtitle type='html'>B.E. (Computers),MBA,OCP,OCE</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://ashakkhan.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://ashakkhan.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Ashak Ali Khan</name><uri>http://www.blogger.com/profile/02783946057420260374</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_1rApOiGy_ns/Sa0sDHWokDI/AAAAAAAAAXQ/fQut2UPtxgY/S220/Ashak_Khan.bmp'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>39</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-6897144177599049811.post-5444369950563174747</id><published>2012-02-13T01:13:00.000-08:00</published><updated>2012-02-13T01:13:39.903-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Oracle clusterware'/><title type='text'>CSS Timeout Computation in Oracle Clusterware</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;The CSS misscount parameter represents the maximum time, in seconds, that a network heartbeat can be missed before entering into a cluster reconfiguration to evict the node. The following are the default values for the misscount parameter and their respective versions when using Oracle Clusterware* in seconds:&lt;br /&gt;OS&amp;nbsp; 10g (R1 &amp;amp;R2) 11g&amp;nbsp; &lt;br /&gt;Linux&amp;nbsp;60&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;30&lt;br /&gt;Unix&amp;nbsp;30&amp;nbsp;30 &lt;br /&gt;VMS&amp;nbsp;30&amp;nbsp;30&lt;br /&gt;&amp;nbsp;Windows&amp;nbsp;30&amp;nbsp;30&lt;br /&gt;&lt;br /&gt;*CSS misscount default value when using vendor (non-Oracle) clusterware is 600 seconds. This is to allow the vendor clusterware ample time to resolve any possible split brain scenarios.&lt;br /&gt;&lt;br /&gt;CSS HEARTBEAT MECHANISMS AND THEIR INTERRELATIONSHIP&lt;br /&gt;The synchronization services component (CSS) of the Oracle Clusterware maintains two heartbeat mechanisms&lt;br /&gt;&amp;nbsp;1.) the disk heartbeat to the voting device and &lt;br /&gt;&amp;nbsp;2.) the network heartbeat&amp;nbsp; across the interconnect which establish and confirm valid node membership in the cluster.&lt;br /&gt;&amp;nbsp;Both of these heartbeat mechanisms have an associated timeout value. The disk heartbeat has an internal i/o timeout interval (DTO Disk TimeOut), in seconds, where an i/o to the voting disk must complete. The misscount parameter (MC), as stated above, is the maximum time, in seconds, that a network heartbeat&amp;nbsp; can be missed. The disk heartbeat i/o timeout interval is directly related to the misscount parameter setting. There has been some variation in this relationship &lt;br /&gt;between versions as described below:&lt;br /&gt;9.x.x.x&lt;br /&gt;&amp;nbsp;NOTE, MISSCOUNT WAS A&amp;nbsp; DIFFERENT ENTITY IN THIS RELEASE &lt;br /&gt;10.1.0.2&lt;br /&gt;&amp;nbsp;No one should be on this version &lt;br /&gt;10.1.0.3&lt;br /&gt;&amp;nbsp;DTO = MC - 15 seconds &lt;br /&gt;10.1.0.4&lt;br /&gt;&amp;nbsp;DTO = MC - 15 seconds &lt;br /&gt;10.1.0.4+Unpublished Bug 3306964 &lt;br /&gt;&amp;nbsp;DTO = MC - 3 seconds &lt;br /&gt;10.1.0.4 with CRS II Merge patch &lt;br /&gt;&amp;nbsp;DTO =Disktimeout (Defaults to 200 seconds) Normally OR Misscount seconds only during initial Cluster formation or Slightly before reconfiguration &lt;br /&gt;10.1.0.5&lt;br /&gt;&amp;nbsp;IOT = MC - 3 seconds &lt;br /&gt;10.2.0.1 +Fix for unpublished Bug 4896338&lt;br /&gt;&amp;nbsp;IOT=Disktimeout (Defaults to 200 seconds) Normally OR Misscount seconds only during initial Cluster formation or Slightly before reconfiguration&lt;br /&gt;&lt;br /&gt;10.2.0.2&lt;br /&gt;&amp;nbsp;Same as above (10.2.0.1 with Patch Bug:4896338&lt;br /&gt;&lt;br /&gt;10.1 - 11.2&lt;br /&gt;&amp;nbsp;During node join and leave (reconfiguration) in a cluster we need to reconfigure, in that particular case we use Short Disk TimeOut (SDTO) which is in all versions SDTO = MC – reboottime (usually 3 seconds) &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Misscount drives cluster membership reconfigurations and directly effects the availability of the cluster. In most cases, the default settings for MC should be acceptable.&amp;nbsp; Modifying the default value of misscount not only influences the timeout interval for the i/o to the voting disk, but also influences the tolerance for missed network heartbeats across the interconnect.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6897144177599049811-5444369950563174747?l=ashakkhan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ashakkhan.blogspot.com/feeds/5444369950563174747/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6897144177599049811&amp;postID=5444369950563174747' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/5444369950563174747'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/5444369950563174747'/><link rel='alternate' type='text/html' href='http://ashakkhan.blogspot.com/2012/02/css-timeout-computation-in-oracle.html' title='CSS Timeout Computation in Oracle Clusterware'/><author><name>Ashak Ali Khan</name><uri>http://www.blogger.com/profile/02783946057420260374</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_1rApOiGy_ns/Sa0sDHWokDI/AAAAAAAAAXQ/fQut2UPtxgY/S220/Ashak_Khan.bmp'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6897144177599049811.post-6205626879446370803</id><published>2012-02-07T03:45:00.000-08:00</published><updated>2012-02-08T05:49:34.726-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Oracle Performance'/><title type='text'>Tuning using SQL Tuning advisor</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;, Courier, monospace;"&gt;Tuning for SQL_ID=d86a5g6dm7shd using SQL Tuning advisor&lt;br /&gt;1) Use SQL_TEXT or SQL_ID to define tuning task&lt;br /&gt;DECLARE&lt;br /&gt;&amp;nbsp; l_sql_tune_task_id&amp;nbsp; VARCHAR2(100);&lt;br /&gt;BEGIN&lt;br /&gt;&amp;nbsp; l_sql_tune_task_id := DBMS_SQLTUNE.create_tuning_task (&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sql_id&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; =&amp;gt;&amp;nbsp;&amp;nbsp; 'd86a5g6dm7shd',&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; scope&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; =&amp;gt; DBMS_SQLTUNE.scope_comprehensive,&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; time_limit&amp;nbsp; =&amp;gt; 300,&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; task_name&amp;nbsp;&amp;nbsp; =&amp;gt; 'd86a5g6dm7shd_tuning_task',&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; description =&amp;gt; 'Tuning task for statement d86a5g6dm7shd.');&lt;br /&gt;&amp;nbsp; DBMS_OUTPUT.put_line('l_sql_tune_task_id: ' || l_sql_tune_task_id);&lt;br /&gt;END;&lt;br /&gt;2) Execute the tuning task&lt;br /&gt;EXEC DBMS_SQLTUNE.execute_tuning_task( task_name&amp;nbsp;&amp;nbsp; =&amp;gt; 'd86a5g6dm7shd_tuning_task');&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;, Courier, monospace;"&gt;3) Check status of tuning task&lt;br /&gt;SELECT task_name, status FROM dba_advisor_log WHERE task_name='d86a5g6dm7shd_tuning_task';&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;, Courier, monospace;"&gt;4) Report of tuning task&lt;br /&gt;SET LONG 10000;&lt;br /&gt;SET PAGESIZE 1000&lt;br /&gt;SET LINESIZE 200&lt;br /&gt;SELECT DBMS_SQLTUNE.report_tuning_task('d86a5g6dm7shd_tuning_task') AS recommendations FROM dual;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;, Courier, monospace;"&gt;5) Drop the define tuning task&lt;br /&gt;exec&amp;nbsp; DBMS_SQLTUNE.drop_tuning_task (task_name =&amp;gt; 'd86a5g6dm7shd_tuning_task');&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;, Courier, monospace;"&gt;Another eg using sql text&lt;br /&gt;1. Create the tuning task:&lt;br /&gt;&amp;nbsp;&amp;nbsp; declare&lt;br /&gt;&amp;nbsp;&amp;nbsp; stmt_task VARCHAR2(64);&lt;br /&gt;&amp;nbsp;&amp;nbsp; begin&lt;br /&gt;&amp;nbsp;&amp;nbsp; stmt_task := DBMS_SQLTUNE.CREATE_TUNING_TASK(sql_text =&amp;gt; 'select * from service_subscriptions s2 where s2.group_code = ''MEH'' and&amp;nbsp; tss_id not in (''800'', ''93'', ''939'', ''9341'')', task_name =&amp;gt; 'SRVC_SUB_TUNING');&lt;br /&gt;&amp;nbsp;&amp;nbsp; end;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;, Courier, monospace;"&gt;2. Execute the tuning task:&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; exec DBMS_SQLTUNE.EXECUTE_TUNING_TASK(task_name =&amp;gt; 'SRVC_SUB_TUNING');&lt;br /&gt;&lt;br /&gt;3. After the execution finishes display result(Connect as system user):&lt;br /&gt;&amp;nbsp;&amp;nbsp; SET LONG 10000;&lt;br /&gt;&amp;nbsp;&amp;nbsp; SET PAGESIZE 1000&lt;br /&gt;&amp;nbsp;&amp;nbsp; SET LINESIZE 200&lt;br /&gt;&amp;nbsp;&amp;nbsp; SELECT DBMS_SQLTUNE.REPORT_TUNING_TASK('SRVC_SUB_TUNING') from dual;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6897144177599049811-6205626879446370803?l=ashakkhan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ashakkhan.blogspot.com/feeds/6205626879446370803/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6897144177599049811&amp;postID=6205626879446370803' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/6205626879446370803'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/6205626879446370803'/><link rel='alternate' type='text/html' href='http://ashakkhan.blogspot.com/2012/02/tuning-using-sql-tuning-advisor.html' title='Tuning using SQL Tuning advisor'/><author><name>Ashak Ali Khan</name><uri>http://www.blogger.com/profile/02783946057420260374</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_1rApOiGy_ns/Sa0sDHWokDI/AAAAAAAAAXQ/fQut2UPtxgY/S220/Ashak_Khan.bmp'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6897144177599049811.post-5853326944841476632</id><published>2012-02-06T05:24:00.000-08:00</published><updated>2012-02-06T05:24:02.490-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Management'/><title type='text'>7 Habits of Highly Effective People</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;Habit 1: Be Proactive&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; The Habit of Choice&lt;br /&gt;Habit 2: BeginWith the End in Mind&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; The Habit of Vision&lt;br /&gt;Habit 3: Put First Things First&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; The Habit of Integrity and Execution&lt;br /&gt;Habit 4:ThinkWin-Win&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; The Habit of Mutual Benefit&lt;br /&gt;Habit 5: Seek First to Understand, Then to Be Understood&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; The Habit of Mutual Understanding&lt;br /&gt;Habit 6: Synergize&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; The Habit of Creative Cooperation&lt;br /&gt;Habit 7: Sharpen the Saw&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; The Habit of Renewal &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6897144177599049811-5853326944841476632?l=ashakkhan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ashakkhan.blogspot.com/feeds/5853326944841476632/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6897144177599049811&amp;postID=5853326944841476632' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/5853326944841476632'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/5853326944841476632'/><link rel='alternate' type='text/html' href='http://ashakkhan.blogspot.com/2012/02/7-habits-of-highly-effective-people.html' title='7 Habits of Highly Effective People'/><author><name>Ashak Ali Khan</name><uri>http://www.blogger.com/profile/02783946057420260374</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_1rApOiGy_ns/Sa0sDHWokDI/AAAAAAAAAXQ/fQut2UPtxgY/S220/Ashak_Khan.bmp'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6897144177599049811.post-6372412483370625273</id><published>2012-02-06T05:19:00.000-08:00</published><updated>2012-02-07T00:30:19.661-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Oracle clusterware'/><title type='text'>CVU IPMP Group Consistency Check Failure - 11.2.0.3</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;pre&gt;&lt;span style="font-family: Palatino-Roman;"&gt;&lt;span style="font-family: Palatino-Roman;"&gt;&lt;div align="left"&gt;&lt;br /&gt;&lt;span style="font-family: Times, &amp;quot;Times New Roman&amp;quot;, serif; font-size: x-small;"&gt;If you install Oracle Grid Infrastructure on a cluster that has Active-Passive IPMP &lt;/span&gt;&lt;span style="font-family: Times, &amp;quot;Times New Roman&amp;quot;, serif; font-size: x-small;"&gt;configured, then the prerequisite check for Oracle Solaris IPMP group fail-over &lt;/span&gt;&lt;span style="font-family: Times, &amp;quot;Times New Roman&amp;quot;, serif; font-size: x-small;"&gt;consistency may fail.&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: Times, &amp;quot;Times New Roman&amp;quot;, serif; font-size: x-small;"&gt;Solaris IPMP group fail-over consistency check - This is a check to verify the current selection of public and private network classifications is consistent with network interfaces in fail-over dependency of an IPMP group&lt;br /&gt;  Check Failed on Nodes: [mps033,  mps039]  &lt;br /&gt;Verification result of failed node: mps033 &lt;br /&gt; Details: &lt;br /&gt; - &lt;br /&gt;PRVG-1509 : IPMP fail-over group "PRODUCTION" with interface list "nxge3,nxge7" on node "mps033" has interfaces "nxge7" which are not part of current public network classifications "nxge3/10.64.238.0"  - Cause:  Found an additional fail-over dependency on an interface in an IPMP group which is not classified as a public interface on the identified node.  - Action:  Ensure that all the identified non-participating network interfaces in the IPMP group are classified as public network interface on the identified node. Use command 'oifcfg setif {-node &amp;lt;nodename&amp;gt; | -global} {&amp;lt;if_name&amp;gt;/&amp;lt;subnet&amp;gt;:public}' to classify the network interface as public. &lt;br /&gt;Back to Top  &lt;br /&gt;Verification result of failed node: mps039 &lt;br /&gt; Details: &lt;br /&gt; - &lt;br /&gt;PRVG-1509 : IPMP fail-over group "PRODUCTION" with interface list "nxge3,nxge7" on node "mps039" has interfaces "nxge7" which are not part of current public network classifications "nxge3/10.64.238.0"  - Cause:  Found an additional fail-over dependency on an interface in an IPMP group which is not classified as a public interface on the identified node.  - Action:  Ensure that all the identified non-participating network interfaces in the IPMP group are classified as public network interface on the identified node. Use command 'oifcfg setif {-node &amp;lt;nodename&amp;gt; | -global} {&amp;lt;if_name&amp;gt;/&amp;lt;subnet&amp;gt;:public}' to classify the network interface as public.&lt;br /&gt;&lt;br /&gt;Workaround: Ignore and continue installation. After installation as root:&lt;br /&gt;If the interface is available on the server, subnet address can be identified by command:&lt;br /&gt;oifcfg iflist&lt;br /&gt;/oracle/sgwgrid/11.2.0.3/bin/crsctl/srvctl modify nodeapps -S '10.64.238.0/255.255.254.0/nxge3|nxge7'&lt;br /&gt;oifcfg setif -global nxge3/10.64.238.0:public&lt;br /&gt;oifcfg setif -global nxge7/10.64.238.0:public&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6897144177599049811-6372412483370625273?l=ashakkhan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ashakkhan.blogspot.com/feeds/6372412483370625273/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6897144177599049811&amp;postID=6372412483370625273' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/6372412483370625273'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/6372412483370625273'/><link rel='alternate' type='text/html' href='http://ashakkhan.blogspot.com/2012/02/ipmp-solaris-error-for-public.html' title='CVU IPMP Group Consistency Check Failure - 11.2.0.3'/><author><name>Ashak Ali Khan</name><uri>http://www.blogger.com/profile/02783946057420260374</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_1rApOiGy_ns/Sa0sDHWokDI/AAAAAAAAAXQ/fQut2UPtxgY/S220/Ashak_Khan.bmp'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6897144177599049811.post-4924173267107245624</id><published>2012-02-05T00:11:00.001-08:00</published><updated>2012-02-05T00:11:58.038-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Oracle upgrades(9i'/><title type='text'>Oracle Multimedia  invalid after upgrade from 10.2.0.4 to 11.2.0.3</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;Oracle Multimedia&amp;nbsp; invalid after upgrade from 10.2.0.4 to 11.2.0.3&lt;br /&gt;&lt;br /&gt;fix:&lt;br /&gt;&lt;br /&gt;sqlplus / as sysdba&lt;br /&gt;&lt;br /&gt;startup upgrade&lt;br /&gt;/*replace the version 10.2.0.4 in the dbms_registry.loaded&lt;br /&gt;command with the version from which the database has been upgraded&lt;br /&gt;*/&lt;br /&gt;&lt;br /&gt;EXECUTE dbms_registry.loaded('ORDIM','10.2.0.4'); &lt;br /&gt;&lt;br /&gt;spool Oracle_Multimedia.log&lt;br /&gt;&lt;br /&gt;@&amp;lt;Oracle_11g_Home&amp;gt;/ord/im/admin/imdbmig.sql&amp;nbsp; &lt;br /&gt;&lt;br /&gt;shutdown immediate&lt;br /&gt;&lt;br /&gt;startup&lt;br /&gt;?/rdbms/admin/utlrp.sql&lt;br /&gt;&lt;br /&gt;check now status should be valid&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6897144177599049811-4924173267107245624?l=ashakkhan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ashakkhan.blogspot.com/feeds/4924173267107245624/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6897144177599049811&amp;postID=4924173267107245624' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/4924173267107245624'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/4924173267107245624'/><link rel='alternate' type='text/html' href='http://ashakkhan.blogspot.com/2012/02/oracle-multimedia-invalid-after-upgrade.html' title='Oracle Multimedia  invalid after upgrade from 10.2.0.4 to 11.2.0.3'/><author><name>Ashak Ali Khan</name><uri>http://www.blogger.com/profile/02783946057420260374</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_1rApOiGy_ns/Sa0sDHWokDI/AAAAAAAAAXQ/fQut2UPtxgY/S220/Ashak_Khan.bmp'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6897144177599049811.post-8261301269541245798</id><published>2012-02-05T00:08:00.000-08:00</published><updated>2012-02-05T00:08:54.315-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Oracle upgrades(9i'/><title type='text'></title><content type='html'>while upgrade from 11.1.0.7 to 11.2.0.2&lt;br /&gt;there was slowness in dbua taking more than 15 hours. After truncating SYS.AUD$&lt;br /&gt;and noarchivelog mode , dbua completed in less than a hour.&lt;br /&gt;&lt;br /&gt;Some possible reasons which will fix the issue:&lt;br /&gt;- Truncate large SYS.AUD$ or SYS.FGA_LOG$ table&lt;br /&gt;- database in archivelog mode(Upgrade in noarchivelog mode)&lt;br /&gt;- flashback database logging on&lt;br /&gt;- database triggers (i.e. if you do ddl auditing)&lt;br /&gt;- maybe also disable change block tracking &lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6897144177599049811-8261301269541245798?l=ashakkhan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ashakkhan.blogspot.com/feeds/8261301269541245798/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6897144177599049811&amp;postID=8261301269541245798' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/8261301269541245798'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/8261301269541245798'/><link rel='alternate' type='text/html' href='http://ashakkhan.blogspot.com/2012/02/while-upgrade-from-11.html' title=''/><author><name>Ashak Ali Khan</name><uri>http://www.blogger.com/profile/02783946057420260374</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_1rApOiGy_ns/Sa0sDHWokDI/AAAAAAAAAXQ/fQut2UPtxgY/S220/Ashak_Khan.bmp'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6897144177599049811.post-3919651722527408759</id><published>2011-11-13T22:57:00.000-08:00</published><updated>2011-11-13T23:01:12.696-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Book'/><title type='text'>Oracle Integration Migration Book</title><content type='html'>&lt;a href="http://2.bp.blogspot.com/-c6S9PmItYlc/TsC8lSju1DI/AAAAAAAAAeA/l23HfoS9pjw/s1600/Oracle%2BIntegration%2BMigration%2BBook.png"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 320px; height: 221px;" src="http://2.bp.blogspot.com/-c6S9PmItYlc/TsC8lSju1DI/AAAAAAAAAeA/l23HfoS9pjw/s320/Oracle%2BIntegration%2BMigration%2BBook.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5674742879309714482" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6897144177599049811-3919651722527408759?l=ashakkhan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ashakkhan.blogspot.com/feeds/3919651722527408759/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6897144177599049811&amp;postID=3919651722527408759' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/3919651722527408759'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/3919651722527408759'/><link rel='alternate' type='text/html' href='http://ashakkhan.blogspot.com/2011/11/oracle-integration-migration-book.html' title='Oracle Integration Migration Book'/><author><name>Ashak Ali Khan</name><uri>http://www.blogger.com/profile/02783946057420260374</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_1rApOiGy_ns/Sa0sDHWokDI/AAAAAAAAAXQ/fQut2UPtxgY/S220/Ashak_Khan.bmp'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/-c6S9PmItYlc/TsC8lSju1DI/AAAAAAAAAeA/l23HfoS9pjw/s72-c/Oracle%2BIntegration%2BMigration%2BBook.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6897144177599049811.post-2014300800068795998</id><published>2011-06-06T23:10:00.001-07:00</published><updated>2011-06-06T23:10:57.607-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Oracle Dataguards'/><title type='text'>Checking dataguard IO Bottleneck</title><content type='html'>IO Bottleneck&lt;br /&gt;=============================&lt;br /&gt;At the and of applying a log (log switch) ==&gt; a Standby database instance performs a complete checkpoint&lt;br /&gt;The database instance will update headers of ALL datafiles comprising the database as well as all copies of the control file&lt;br /&gt;in case there is an IO bottle neck ==&gt; this could result in a slow performance of Managed Recovery in the Standby database&lt;br /&gt;&lt;br /&gt;Standby: SQL &gt; select process, block#, blocks from v$managed_standby where process='MRP0'&lt;br /&gt;&lt;br /&gt;If you see that Managed Recover is stuck at the block# ==&gt; (blocks - 1) &lt;br /&gt;==&gt; this indicated that the Standby has issues related to this bottle neck&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6897144177599049811-2014300800068795998?l=ashakkhan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ashakkhan.blogspot.com/feeds/2014300800068795998/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6897144177599049811&amp;postID=2014300800068795998' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/2014300800068795998'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/2014300800068795998'/><link rel='alternate' type='text/html' href='http://ashakkhan.blogspot.com/2011/06/checking-dataguard-io-bottleneck.html' title='Checking dataguard IO Bottleneck'/><author><name>Ashak Ali Khan</name><uri>http://www.blogger.com/profile/02783946057420260374</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_1rApOiGy_ns/Sa0sDHWokDI/AAAAAAAAAXQ/fQut2UPtxgY/S220/Ashak_Khan.bmp'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6897144177599049811.post-4907007779570840185</id><published>2010-12-13T04:58:00.000-08:00</published><updated>2010-12-13T04:59:18.883-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Real Application Clusters'/><title type='text'>cleaning failed oracle clusterware</title><content type='html'>How to Clean Up After a Failed 10g or 11.1 Oracle Clusterware Installation [ID 239998.1]&lt;br /&gt;&lt;br /&gt;NOTE:942166.1 - How to Proceed from Failed 11gR2 Grid Infrastructure (CRS) Installation&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6897144177599049811-4907007779570840185?l=ashakkhan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ashakkhan.blogspot.com/feeds/4907007779570840185/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6897144177599049811&amp;postID=4907007779570840185' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/4907007779570840185'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/4907007779570840185'/><link rel='alternate' type='text/html' href='http://ashakkhan.blogspot.com/2010/12/cleaning-failed-oracle-clusterware.html' title='cleaning failed oracle clusterware'/><author><name>Ashak Ali Khan</name><uri>http://www.blogger.com/profile/02783946057420260374</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_1rApOiGy_ns/Sa0sDHWokDI/AAAAAAAAAXQ/fQut2UPtxgY/S220/Ashak_Khan.bmp'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6897144177599049811.post-8538680520302082359</id><published>2010-09-27T23:46:00.000-07:00</published><updated>2010-09-27T23:49:52.413-07:00</updated><title type='text'>EMC SRDF (Storage ) Replication for  11g DB with  ASM   on AIX</title><content type='html'>EMC SRDF (Storage ) Replication for  11g DB with  ASM   on AIX &lt;br /&gt;Source :Server1&lt;br /&gt;Asm_dsk001--&gt; hdiskpower111-- &gt;DEVICE ID= 04FD --&gt; It contain say datafiles of DB&lt;br /&gt;Asm_dsk002--&gt; hdiskpower221-- &gt;DEVICE ID= 01FD --&gt; It contain say redofiles of DB&lt;br /&gt;&lt;br /&gt;Target:  Server2&lt;br /&gt;Asm_dsk001 --&gt;  hdiskpower991--&gt;DEVICE ID= 04AC--&gt; It contain say datafiles of DB&lt;br /&gt;Asm_dsk002 --&gt; hdiskpower881 --&gt;DEVICE ID= 01BD--&gt; It contain say redofiles of DB&lt;br /&gt;So in Replication by Storage: Map device ID 04FD= 04AC and 01FD=01BD mirror copy&lt;br /&gt;And create asm character device 1 point to 04AC and 2 to 01BD ie order of character devices&lt;br /&gt;should be maintain same order as source to contain same data else it will throw missing disk error&lt;br /&gt; at mount. &lt;br /&gt;&lt;br /&gt;If you do on target as below it would throw missing disk at mount:&lt;br /&gt;&lt;br /&gt;Target:  Server2&lt;br /&gt;Asm_dsk001 --&gt; hdiskpower881 --&gt;DEVICE ID= 01BD--&gt; It contain say redofiles of DB&lt;br /&gt;Asm_dsk002 --&gt;  hdiskpower991--&gt;DEVICE ID= 04AC--&gt; It contain say datafiles of DB&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6897144177599049811-8538680520302082359?l=ashakkhan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ashakkhan.blogspot.com/feeds/8538680520302082359/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6897144177599049811&amp;postID=8538680520302082359' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/8538680520302082359'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/8538680520302082359'/><link rel='alternate' type='text/html' href='http://ashakkhan.blogspot.com/2010/09/emc-srdf-storage-replication-for-11g-db.html' title='EMC SRDF (Storage ) Replication for  11g DB with  ASM   on AIX'/><author><name>Ashak Ali Khan</name><uri>http://www.blogger.com/profile/02783946057420260374</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_1rApOiGy_ns/Sa0sDHWokDI/AAAAAAAAAXQ/fQut2UPtxgY/S220/Ashak_Khan.bmp'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6897144177599049811.post-9128043071603845735</id><published>2010-09-26T23:48:00.000-07:00</published><updated>2010-09-26T23:51:43.235-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Oracle DB Administration'/><title type='text'>Support Articles ID for Current schedule DB release DB and OCR recovery</title><content type='html'>Release Schedule of Current Database Releases  refer note [ID 742060.1]&lt;br /&gt;&lt;br /&gt;How to restore ASM based OCR after complete loss of the CRS diskgroup [ID 1062983.1]&lt;br /&gt;How To Rename A Diskgroup On ASM 11gR2? [ID 948040.1]&lt;br /&gt;A diskgroup can only be dropped if it can be mounted.&lt;br /&gt;If you cannot mount it anymore (like in your case) the only way to 'delete' the diskgroup is to clean up the involved devices &lt;br /&gt;using OS command 'dd'.&lt;br /&gt;&lt;br /&gt;An example for this cleanup task is:&lt;br /&gt;&lt;br /&gt;   # dd if=/dev/zero of=/dev/&lt;device_name&gt; bs=1M count=100&lt;br /&gt;&lt;br /&gt;It is sufficient to cleanup the first 100 MB on each affected devices. After all devices are cleaned in that way the diskgroup is not longer existing&lt;br /&gt;and can be re-created using the clean devices.&lt;br /&gt;&lt;br /&gt;After the diskgroup is re-created you can restore OCR and database.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6897144177599049811-9128043071603845735?l=ashakkhan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ashakkhan.blogspot.com/feeds/9128043071603845735/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6897144177599049811&amp;postID=9128043071603845735' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/9128043071603845735'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/9128043071603845735'/><link rel='alternate' type='text/html' href='http://ashakkhan.blogspot.com/2010/09/support-articles-id-for-current.html' title='Support Articles ID for Current schedule DB release DB and OCR recovery'/><author><name>Ashak Ali Khan</name><uri>http://www.blogger.com/profile/02783946057420260374</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_1rApOiGy_ns/Sa0sDHWokDI/AAAAAAAAAXQ/fQut2UPtxgY/S220/Ashak_Khan.bmp'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6897144177599049811.post-4342849409877498130</id><published>2010-08-29T04:37:00.000-07:00</published><updated>2010-08-29T04:41:19.479-07:00</updated><title type='text'>ORA-15042: ASM disk "5" is missing from group number "2"</title><content type='html'>On 3 nodes 11gR2 RAC, while dismounting and mounting DATA2 resulted in below error on third node that has data2 external redundancy .Alter diskgroup data2 check succeed on node1,node2 that means it does not check ASM disk headers in check command.Analyzing errors in ASM alertlog:&lt;br /&gt;&lt;br /&gt;while mounting DATA2 error&lt;br /&gt;NOTE: De-assigning number (2,0) from disk (/dev/asmr5dsk0001)&lt;br /&gt;NOTE: De-assigning number (2,1) from disk (/dev/asmr5dsk0002)&lt;br /&gt;NOTE: De-assigning number (2,2) from disk (/dev/asmr5dsk0003)&lt;br /&gt;NOTE: De-assigning number (2,3) from disk (/dev/asmr5dsk0004)&lt;br /&gt;NOTE: De-assigning number (2,4) from disk (/dev/asmr5dsk0005)&lt;br /&gt;NOTE: De-assigning number (2,5) from disk ()&lt;br /&gt;NOTE: De-assigning number (2,6) from disk (/dev/asmr5dsk0007)&lt;br /&gt;NOTE: De-assigning number (2,7) from disk (/dev/asmr5dsk0011)&lt;br /&gt;NOTE: De-assigning number (2,8) from disk (/dev/asmr5dsk0012)&lt;br /&gt;ERROR: diskgroup DATA2 was not mounted&lt;br /&gt;NOTE: cache deleting context for group DATA2 2/-1905567771&lt;br /&gt;ORA-15032: not all alterations performed&lt;br /&gt;ORA-15040: diskgroup is incomplete&lt;br /&gt;ORA-15042: ASM disk "5" is missing from group number "2"&lt;br /&gt;ERROR: alter diskgroup DATA2 mount&lt;br /&gt;Wed Aug 25 15:10:48 2010&lt;br /&gt;ASM Health Checker found 1 new failures&lt;br /&gt;&lt;br /&gt;It look for Disk /dev/asmr5dsk0006 , &lt;br /&gt;could be ASM disk header corrupted&lt;br /&gt;&lt;br /&gt;To verify:&lt;br /&gt;&lt;br /&gt; $ kfed read /dev/asmr5dsk0006 text=name.txt&lt;br /&gt;ERROR!!!, failed to get the oracore error message&lt;br /&gt;&lt;br /&gt;$ dd if=/dev/asmr5dsk0006 bs=512 count=1&lt;br /&gt;ةآشءح���sW1+0 records in.&lt;br /&gt;1+0 records out.&lt;br /&gt;$ dd if=/dev/asmr5dsk0005 bs=512 count=1&lt;br /&gt;Kب4#ORCLDISK&lt;br /&gt;DATA2_0004DATA2DATA2_0004��}ىذ��ض��و�)5&lt;br /&gt;��}�l1+0 records in.&lt;br /&gt;1+0 records out.&lt;br /&gt;&lt;br /&gt;dd output show DATA2 ASM heading missing&lt;br /&gt;Also verif by &lt;br /&gt;% kfed read /dev/asmr5dsk0006 &gt; mpa002disk5.txt&lt;br /&gt;% kfed read /dev/asmr5dsk0006 &gt; mpa010disk5.txt&lt;br /&gt;% kfed read /dev/asmr5dsk0006 &gt; mpa020disk5.txt&lt;br /&gt;&lt;br /&gt;$ kfed read /dev/asmr5dsk0006 &gt; mpa002disk5.txt&lt;br /&gt;$ more mpa002disk5.txt&lt;br /&gt;kfbh.endian: 201 ; 0x000: 0xc9&lt;br /&gt;kfbh.hard: 194 ; 0x001: 0xc2&lt;br /&gt;kfbh.type: 212 ; 0x002: *** Unknown Enum ***&lt;br /&gt;kfbh.datfmt: 193 ; 0x003: 0xc1&lt;br /&gt;kfbh.block.blk: 0 ; 0x004: T=0 NUMB=0x0&lt;br /&gt;kfbh.block.obj: 0 ; 0x008: TYPE=0x0 NUMB=0x0&lt;br /&gt;kfbh.check: 0 ; 0x00c: 0x00000000&lt;br /&gt;kfbh.fcn.base: 0 ; 0x010: 0x00000000&lt;br /&gt;kfbh.fcn.wrap: 0 ; 0x014: 0x00000000&lt;br /&gt;kfbh.spare1: 0 ; 0x018: 0x00000000&lt;br /&gt;kfbh.spare2: 0 ; 0x01c: 0x00000000&lt;br /&gt;ERROR!!!, failed to get the oracore error message&lt;br /&gt;&lt;br /&gt;$ kfed read /dev/asmr5dsk0006 &gt; mpa010disk5.txt&lt;br /&gt;$ more mpa010disk5.txt&lt;br /&gt;kfbh.endian: 201 ; 0x000: 0xc9&lt;br /&gt;kfbh.hard: 194 ; 0x001: 0xc2&lt;br /&gt;kfbh.type: 212 ; 0x002: *** Unknown Enum ***&lt;br /&gt;kfbh.datfmt: 193 ; 0x003: 0xc1&lt;br /&gt;kfbh.block.blk: 0 ; 0x004: T=0 NUMB=0x0&lt;br /&gt;kfbh.block.obj: 0 ; 0x008: TYPE=0x0 NUMB=0x0&lt;br /&gt;kfbh.check: 0 ; 0x00c: 0x00000000&lt;br /&gt;kfbh.fcn.base: 0 ; 0x010: 0x00000000&lt;br /&gt;kfbh.fcn.wrap: 0 ; 0x014: 0x00000000&lt;br /&gt;kfbh.spare1: 0 ; 0x018: 0x00000000&lt;br /&gt;kfbh.spare2: 0 ; 0x01c: 0x00000000&lt;br /&gt;ERROR!!!, failed to get the oracore error message&lt;br /&gt;$ ssh mpa020&lt;br /&gt;&lt;br /&gt;$ kfed read /dev/asmr5dsk0006 &gt; mpa020disk5.txt&lt;br /&gt;$ more mpa020disk5.txt&lt;br /&gt;kfbh.endian: 201 ; 0x000: 0xc9&lt;br /&gt;kfbh.hard: 194 ; 0x001: 0xc2&lt;br /&gt;kfbh.type: 212 ; 0x002: *** Unknown Enum ***&lt;br /&gt;kfbh.datfmt: 193 ; 0x003: 0xc1&lt;br /&gt;kfbh.block.blk: 0 ; 0x004: T=0 NUMB=0x0&lt;br /&gt;kfbh.block.obj: 0 ; 0x008: TYPE=0x0 NUMB=0x0&lt;br /&gt;kfbh.check: 0 ; 0x00c: 0x00000000&lt;br /&gt;kfbh.fcn.base: 0 ; 0x010: 0x00000000&lt;br /&gt;kfbh.fcn.wrap: 0 ; 0x014: 0x00000000&lt;br /&gt;kfbh.spare1: 0 ; 0x018: 0x00000000&lt;br /&gt;kfbh.spare2: 0 ; 0x01c: 0x00000000&lt;br /&gt;ERROR!!!, failed to get the oracore error message&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Confirm , ASM disk header is corrupted so it is not detecting at&lt;br /&gt;mount. ASM always backup disk header automatically. Repair by below&lt;br /&gt;command and mount the disk.&lt;br /&gt;&lt;br /&gt;$ kfed repair /dev/asmr5dsk0006&lt;br /&gt;&lt;br /&gt;$ kfed read /dev/asmr5dsk0006 &gt; disk5.txt&lt;br /&gt;$ kfed read /dev/asmr5dsk0006 &gt; disk5.txt&lt;br /&gt;$ cat disk5.txt&lt;br /&gt;kfbh.endian: 0 ; 0x000: 0x00&lt;br /&gt;kfbh.hard: 130 ; 0x001: 0x82&lt;br /&gt;kfbh.type: 1 ; 0x002: KFBTYP_DISKHEAD&lt;br /&gt;kfbh.datfmt: 1 ; 0x003: 0x01&lt;br /&gt;kfbh.block.blk: 0 ; 0x004: T=0 NUMB=0x0&lt;br /&gt;kfbh.block.obj: 2147483653 ; 0x008: TYPE=0x8 NUMB=0x5&lt;br /&gt;kfbh.check: 1271477282 ; 0x00c: 0x4bc93422&lt;br /&gt;kfbh.fcn.base: 0 ; 0x010: 0x00000000&lt;br /&gt;kfbh.fcn.wrap: 0 ; 0x014: 0x00000000&lt;br /&gt;kfbh.spare1: 0 ; 0x018: 0x00000000&lt;br /&gt;kfbh.spare2: 0 ; 0x01c: 0x00000000&lt;br /&gt;kfdhdb.driver.provstr: ORCLDISK ; 0x000: length=8&lt;br /&gt;kfdhdb.driver.reserved[0]: 0 ; 0x008: 0x00000000&lt;br /&gt;kfdhdb.driver.reserved[1]: 0 ; 0x00c: 0x00000000&lt;br /&gt;kfdhdb.driver.reserved[2]: 0 ; 0x010: 0x00000000&lt;br /&gt;kfdhdb.driver.reserved[3]: 0 ; 0x014: 0x00000000&lt;br /&gt;kfdhdb.driver.reserved[4]: 0 ; 0x018: 0x00000000&lt;br /&gt;kfdhdb.driver.reserved[5]: 0 ; 0x01c: 0x00000000&lt;br /&gt;kfdhdb.compat: 186646528 ; 0x020: 0x0b200000&lt;br /&gt;kfdhdb.dsknum: 5 ; 0x024: 0x0005&lt;br /&gt;kfdhdb.grptyp: 1 ; 0x026: KFDGTP_EXTERNAL&lt;br /&gt;kfdhdb.hdrsts: 3 ; 0x027: KFDHDR_MEMBER&lt;br /&gt;kfdhdb.dskname: DATA2_0005 ; 0x028: length=10&lt;br /&gt;kfdhdb.grpname: DATA2 ; 0x048: length=5&lt;br /&gt;kfdhdb.fgname: DATA2_0005 ; 0x068: length=10&lt;br /&gt;kfdhdb.capname: ; 0x088: length=0&lt;br /&gt;kfdhdb.crestmp.hi: 32939173 ; 0x0a8: HOUR=0x5 DAYS=0x5 MNTH=0x7 YEAR=0x7da&lt;br /&gt;kfdhdb.crestmp.lo: 2112475136 ; 0x0ac: USEC=0x0 MSEC=0x274 SECS=0x1e MINS=0x1f&lt;br /&gt;kfdhdb.mntstmp.hi: 32940502 ; 0x0b0: HOUR=0x16 DAYS=0xe MNTH=0x8 YEAR=0x7da&lt;br /&gt;kfdhdb.mntstmp.lo: 3052791808 ; 0x0b4: USEC=0x0 MSEC=0x17a SECS=0x1f MINS=0x2d&lt;br /&gt;kfdhdb.secsize: 512 ; 0x0b8: 0x0200&lt;br /&gt;kfdhdb.blksize: 4096 ; 0x0ba: 0x1000&lt;br /&gt;kfdhdb.ausize: 1048576 ; 0x0bc: 0x00100000&lt;br /&gt;kfdhdb.mfact: 113792 ; 0x0c0: 0x0001bc80&lt;br /&gt;kfdhdb.dsksize: 207157 ; 0x0c4: 0x00032935&lt;br /&gt;kfdhdb.pmcnt: 3 ; 0x0c8: 0x00000003&lt;br /&gt;kfdhdb.fstlocn: 1 ; 0x0cc: 0x00000001&lt;br /&gt;kfdhdb.altlocn: 2 ; 0x0d0: 0x00000002&lt;br /&gt;kfdhdb.f1b1locn: 0 ; 0x0d4: 0x00000000&lt;br /&gt;kfdhdb.redomirrors[0]: 0 ; 0x0d8: 0x0000&lt;br /&gt;kfdhdb.redomirrors[1]: 0 ; 0x0da: 0x0000&lt;br /&gt;kfdhdb.redomirrors[2]: 0 ; 0x0dc: 0x0000&lt;br /&gt;kfdhdb.redomirrors[3]: 0 ; 0x0de: 0x0000&lt;br /&gt;kfdhdb.dbcompat: 185597952 ; 0x0e0: 0x0b100000&lt;br /&gt;kfdhdb.grpstmp.hi: 32939173 ; 0x0e4: HOUR=0x5 DAYS=0x5 MNTH=0x7 YEAR=0x7da&lt;br /&gt;kfdhdb.grpstmp.lo: 2111597568 ; 0x0e8: USEC=0x0 MSEC=0x31b SECS=0x1d MINS=0x1f&lt;br /&gt;kfdhdb.vfstart: 0 ; 0x0ec: 0x00000000&lt;br /&gt;kfdhdb.vfend: 0 ; 0x0f0: 0x00000000&lt;br /&gt;kfdhdb.spfile: 0 ; 0x0f4: 0x00000000&lt;br /&gt;kfdhdb.spfflg: 0 ; 0x0f8: 0x00000000&lt;br /&gt;kfdhdb.ub4spare[0]: 0 ; 0x0fc: 0x00000000&lt;br /&gt;kfdhdb.ub4spare[1]: 0 ; 0x100: 0x00000000&lt;br /&gt;kfdhdb.ub4spare[2]: 0 ; 0x104: 0x00000000&lt;br /&gt;kfdhdb.ub4spare[3]: 0 ; 0x108: 0x00000000&lt;br /&gt;kfdhdb.ub4spare[4]: 0 ; 0x10c: 0x00000000&lt;br /&gt;kfdhdb.ub4spare[5]: 0 ; 0x110: 0x00000000&lt;br /&gt;kfdhdb.ub4spare[6]: 0 ; 0x114: 0x00000000&lt;br /&gt;kfdhdb.ub4spare[7]: 0 ; 0x118: 0x00000000&lt;br /&gt;kfdhdb.ub4spare[8]: 0 ; 0x11c: 0x00000000&lt;br /&gt;kfdhdb.ub4spare[9]: 0 ; 0x120: 0x00000000&lt;br /&gt;kfdhdb.ub4spare[10]: 0 ; 0x124: 0x0&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6897144177599049811-4342849409877498130?l=ashakkhan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ashakkhan.blogspot.com/feeds/4342849409877498130/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6897144177599049811&amp;postID=4342849409877498130' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/4342849409877498130'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/4342849409877498130'/><link rel='alternate' type='text/html' href='http://ashakkhan.blogspot.com/2010/08/ora-15042-asm-disk-5-is-missing-from.html' title='ORA-15042: ASM disk &quot;5&quot; is missing from group number &quot;2&quot;'/><author><name>Ashak Ali Khan</name><uri>http://www.blogger.com/profile/02783946057420260374</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_1rApOiGy_ns/Sa0sDHWokDI/AAAAAAAAAXQ/fQut2UPtxgY/S220/Ashak_Khan.bmp'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6897144177599049811.post-3973740958147742144</id><published>2010-08-22T03:14:00.000-07:00</published><updated>2010-08-22T03:23:07.028-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Real Application Clusters'/><title type='text'>11gR2 OCR mirroring with External Redundancy</title><content type='html'>In case of Normal or High redundancy OCR does not require to be mirror. But if you want&lt;br /&gt;to make OCR mirroring to another diskgroup when external redundancy is used then follow below procedure.&lt;br /&gt;&lt;br /&gt;1)ALTER DISKGROUP OCR_VOTING2 SET ATTRIBUTE ‘COMPATIBILITY.ASM’=’11.2’;&lt;br /&gt;2) Connect to the server as root. and execute ocrconfig command from the $GRID_HOME/bin directory.  &lt;br /&gt;&lt;br /&gt;[root@prddb3 bin]# ./ocrconfig -add +OCR_VOTING2 &lt;br /&gt;3)To verify if the new OCR file is created and the /etc/oracle/ocr.loc file is updated with the new file information.&lt;br /&gt;&lt;br /&gt;[root@prddb3 bin]# cat /etc/oracle/ocr.loc&lt;br /&gt;The  ocrcheck command reflects two OCR locations&lt;br /&gt;&lt;br /&gt;[root@prddb3 bin]# ./ocrcheck&lt;br /&gt;&lt;br /&gt;..log/hostname/client/ocrconfig_25560.log&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6897144177599049811-3973740958147742144?l=ashakkhan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ashakkhan.blogspot.com/feeds/3973740958147742144/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6897144177599049811&amp;postID=3973740958147742144' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/3973740958147742144'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/3973740958147742144'/><link rel='alternate' type='text/html' href='http://ashakkhan.blogspot.com/2010/08/11gr2-ocr-mirroring-with-external.html' title='11gR2 OCR mirroring with External Redundancy'/><author><name>Ashak Ali Khan</name><uri>http://www.blogger.com/profile/02783946057420260374</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_1rApOiGy_ns/Sa0sDHWokDI/AAAAAAAAAXQ/fQut2UPtxgY/S220/Ashak_Khan.bmp'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6897144177599049811.post-1906774057001478940</id><published>2010-07-26T05:41:00.000-07:00</published><updated>2011-04-26T05:10:35.577-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Oracle ASM'/><title type='text'>root.sh fails while installing 11gR2 Grid onAIX with ASM</title><content type='html'>Error:&lt;br /&gt;mpa001:/oracle/brmgrid/11.2.0&gt;./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= oragrid&lt;br /&gt;ORACLE_HOME= /oracle/brmgrid/11.2.0&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) [n]:&lt;br /&gt;The file "oraenv" already exists in /usr/local/bin. Overwrite it? (y/n) [n]:&lt;br /&gt;The file "coraenv" already exists in /usr/local/bin. Overwrite it? (y/n) [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;2010-07-26 10:35:27: Parsing the host name&lt;br /&gt;2010-07-26 10:35:27: Checking for super user privileges&lt;br /&gt;2010-07-26 10:35:27: User has super user privileges&lt;br /&gt;Using configuration parameter file: /oracle/brmgrid/11.2.0/crs/install/crsconfig_params&lt;br /&gt;Improper Oracle Clusterware configuration found on this host&lt;br /&gt;Deconfigure the existing cluster configuration before starting&lt;br /&gt;to configure a new Clusterware&lt;br /&gt;run '/oracle/brmgrid/11.2.0/crs/install/rootcrs.pl -deconfig'&lt;br /&gt;to configure existing failed configuration and then rerun root.sh&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Solution:&lt;br /&gt;---------------&lt;br /&gt;mpa001:/oracle/brmgrid/11.2.0&gt;/oracle/brmgrid/11.2.0/crs/install/rootcrs.pl -deconfig -force&lt;br /&gt;mpa001:/oracle/brmgrid/11.2.0&gt;/oracle/brmgrid/11.2.0/crs/install/root.sh&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;---------&lt;br /&gt;Also try to remove .oracle as:&lt;br /&gt;rm -rf /var/tmp/.oracle&lt;br /&gt;rm -rf /tmp/.oracle&lt;br /&gt;&lt;br /&gt;Run root.sh &lt;br /&gt;&lt;br /&gt;Check ulimit settings are unlimited oracle root&amp; oragrid,oracle users. &lt;br /&gt;July 28, 2010 12:02 AM  &lt;br /&gt; Ashak Khan said... &lt;br /&gt;Also try to remove below before root.sh&lt;br /&gt;&lt;br /&gt;rm -rf /var/tmp/.oracle&lt;br /&gt;rm -rf /tmp/.oracle&lt;br /&gt;&lt;br /&gt;Run root.sh &lt;br /&gt;&lt;br /&gt;And check ulimit setting unlimited for oracle,oragrid and root user.&lt;br /&gt;&lt;br /&gt;To increase the shell limits:&lt;br /&gt;.&lt;br /&gt;1. Add the following lines to the /etc/security/limits file:&lt;br /&gt;default:&lt;br /&gt;fsize = -1&lt;br /&gt;core = -1&lt;br /&gt;cpu = -1&lt;br /&gt;data = -1&lt;br /&gt;stack = -1&lt;br /&gt;rss = -1&lt;br /&gt;nofiles = -1&lt;br /&gt;core_hard=-1&lt;br /&gt;cpu_hard=-1&lt;br /&gt;data_hard=-1&lt;br /&gt;fsize_hard=-1&lt;br /&gt;stack_hard=-1&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;2. Enter the following command to list the current setting for the maximum number of process allowed by the Oracle software user:&lt;br /&gt;/usr/bin/lsattr -E -l sys0 -a maxuproc&lt;br /&gt;&lt;br /&gt;If necessary, change the maxuproc setting using the following command:&lt;br /&gt;&lt;br /&gt;/usr/sbin/chdev -l sys0 -a maxuproc = 16384&lt;br /&gt;&lt;br /&gt;3. Repeat this procedure on all other nodes in the cluster.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6897144177599049811-1906774057001478940?l=ashakkhan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ashakkhan.blogspot.com/feeds/1906774057001478940/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6897144177599049811&amp;postID=1906774057001478940' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/1906774057001478940'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/1906774057001478940'/><link rel='alternate' type='text/html' href='http://ashakkhan.blogspot.com/2010/07/rootsh-fails-while-installing-11gr2.html' title='root.sh fails while installing 11gR2 Grid onAIX with ASM'/><author><name>Ashak Ali Khan</name><uri>http://www.blogger.com/profile/02783946057420260374</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_1rApOiGy_ns/Sa0sDHWokDI/AAAAAAAAAXQ/fQut2UPtxgY/S220/Ashak_Khan.bmp'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6897144177599049811.post-8432384586939131635</id><published>2010-07-25T06:45:00.000-07:00</published><updated>2010-08-29T04:26:39.834-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Oracle ASM'/><title type='text'>11R2 RAC ASM disk creation on AIX-IBM</title><content type='html'>Oracle ASM need to maintain the SAN disks across all nodes in the ASM cluster but sometimes or always the naming convention is not changeable since it is controlled by the OS kernel. To overcome this issue, we need to create a disk device and link it to the original SAN disk assigned. This disk device created  must have same naming in all nodes and linked to the same disk ID in all nodes as well.&lt;br /&gt; &lt;br /&gt;Procedure:&lt;br /&gt; &lt;br /&gt;1. configure the new SAN disks (assuming EMC)&lt;br /&gt;% cfgmgr   &lt;br /&gt; &lt;br /&gt;2. Get the IDs and reserve_lock to be No&lt;br /&gt;&lt;br /&gt;%lquerypv -h /dev/rdiskpowerXX ( to Check if it is part of Diskgroup)&lt;br /&gt;&lt;br /&gt;% chdev -l hdiskpowerXX -a reserve_lock=no&lt;br /&gt; &lt;br /&gt;3. Get major/minor number of SAN disk assigned &lt;br /&gt;% ls -l /dev/hdiskpower9&lt;br /&gt;brw-rw----    1 root     system       44,  9 Jun 29 16:12 /dev/hdiskpower9&lt;br /&gt;major number is 44&lt;br /&gt;minor number is 9&lt;br /&gt; &lt;br /&gt;4. create the ASM disk which must be a character device&lt;br /&gt;% mknod /dev/asmdisk00XX c 44 9&lt;br /&gt; &lt;br /&gt;5. change ownership of the ASM device to be oracle:oinstall&lt;br /&gt;% chown oracle:oinstall /dev/asmdisk00XX &lt;br /&gt; &lt;br /&gt;6. change the permission of the ASM disk to be 765&lt;br /&gt;% chmod 765 /dev/asmdisk00XX&lt;br /&gt; &lt;br /&gt;7. change ownership of the hdiskpower character device to be oragrid:oinstall&lt;br /&gt;% chown oragrid:oinstall /dev/rhdiskpower9&lt;br /&gt; &lt;br /&gt;8. In the other nodes, you must do the same thing with hdiskpower device that have the same ID as hdiskpower9&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6897144177599049811-8432384586939131635?l=ashakkhan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ashakkhan.blogspot.com/feeds/8432384586939131635/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6897144177599049811&amp;postID=8432384586939131635' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/8432384586939131635'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/8432384586939131635'/><link rel='alternate' type='text/html' href='http://ashakkhan.blogspot.com/2010/07/11r2-rac-asm-disk-creation-on-aix-ibm.html' title='11R2 RAC ASM disk creation on AIX-IBM'/><author><name>Ashak Ali Khan</name><uri>http://www.blogger.com/profile/02783946057420260374</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_1rApOiGy_ns/Sa0sDHWokDI/AAAAAAAAAXQ/fQut2UPtxgY/S220/Ashak_Khan.bmp'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6897144177599049811.post-2375667681964979080</id><published>2010-03-21T00:57:00.000-07:00</published><updated>2010-03-21T00:59:02.084-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Oracle DB Administration'/><title type='text'>Database Scripts</title><content type='html'>On support.oracle.com, refer Document ID 131704 for all scripts.&lt;br /&gt;Database Scripts Library Index [ID 131704.1]&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6897144177599049811-2375667681964979080?l=ashakkhan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ashakkhan.blogspot.com/feeds/2375667681964979080/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6897144177599049811&amp;postID=2375667681964979080' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/2375667681964979080'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/2375667681964979080'/><link rel='alternate' type='text/html' href='http://ashakkhan.blogspot.com/2010/03/database-scripts.html' title='Database Scripts'/><author><name>Ashak Ali Khan</name><uri>http://www.blogger.com/profile/02783946057420260374</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_1rApOiGy_ns/Sa0sDHWokDI/AAAAAAAAAXQ/fQut2UPtxgY/S220/Ashak_Khan.bmp'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6897144177599049811.post-3385905621846739868</id><published>2010-01-11T21:45:00.000-08:00</published><updated>2010-01-11T21:47:25.486-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Oracle DB Administration'/><title type='text'>Checking logical block corruption</title><content type='html'>a)  $ rman target / nocatalog&lt;br /&gt;&lt;br /&gt;     b) run {&lt;br /&gt;          allocate channel d1 type disk;&lt;br /&gt;          backup check logical validate database;&lt;br /&gt;          release channel d1;&lt;br /&gt;          }&lt;br /&gt;&lt;br /&gt;    c) select * from V$DATABASE_BLOCK_CORRUPTION ;&lt;br /&gt;&lt;br /&gt;     d)If V$DATABASE_BLOCK_CORRUPTION  contains rows please run this procedure to find the objects that contains the corrupted blocks:&lt;br /&gt;&lt;br /&gt;drop table corrupted_objects;  &lt;br /&gt;create table corrupted_objects as &lt;br /&gt;              select owner, segment_name, partition_name, segment_type, 1 file#, 1 block# from dba_extents where 1=2;&lt;br /&gt;     declare  &lt;br /&gt;     cursor C1 is select file#, block#   from v$database_block_corruption;  &lt;br /&gt;     begin  &lt;br /&gt;     for r1 in c1 loop &lt;br /&gt;     insert into corrupted_objects  &lt;br /&gt;       select owner, segment_name, partition_name,segment_type, r1.file#, r1.block# from   dba_extents where  file_id=r1.file# &lt;br /&gt;       and  r1.block# between block_id and block_id + blocks - 1; &lt;br /&gt;     if sql%notfound then   /* segment header block might be corrupt causing dba_extents not returning rows. */ &lt;br /&gt;        insert into corrupted_objects  select owner, segment_name, partition_name, segment_type, r1.file#, r1.block#&lt;br /&gt;            from   dba_segments where  header_file=r1.file# and header_block = r1.block#; &lt;br /&gt;     end if; &lt;br /&gt;     end loop; &lt;br /&gt;     end;  &lt;br /&gt;     / &lt;br /&gt; &lt;br /&gt;&lt;br /&gt;    e) Select all the objects populated in the table corrupted_objects: &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;        SQL&gt; select distinct owner, segment_name, partition_name, segment_type from corrupted_objects;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6897144177599049811-3385905621846739868?l=ashakkhan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ashakkhan.blogspot.com/feeds/3385905621846739868/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6897144177599049811&amp;postID=3385905621846739868' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/3385905621846739868'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/3385905621846739868'/><link rel='alternate' type='text/html' href='http://ashakkhan.blogspot.com/2010/01/checking-logical-block-corruption.html' title='Checking logical block corruption'/><author><name>Ashak Ali Khan</name><uri>http://www.blogger.com/profile/02783946057420260374</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_1rApOiGy_ns/Sa0sDHWokDI/AAAAAAAAAXQ/fQut2UPtxgY/S220/Ashak_Khan.bmp'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6897144177599049811.post-1120509599147192647</id><published>2009-09-27T00:32:00.000-07:00</published><updated>2009-09-27T00:33:41.149-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Real Application Clusters'/><title type='text'>restarting resource to clear OFFLINE State</title><content type='html'>$ crs_stat -t&lt;br /&gt;Name           Type           Target    State     Host&lt;br /&gt;------------------------------------------------------------&lt;br /&gt;ora.EPPROD.db  application    ONLINE    ONLINE    jury&lt;br /&gt;ora....p1.inst application    ONLINE    ONLINE    jasmine&lt;br /&gt;ora....p2.inst application    ONLINE    ONLINE    jury&lt;br /&gt;ora....NE.lsnr application    ONLINE    ONLINE    jasmine&lt;br /&gt;ora....ine.gsd application    ONLINE    ONLINE    jasmine&lt;br /&gt;ora....ine.ons application    ONLINE    ONLINE    jasmine&lt;br /&gt;ora....ine.vip application    ONLINE    ONLINE    jasmine&lt;br /&gt;ora....RY.lsnr application    ONLINE    ONLINE    jury&lt;br /&gt;ora.jury.gsd   application    ONLINE    OFFLINE&lt;br /&gt;ora.jury.ons   application    ONLINE    OFFLINE&lt;br /&gt;ora.jury.vip   application    ONLINE    ONLINE    jury&lt;br /&gt;&lt;br /&gt;$ crs_stat&lt;br /&gt;NAME=ora.EPPROD.db&lt;br /&gt;TYPE=application&lt;br /&gt;TARGET=ONLINE&lt;br /&gt;STATE=ONLINE on jury&lt;br /&gt;..&lt;br /&gt;..&lt;br /&gt;..&lt;br /&gt;&lt;br /&gt;NAME=ora.jury.LISTENER_JURY.lsnr&lt;br /&gt;TYPE=application&lt;br /&gt;TARGET=ONLINE&lt;br /&gt;STATE=ONLINE on jury&lt;br /&gt;&lt;br /&gt;NAME=ora.jury.gsd&lt;br /&gt;TYPE=application&lt;br /&gt;TARGET=ONLINE&lt;br /&gt;STATE=OFFLINE&lt;br /&gt;&lt;br /&gt;NAME=ora.jury.ons&lt;br /&gt;TYPE=application&lt;br /&gt;TARGET=ONLINE&lt;br /&gt;STATE=OFFLINE&lt;br /&gt;&lt;br /&gt;NAME=ora.jury.vip&lt;br /&gt;TYPE=application&lt;br /&gt;TARGET=ONLINE&lt;br /&gt;STATE=ONLINE on jury&lt;br /&gt;&lt;br /&gt;$ crs_stop ora.jury.gsd&lt;br /&gt;Target set to OFFLINE for `ora.jury.gsd`&lt;br /&gt;$ crs_start ora.jury.gsd&lt;br /&gt;Attempting to start `ora.jury.gsd` on member `jury`&lt;br /&gt;Start of `ora.jury.gsd` on member `jury` succeeded.&lt;br /&gt;$ crs_stop  ora.jury.ons&lt;br /&gt;Target set to OFFLINE for `ora.jury.ons`&lt;br /&gt;$  crs_start  ora.jury.ons&lt;br /&gt;Attempting to start `ora.jury.ons` on member `jury`&lt;br /&gt;Start of `ora.jury.ons` on member `jury` succeeded.&lt;br /&gt;$ crs_stat -t&lt;br /&gt;Name           Type           Target    State     Host&lt;br /&gt;------------------------------------------------------------&lt;br /&gt;ora.EPPROD.db  application    ONLINE    ONLINE    jury&lt;br /&gt;ora....p1.inst application    ONLINE    ONLINE    jasmine&lt;br /&gt;ora....p2.inst application    ONLINE    ONLINE    jury&lt;br /&gt;ora....NE.lsnr application    ONLINE    ONLINE    jasmine&lt;br /&gt;ora....ine.gsd application    ONLINE    ONLINE    jasmine&lt;br /&gt;ora....ine.ons application    ONLINE    ONLINE    jasmine&lt;br /&gt;ora....ine.vip application    ONLINE    ONLINE    jasmine&lt;br /&gt;ora....RY.lsnr application    ONLINE    ONLINE    jury&lt;br /&gt;ora.jury.gsd   application    ONLINE    ONLINE    jury&lt;br /&gt;ora.jury.ons   application    ONLINE    ONLINE    jury&lt;br /&gt;ora.jury.vip   application    ONLINE    ONLINE    jury&lt;br /&gt;$&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6897144177599049811-1120509599147192647?l=ashakkhan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ashakkhan.blogspot.com/feeds/1120509599147192647/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6897144177599049811&amp;postID=1120509599147192647' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/1120509599147192647'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/1120509599147192647'/><link rel='alternate' type='text/html' href='http://ashakkhan.blogspot.com/2009/09/restarting-resource-to-clear-offline.html' title='restarting resource to clear OFFLINE State'/><author><name>Ashak Ali Khan</name><uri>http://www.blogger.com/profile/02783946057420260374</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_1rApOiGy_ns/Sa0sDHWokDI/AAAAAAAAAXQ/fQut2UPtxgY/S220/Ashak_Khan.bmp'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6897144177599049811.post-5783192157349302542</id><published>2009-09-06T05:13:00.000-07:00</published><updated>2009-09-06T05:15:17.275-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Oracle Performance'/><title type='text'>Oracle Performance Diagnostic Guide</title><content type='html'>Oracle Performance Diagnostic Guide (OPDG)&lt;br /&gt;&lt;br /&gt;--&gt; MetaLink Doc ID: 390374.1&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6897144177599049811-5783192157349302542?l=ashakkhan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ashakkhan.blogspot.com/feeds/5783192157349302542/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6897144177599049811&amp;postID=5783192157349302542' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/5783192157349302542'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/5783192157349302542'/><link rel='alternate' type='text/html' href='http://ashakkhan.blogspot.com/2009/09/oracle-performance-diagnostic-guide.html' title='Oracle Performance Diagnostic Guide'/><author><name>Ashak Ali Khan</name><uri>http://www.blogger.com/profile/02783946057420260374</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_1rApOiGy_ns/Sa0sDHWokDI/AAAAAAAAAXQ/fQut2UPtxgY/S220/Ashak_Khan.bmp'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6897144177599049811.post-2198749240288826122</id><published>2009-07-20T05:11:00.001-07:00</published><updated>2009-07-20T05:11:42.017-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Real Application Clusters'/><title type='text'>Configure ssh for RAC using rsa/dsa</title><content type='html'>From each node say md004a,md004b, logged in as oracle: &lt;br /&gt;&lt;br /&gt;1) Execute below on md004a,md004b&lt;br /&gt;mkdir ~/.ssh &lt;br /&gt;chmod 755 ~/.ssh &lt;br /&gt;/usr/bin/ssh-keygen -t rsa &lt;br /&gt;/usr/bin/ssh-keygen -t dsa&lt;br /&gt;&lt;br /&gt;2) On md004a&lt;br /&gt;cat ~/.ssh/id_rsa.pub &gt; ~/.ssh/authorized_keys &lt;br /&gt;cat ~/.ssh/id_dsa.pub &gt; ~/.ssh/authorized_keys &lt;br /&gt;ssh oracle@md004b cat ~/.ssh/id_rsa.pub &gt; ~/.ssh/authorized_keys &lt;br /&gt;ssh oracle@md004b cat ~/.ssh/id_dsa.pub &gt; ~/.ssh/authorized_keys &lt;br /&gt;chmod 644 ~/.ssh/authorized_keys &lt;br /&gt;&lt;br /&gt;3) on md004b&lt;br /&gt;ssh oracle@md004a cat ~/.ssh/id_rsa.pub &gt; ~/.ssh/authorized_keys &lt;br /&gt;ssh oracle@md004a cat ~/.ssh/id_dsa.pub &gt; ~/.ssh/authorized_keys &lt;br /&gt;chmod 644 ~/.ssh/authorized_keys &lt;br /&gt;&lt;br /&gt;4) on  md004a and md004b&lt;br /&gt; cp id_rsa.pub authorized_keys2&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6897144177599049811-2198749240288826122?l=ashakkhan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ashakkhan.blogspot.com/feeds/2198749240288826122/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6897144177599049811&amp;postID=2198749240288826122' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/2198749240288826122'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/2198749240288826122'/><link rel='alternate' type='text/html' href='http://ashakkhan.blogspot.com/2009/07/configure-ssh-for-rac-using-rsadsa.html' title='Configure ssh for RAC using rsa/dsa'/><author><name>Ashak Ali Khan</name><uri>http://www.blogger.com/profile/02783946057420260374</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_1rApOiGy_ns/Sa0sDHWokDI/AAAAAAAAAXQ/fQut2UPtxgY/S220/Ashak_Khan.bmp'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6897144177599049811.post-8394634112414140511</id><published>2009-07-04T23:28:00.000-07:00</published><updated>2009-07-04T23:31:02.550-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Real Application Clusters'/><title type='text'>Common RAC errors</title><content type='html'>oui-10009 &lt;br /&gt;PRKP-1037 : Failed to create cluster Database  &lt;br /&gt;CRS-0210: Could not find resource  &lt;br /&gt;CRS ownership - CRS did not start after node reboot  &lt;br /&gt;clsssInitNative: connect failed, rc 9,Received status 3 from CSS &lt;br /&gt;Cluster Split based on the service name &lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;oui-10009  &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;This error occured while adding a new node in the existing cluster. The following workaround is used as follows:&lt;br /&gt;&lt;br /&gt;Node 1:&lt;br /&gt;&lt;br /&gt;cd $ORACLE_HOME/oui/bin&lt;br /&gt;&lt;br /&gt;./addNode.sh -silent "CLUSTER_NEW_NODES={new nodename}" -logLevel trace –debug&lt;br /&gt;&lt;br /&gt;You may want to browse "Node add" to get more information.&lt;br /&gt;&lt;br /&gt;Node add &lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;PRKP-1037 : Failed to create cluster Database  &lt;br /&gt;&lt;br /&gt;Step 1: &lt;br /&gt;&lt;br /&gt;[oracle@orcl-experts.info bin]$ ./crs_stat&lt;br /&gt;NAME=ora.SAAP.db&lt;br /&gt;TYPE=application&lt;br /&gt;TARGET=OFFLINE&lt;br /&gt;STATE=OFFLINE&lt;br /&gt;&lt;br /&gt;Step 2 : crs_unregister ora.SAAP.db&lt;br /&gt;&lt;br /&gt;Step 3: srvctl add database -d SAAP -o /data01/app/oracle/product/10.2.0/db/&lt;br /&gt;&lt;br /&gt;[oracle@sabharwal11 bin]$ srvctl add instance -d SAAP -i SAAP1 -n sabharwal11&lt;br /&gt;[oracle@sabharwal11 bin]$ srvctl add instance -d SAAP -i SAAP2 -n sabharwal12&lt;br /&gt;[oracle@sabharwal11 bin]$ srvctl add instance -d SAAP -i SAAP3 -n sabharwal13 &lt;br /&gt;&lt;br /&gt;[oracle@sabharwal11 bin]$ srvctl stop database -d SAAP &lt;br /&gt;[oracle@sabharwal11 bin]$ srvctl start database -d SAAP&lt;br /&gt;[oracle@sabharwal11 bin]$ ./crs_stat&lt;br /&gt;NAME=ora.SAAP.SAAP1.inst&lt;br /&gt;TYPE=application&lt;br /&gt;TARGET=ONLINE&lt;br /&gt;STATE=ONLINE on sabharwal11&lt;br /&gt;&lt;br /&gt;NAME=ora.SAAP.SAAP2.inst&lt;br /&gt;TYPE=application&lt;br /&gt;TARGET=ONLINE&lt;br /&gt;STATE=ONLINE on sabharwal12&lt;br /&gt;&lt;br /&gt;NAME=ora.SAAP.SAAP3.inst&lt;br /&gt;TYPE=application&lt;br /&gt;TARGET=ONLINE&lt;br /&gt;STATE=ONLINE on sabharwal13&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;[oracle@sabharwal11 bin]$ srvctl status database -d SAAP&lt;br /&gt;Instance SAAP1 is running on node sabharwal11&lt;br /&gt;Instance SAAP2 is running on node sabharwal12&lt;br /&gt;Instance SAAP3 is running on node sabharwal13&lt;br /&gt;&lt;br /&gt;CRS-0210: Could not find resource  &lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;[oracle@orcl-experts1.com admin]$ srvctl stop nodeapps -n orcl-experts1.com&lt;br /&gt;&lt;br /&gt;CRS-0210: Could not find resource 'ora.orcl-experts1.com.LISTENER_orcl-experts1.com.lsnr'.&lt;br /&gt;&lt;br /&gt;[oracle@orcl-experts1.com admin]$ srvctl start nodeapps -n orcl-experts1.com&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;CRS-0210: Could not find resource ora.orcl-experts1.com.LISTENER_orcl-experts1.com.lsnr.&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;[oracle@orcl-experts1.com bin]$ ./crs_register ora.orcl-experts1.com.LISTENER_orcl-experts1.com.lsnr&lt;br /&gt;&lt;br /&gt; &lt;br /&gt; &lt;br /&gt;&lt;br /&gt;[oracle@orcl-experts1.com bin]$ srvctl start nodeapps -n orcl-experts1.com&lt;br /&gt;[oracle@orcl-experts1.com bin]$ srvctl stop nodeapps -n orcl-experts1.com&lt;br /&gt;[oracle@orcl-experts1.com bin]$ srvctl start nodeapps -n orcl-experts1.com&lt;br /&gt;&lt;br /&gt;NO Errors&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;CRS ownership - CRS did not start after node reboot - Metalink 428195.1 &lt;br /&gt;&lt;br /&gt;I had to deal with a maintenance which required disabling the auto start of CRS during server reboot:&lt;br /&gt;&lt;br /&gt;#/etc/init.d/initcrs disable&lt;br /&gt;&lt;br /&gt;I shutdown the RAC 2 node cluster and verified that there is no oracle process running and hand over the servers to Sysadmin. After the hardware maintenance before the 2nd reboot the sysadmin asked me to re enable the CRS auto start. In both nodes I did:&lt;br /&gt;&lt;br /&gt;#/etc/init.d/initcrs enable&lt;br /&gt;&lt;br /&gt;Sysadmin rebooted both the nodes. After 10 minutes I checked the process details and found that CRS stack is not running and the instances are not up. We had a deadline of 1 hour to bring up all the instances. Under the short time and pressure I started digging out the issue of why the CRS stack was not up. I tried to bring it up manually but it did not work.&lt;br /&gt;&lt;br /&gt;I found that after remounting the file systems the permission of /oracle01 mount point (voting file and OCR file location) is:&lt;br /&gt;&lt;br /&gt;-rw-r--r-- 1 root root 10240000 Apr 3 21:41 voting.dbf&lt;br /&gt;&lt;br /&gt;Sysadmin and I decided to make an immediate change:&lt;br /&gt;&lt;br /&gt;chown -R root:install /oracle01 &lt;br /&gt;&lt;br /&gt;and &lt;br /&gt;&lt;br /&gt;we rebooted the machine.&lt;br /&gt;&lt;br /&gt;It worked and during the node reboots process all the CRS and Oracle processes came up.&lt;br /&gt;&lt;br /&gt;The maintenance was based on the mounting the existing file system on the new LUN.&lt;br /&gt;&lt;br /&gt;clsssInitNative: connect failed, rc 9,Received status 3 from CSS. Waiting for good status .., Failure at final check of Oracle CRS stack. 10&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;Issue: I had issue while bringing up CRS in the 2nd node.The root.sh executions failed with the following message:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Startup will be queued to init within 90 seconds.&lt;br /&gt;Adding daemons to inittab&lt;br /&gt;Expecting the CRS daemons to be up within 600 seconds.&lt;br /&gt;&lt;br /&gt;Failure at final check of Oracle CRS stack.&lt;br /&gt;10&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;crsd.log&lt;br /&gt;&lt;br /&gt;2007-10-26 17:33:37.510: [ CSSCLNT][3086960320]clsssInitNative: connect failed, rc 9&lt;br /&gt;&lt;br /&gt;2007-10-26 17:33:37.511: [ CRSRTI][3086960320]0CSS is not ready. Received status 3 from CSS. Waiting for good status ..&lt;br /&gt;&lt;br /&gt;2007-10-26 17:33:38.545: [ COMMCRS][116607920]clsc_connect: (0x8605510) no listener at (ADDRESS=(PROTOCOL=ipc)(KEY=OCSSD_LL_oracl-experts.info2_crs))&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Investigation:&lt;br /&gt;&lt;br /&gt;I looked into the files under /var/tmp/.oracle in node1 - Looks everything fine but in the 2nd node , the CRS process was not able to write&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Solution: &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;After long research, I found out that there is a major issue with the /var/tmp&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;[root@oracl-experts.info2 app]# chmod 1777 /var/tmp&lt;br /&gt;&lt;br /&gt;[root@oracl-experts.info2 app]# ls -ld /var/tmp&lt;br /&gt;&lt;br /&gt;drwxrwxrwt 3 root root 4096 Oct 26 17:33 /var/tmp&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;total 8&lt;br /&gt;&lt;br /&gt;drwxrwxrwt 3 root root 4096 Oct 26 17:33 ..&lt;br /&gt;srwxrwxrwx 1 oracle oinstall 0 Oct 26 17:52 soracl-experts.info2DBG_CSSD&lt;br /&gt;srwxrwxrwx 1 oracle oinstall 0 Oct 26 17:52 sOracle_CSS_LclLstnr_crs_2&lt;br /&gt;srwxrwxrwx 1 oracle oinstall 0 Oct 26 17:52 sOCSSD_LL_oracl-experts.info2_crs&lt;br /&gt;srwxrwxrwx 1 root root 0 Oct 26 17:52 sprocr_local_conn_0_PROC&lt;br /&gt;srwxrwxrwx 1 oracle oinstall 0 Oct 26 17:52 soracl-experts.info2DBG_EVMD&lt;br /&gt;srwxrwxrwx 1 root root 0 Oct 26 17:52 soracl-experts.info2DBG_CRSD&lt;br /&gt;srwxrwxrwx 1 oracle oinstall 0 Oct 26 17:52 sSYSTEM.evm.acceptor.auth&lt;br /&gt;srwxrwxrwx 1 oracle oinstall 0 Oct 26 17:52 sCoracl-experts.info2_crs_evm&lt;br /&gt;srwxrwxrwx 1 oracle oinstall 0 Oct 26 17:52 sAoracl-experts.info2_crs_evm&lt;br /&gt;srwxrwxrwx 1 root root 0 Oct 26 17:52 sora_crsqs&lt;br /&gt;srwxrwxrwx 1 root root 0 Oct 26 17:52 sCRSD_UI_SOCKET&lt;br /&gt;drwxrwxrwt 2 root root 4096 Oct 26 17:52 .&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;[root@oracl-experts.info2 app]# ./root.sh&lt;br /&gt;WARNING: directory '/data01/crs/oracle/product/10.2.0' is not owned by root&lt;br /&gt;WARNING: directory '/data01/crs/oracle/product' is not owned by root&lt;br /&gt;WARNING: directory '/data01/crs/oracle' is not owned by root&lt;br /&gt;WARNING: directory '/data01/crs' is not owned by root&lt;br /&gt;Checking to see if Oracle CRS stack is already configured&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Setting the permissions on OCR backup directory&lt;br /&gt;&lt;br /&gt;Setting up NS directories&lt;br /&gt;&lt;br /&gt;Oracle Cluster Registry configuration upgraded successfully&lt;br /&gt;&lt;br /&gt;WARNING: directory '/data01/crs/oracle/product/10.2.0' is not owned by root&lt;br /&gt;&lt;br /&gt;WARNING: directory '/data01/crs/oracle/product' is not owned by root&lt;br /&gt;&lt;br /&gt;WARNING: directory '/data01/crs/oracle' is not owned by root &lt;br /&gt;&lt;br /&gt;WARNING: directory '/data01/crs' is not owned by root&lt;br /&gt;&lt;br /&gt;clscfg: EXISTING configuration version 3 detected.&lt;br /&gt;&lt;br /&gt;clscfg: version 3 is 10G Release 2.&lt;br /&gt;&lt;br /&gt;assigning default hostname oracl-experts.info1 for node 1.&lt;br /&gt;&lt;br /&gt;assigning default hostname oracl-experts.info2 for node 2.&lt;br /&gt;&lt;br /&gt;Successfully accumulated necessary OCR keys.&lt;br /&gt;&lt;br /&gt;Using ports: CSS=49895 CRS=49896 EVMC=49898 and EVMR=49897.&lt;br /&gt;&lt;br /&gt;node &lt;nodenumber&gt;: &lt;nodename&gt; &lt;private interconnect name&gt; &lt;hostname&gt;&lt;br /&gt;&lt;br /&gt;node 1: oracl-experts.info1 oracl-experts.info1-priv oracl-experts.info1&lt;br /&gt;&lt;br /&gt;node 2: oracl-experts.info2 oracl-experts.info2-priv oracl-experts.info2&lt;br /&gt;&lt;br /&gt;clscfg: Arguments check out successfully.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;NO KEYS WERE WRITTEN. Supply -force parameter to override.&lt;br /&gt;&lt;br /&gt;-force is destructive and will destroy any previous cluster&lt;br /&gt;&lt;br /&gt;configuration.&lt;br /&gt;&lt;br /&gt;Oracle Cluster Registry for cluster has already been initialized&lt;br /&gt;&lt;br /&gt;Startup will be queued to init within 90 seconds.&lt;br /&gt;&lt;br /&gt;Adding daemons to inittab&lt;br /&gt;&lt;br /&gt;Expecting the CRS daemons to be up within 600 seconds.&lt;br /&gt;&lt;br /&gt;CSS is active on these nodes.&lt;br /&gt;&lt;br /&gt;oracl-experts.info1&lt;br /&gt;&lt;br /&gt;oracl-experts.info2&lt;br /&gt;&lt;br /&gt;CSS is active on all nodes.&lt;br /&gt;&lt;br /&gt;Waiting for the Oracle CRSD and EVMD to start&lt;br /&gt;&lt;br /&gt;Oracle CRS stack installed and running under init(1M)&lt;br /&gt;&lt;br /&gt;Running vipca(silent) for configuring nodeapps&lt;br /&gt;&lt;br /&gt;The given interface(s), "eth0" is not public. Public interfaces should be used t o configure virtual IPs.&lt;br /&gt;&lt;br /&gt;Cluster Split based on the service name&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;Cluster split - 2 nodes for DSS and 1 Node for OLTP&lt;br /&gt;&lt;br /&gt;The requirement is to allocate 1 node exclusively to OLTP enviroment out of 3 node cluster.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;The logic is based on the setting up the service_name&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;SQL&gt; show parameter service_name&lt;br /&gt;&lt;br /&gt;NAME TYPE VALUE&lt;br /&gt;------------------------------------ ----------- ------------------------------&lt;br /&gt;service_names string orclexperts.info&lt;br /&gt;SQL&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;SQL&gt; alter system set service_names='OLTP_experts' sid='ORCLEXPERTS3';&lt;br /&gt;&lt;br /&gt;System altered.&lt;br /&gt;&lt;br /&gt;SQL&gt;&lt;br /&gt;[oracle@s262381ch3el101 ~]$ lsnrctl services | grep -i orclexperts&lt;br /&gt;Service "ORCLEXPERTS.info" has 3 instance(s).&lt;br /&gt;Instance "ORCLEXPERTS1", status READY, has 2 handler(s) for this service...&lt;br /&gt;Instance "ORCLEXPERTS2", status READY, has 1 handler(s) for this service...&lt;br /&gt;Instance "ORCLEXPERTS3", status READY, has 1 handler(s) for this service...&lt;br /&gt;Service "ORCLEXPERTSXDB.info" has 3 instance(s).&lt;br /&gt;Instance "ORCLEXPERTS1", status READY, has 1 handler(s) for this service...&lt;br /&gt;Instance "ORCLEXPERTS2", status READY, has 1 handler(s) for this service... &lt;br /&gt;Instance "ORCLEXPERTS3", status READY, has 1 handler(s) for this service...&lt;br /&gt;Service "ORCLEXPERTS_XPT.info" has 3 instance(s). &lt;br /&gt;Instance "ORCLEXPERTS1", status READY, has 2 handler(s) for this service...&lt;br /&gt;Instance "ORCLEXPERTS2", status READY, has 1 handler(s) for this service...&lt;br /&gt;Instance "ORCLEXPERTS3", status READY, has 1 handler(s) for this service...&lt;br /&gt;Service "OLTP_ORCLEXPERTS.info" has 1 instance(s).&lt;br /&gt;Instance "ORCLEXPERTS3", status READY, has 1 handler(s) for this service...&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;[oracle@experts1 admin]$ sqlplus system/xxxx@OLTP_ORCLEXPERTS&lt;br /&gt;&lt;br /&gt;SQL*Plus: Release 10.2.0.2.0 - Production on Wed Feb 6 22:35:44 2008&lt;br /&gt;&lt;br /&gt;Copyright (c) 1982, 2005, Oracle. All Rights Reserved.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Connected to:&lt;br /&gt;Oracle Database 10g Enterprise Edition Release 10.2.0.2.0 - 64bit Production&lt;br /&gt;With the Partitioning, Real Application Clusters, OLAP and Data Mining options&lt;br /&gt;&lt;br /&gt;SQL&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;SQL&gt; show parameter service_name&lt;br /&gt;&lt;br /&gt;NAME TYPE VALUE&lt;br /&gt;------------------------------------ ----------- ------------------------------&lt;br /&gt;service_names string OLTP_ORCLEXPERTS, ORCLEXPERTS.info&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;TNS:&lt;br /&gt;OLTP_ORCLEXPERTS =&lt;br /&gt;(DESCRIPTION =&lt;br /&gt;(ADDRESS = (PROTOCOL = TCP)(HOST = orclexperts3-vip)(PORT = 1521))&lt;br /&gt;(CONNECT_DATA =&lt;br /&gt;(SERVER = DEDICATED)&lt;br /&gt;(SERVICE_NAME = OLTP_ORCLEXPERTS.info)&lt;br /&gt;(INSTANCE_NAME = ORCLEXPERTS3)&lt;br /&gt;)&lt;br /&gt;)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;All OLTP connection strings changed to use the above string value.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6897144177599049811-8394634112414140511?l=ashakkhan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ashakkhan.blogspot.com/feeds/8394634112414140511/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6897144177599049811&amp;postID=8394634112414140511' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/8394634112414140511'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/8394634112414140511'/><link rel='alternate' type='text/html' href='http://ashakkhan.blogspot.com/2009/07/common-rac-errors.html' title='Common RAC errors'/><author><name>Ashak Ali Khan</name><uri>http://www.blogger.com/profile/02783946057420260374</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_1rApOiGy_ns/Sa0sDHWokDI/AAAAAAAAAXQ/fQut2UPtxgY/S220/Ashak_Khan.bmp'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6897144177599049811.post-8713691519234873985</id><published>2009-05-03T01:23:00.000-07:00</published><updated>2009-05-03T01:24:14.992-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Management'/><title type='text'>Effective Leadership Tips</title><content type='html'>1. Be a leader, not a victim: Do not blame others or look for scapegoats. Your ability to be a leader starts with mastering yourself. &lt;br /&gt;&lt;br /&gt;2. Beware of your blind spots: The key to teamwork is valuing others’ perspectives, and encouraging them to fill in where you have gaps.&lt;br /&gt;&lt;br /&gt;3. Take care of important relationships: Treat others as though they are the most important thing. A Chinese proverb says: If you want one year’s prosperity, grow grain. If you want ten years’ prosperity, grow trees. If you want 100 years’ prosperity, grow people.&lt;br /&gt;&lt;br /&gt;4. Balance short- and long-term results: The ‘golden egg’ or the ‘golden goose;’ which do you protect? Both, but with balance.&lt;br /&gt;&lt;br /&gt;5. Know and live your mission: Create a personal mission statement that is short, memorable, passionate, measurable and for which you become accountable.&lt;br /&gt;&lt;br /&gt;6. Do what matters most – now: Do things that will make your personal life more meaningful, and do what it takes to move to a higher level of professional success.&lt;br /&gt;&lt;br /&gt;7. Be a master communicator: Practice the 2:1 rule; listen twice as much as you speak. From listening comes wisdom.&lt;br /&gt;&lt;br /&gt;8. Be a great team player: When you have disagreements or conflicts with others, try this approach: “you see it differently, help me understand.”&lt;br /&gt;&lt;br /&gt;9. Commit one hour per day to personal renewal: Take time for spiritual, physical, and professional growth. A great leader takes care of him/her self.&lt;br /&gt;&lt;br /&gt;10. Live with integrity: Live and lead in honesty and forthrightness; be true to your word.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6897144177599049811-8713691519234873985?l=ashakkhan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ashakkhan.blogspot.com/feeds/8713691519234873985/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6897144177599049811&amp;postID=8713691519234873985' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/8713691519234873985'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/8713691519234873985'/><link rel='alternate' type='text/html' href='http://ashakkhan.blogspot.com/2009/05/effective-leadership-tips.html' title='Effective Leadership Tips'/><author><name>Ashak Ali Khan</name><uri>http://www.blogger.com/profile/02783946057420260374</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_1rApOiGy_ns/Sa0sDHWokDI/AAAAAAAAAXQ/fQut2UPtxgY/S220/Ashak_Khan.bmp'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6897144177599049811.post-6529420361980124736</id><published>2009-05-03T01:17:00.000-07:00</published><updated>2009-05-03T01:18:18.165-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Management'/><title type='text'>5 Tips on Effective Leadership</title><content type='html'>Communicate clearly and routinely. Lay out your company goals and principles in a mission statement and keep sharing your vision with your employees.&lt;br /&gt;&lt;br /&gt;Involve employees in setting objectives. Give them feedback on how they are progressing toward meeting those targets.&lt;br /&gt;&lt;br /&gt;Give your people authority, then hold them accountable. But don’t go after them personally when things go wrong. Find out first if the process is at fault.&lt;br /&gt;&lt;br /&gt;Be accountable yourself. Install an advisory board or executive team to help you make good strategic decisions and give you feedback on your own performance.&lt;br /&gt;&lt;br /&gt;Be trustworthy and extend trust to your employees. That will help you earn their loyalty and strengthen your company&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6897144177599049811-6529420361980124736?l=ashakkhan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ashakkhan.blogspot.com/feeds/6529420361980124736/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6897144177599049811&amp;postID=6529420361980124736' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/6529420361980124736'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/6529420361980124736'/><link rel='alternate' type='text/html' href='http://ashakkhan.blogspot.com/2009/05/5-tips-on-effective-leadership.html' title='5 Tips on Effective Leadership'/><author><name>Ashak Ali Khan</name><uri>http://www.blogger.com/profile/02783946057420260374</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_1rApOiGy_ns/Sa0sDHWokDI/AAAAAAAAAXQ/fQut2UPtxgY/S220/Ashak_Khan.bmp'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6897144177599049811.post-1605996500852014429</id><published>2009-05-03T00:17:00.000-07:00</published><updated>2009-05-03T00:24:14.648-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='11g New Features'/><title type='text'>Oracle 11g  New Features</title><content type='html'>R M A N&lt;br /&gt;  Active Database Duplication or Network-Aware database duplication&lt;br /&gt;    No need to backup for duplication. Doesn't copy and apply online redo log, only up to most recent archive. Both password file required with same password. &lt;br /&gt;    Flash Recovery Area is not copied. Archive log are copied if necessary.&lt;br /&gt;    Source may be in mount or open(archivelog mode). Can automatically copy if specify the  clause.&lt;br /&gt;        duplicate database to dupdb from active database db_file_name_convert '/u01', '/v01' SPFILE parameter_value_convert '/u01', '/v01'&lt;br /&gt;        set log_file_name_convert '/u01', '/v01' SET sga_max_size '3000m' set sga_target '2000m'&lt;br /&gt;      SET=&gt; SET are processed later, does not specify db_file_name_convert&lt;br /&gt;      SPFILE =&gt; SPFILE must be in use in source instance, it will be copied on destination and used to start auxiliary instance. Destination database must be&lt;br /&gt;        started using a text init.ora containing only DB_NAME parameter.&lt;br /&gt;      db_file_name_convert=&gt; replace pattern for datafiles and tempfiles&lt;br /&gt;      NOFILENAMECHECK=&gt; databases are on different hosts, no need to check for different filenames&lt;br /&gt;      PASSWORD FILE=&gt; if specified will copy source password file to destination&lt;br /&gt;    1)-Create an init.ora for auxiliary instance&lt;br /&gt;    2)-Create a passwordfile for auxiliary instance with same SYSDBA password as the source(target)&lt;br /&gt;    3)-startup auxiliary instance using startup nomount&lt;br /&gt;    4)-Connect RMAN to target and to auxiliary instance, and issue the active database duplication command&lt;br /&gt;  &lt;br /&gt;  Parallel Backup or Multisection backup &lt;br /&gt;      Parallelize datafiles backup up to 265 parts(manually customizable for each datafile), multiple channel recommended. &lt;br /&gt;      All section have same size may be except the last. SECTION SIZE mandatory and value must be specified. Can't use MAXPIECESIZE with SECTION SIZE.&lt;br /&gt;      SECTION SIZE may be specified using VALIDATE DATAFILE command. Each section is a backup piece in the backup set.&lt;br /&gt;      backup SECTION SIZE 200m tablespace pippo;&lt;br /&gt;    * Views *&lt;br /&gt;      V$BACKUP_DATAFILE and RC_BACKUP_DATAFILE (piece, section_size, multi_section[yes, no])&lt;br /&gt;  &lt;br /&gt;  Archival(Long-Term) Backup - KEEP option &lt;br /&gt;      Are backed up control file, spfile, data and archived redo logs.&lt;br /&gt;    LOGS/NOLOGS clause can't be specified with KEEP. Self-contained archival backup immune from any retention. Redo logs are switched, current needed.&lt;br /&gt;      Store archival backup in non flash recovery area, may fill up quickly. Recovery catalog required if using KEEP FOREVER. &lt;br /&gt;      CHANGE not allowed for backup in flash recovery area.&lt;br /&gt;      An archived log is never made obsolete if needed for a guaranteed restore point, may be obsolete if needed for a normal restore point.&lt;br /&gt;      backup database format 'c:\arch\db_%U.bkp' tag quarterly KEEP until time 'sysdate + 365' RESTORE POINT firstq08;&lt;br /&gt;        #KEEP=&gt;[FOREVER, UNTIL TIME], recovery catalog required if using KEEP FOREVER. &lt;br /&gt;        #RESTORE POINT=&gt;SCN is captured when backup finish. The time until which RMAN can restore an archival backup&lt;br /&gt;      CHANGE backup tag 'pippo_bck' forever;&lt;br /&gt;      change copy of database controlfile keep;&lt;br /&gt;  &lt;br /&gt;  Fast Incremental Backup &lt;br /&gt;    Flashback Database feature is required, searches flashback logs before backup files. Only corrupted blocks are restored and recovered in a datafile. &lt;br /&gt;      Archivelog mode always required. Db mounted or open. No proxy copies allowed. Block change tracking may be enabled on physical standby db.&lt;br /&gt;    10g blockrecover(no more available)-&gt; 11g recover...block&lt;br /&gt;    recover datafile 2 block24 datafile 10 block 21 from tag=sundaynight;&lt;br /&gt;    RMAN&gt;recover corruption list; &lt;br /&gt;      #recover all corrupted blocks from listed in V$DATABASE_BLOCK_CORRUPTION, view data is then deleted&lt;br /&gt;    * Identified Corrupt Blocks *&lt;br /&gt;      analyze table, analyze index, list failure, validate(populates V$DATABASE_BLOCK_CORRUPTION), backup...validate, export to /dev/null, dbverify&lt;br /&gt;      * Views *&lt;br /&gt;        V$DATABASE_BLOCK_CORRUPTION list block corrupted, populated by VALIDATE DATABASE&lt;br /&gt;        &lt;br /&gt;  RMAN Compression&lt;br /&gt;    BZIP2(good compression) and ZLIB(def. faster 45%)&lt;br /&gt;    RMAN&gt;configure compression algorithm 'bzip2';&lt;br /&gt;  &lt;br /&gt;  Archived Redo Log Deletion&lt;br /&gt;    configure archivelog deletion policy=NONE(def.)(applies to all archived logs stored on disk including Flash Recvoery area)(Archived log will be marked&lt;br /&gt;      for deletion after transfered to all log_archive_dest_n and backed up or be obsolete)&lt;br /&gt;    configure archivelog deletion policy to backed up 2 times to sbt  &lt;br /&gt;  &lt;br /&gt;  RMAN Catalog merging - Export/Import RMAN catalog&lt;br /&gt;    source will be deleted and deregistered(unless you use ), source db version same as RMAN client version, &lt;br /&gt;    fails if same db is already registered in destination&lt;br /&gt;    import catalog rman/rman@reporman dbid=122,123 db_name=pippo,pluto dbid=121,31; &lt;br /&gt;      #you are connected to destination, rman@reporman will be imported&lt;br /&gt;  &lt;br /&gt;  Virtual private catalog or Virtual catalog&lt;br /&gt;    1) SYSDBA&gt; create the db user &lt;br /&gt;    2) SYSDBA&gt; grant recovery_catalog_owner to user &lt;br /&gt;    3) real CATALOG OWNER&gt; grant [REGISTER_DATABASE | REGISTER] to user; &lt;br /&gt;       #permits to register unknown databases, does not grant recovery catalog access&lt;br /&gt;       and / or&lt;br /&gt;       real CATALOG OWNER&gt;grant catalog for database t1 to user; &lt;br /&gt;       #grant access to a target existing database to a user even if db is not yet registered, use DBID if db not yet registered. &lt;br /&gt;       #User may un/register databases. User creates local scripts and read global scripts&lt;br /&gt;    5) VIRTUAL USER - RMAN&gt; create virtual catalog; &lt;br /&gt;       #use for 11g or later database &lt;br /&gt;       or&lt;br /&gt;       VIRTUAL USER - RMAN&gt; DBMS_RCVCAT.create_virtual_catalog &lt;br /&gt;       #use for 10g database &lt;br /&gt;    6) VIRTUAL USER - RMAN&gt; register database;&lt;br /&gt;    RMAN&gt;revoke all from privileges from user;&lt;br /&gt;    * Packages *&lt;br /&gt;      DBMS_RCVCAT.create_virtual_catalog &lt;br /&gt;      #must execute before working with any pre-11.1 database. Does not create a virtual private catalog&lt;br /&gt;&lt;br /&gt;Data Recovery Advisor&lt;br /&gt;  &lt;- RMAN, EM Support Workbench &amp; Database Control, Healt Monitor(following errors), VALIDATE or BACKUP command&lt;br /&gt;  Quickly detect and analyzes data failures, repair manual(mandatory, optional) or automatic, data loss or no&lt;br /&gt;  Automatically repair some network I/O errors, control file and datafile inconstistencies, accidental renaming of datafiles. No RAC. No standby database.&lt;br /&gt;  No ORA-600, must be in Healt Monitor&lt;br /&gt;  status(open, closed), priority(critical, high, low), grouping&lt;br /&gt;  1) list failure&lt;br /&gt;      #failures are listed by priority [1:CRITICAL, 2:HIGH, 3:LOW], failures with same priority are ordered cronologically&lt;br /&gt;  2) advise failure&lt;br /&gt;         #generate manual and automated options for repair, rman scripts are generated for automated options&lt;br /&gt;  3) repair failure   &lt;br /&gt;         #by default high and critical failures will be repaired and closed. Generates warning if new failures are detected since last &lt;br /&gt;  May not automatically close a fixed failure&lt;br /&gt;  * Views *&lt;br /&gt;    V$IR_FAILURE or list failure; change failure 7 closed; change failure priority low; &lt;br /&gt;      #failures are listed by priority [1:CRITICAL, 2:HIGH, 3:LOW], failures with same priority are ordered cronologically&lt;br /&gt;    V$IR_MANUAL_CHECKLIST or advise failure; &lt;br /&gt;      #summary and close fixed&lt;br /&gt;    V$IR_REPAIR or repair failure; &lt;br /&gt;      #requires advise failure&lt;br /&gt;    validate database; &lt;br /&gt;      #checks only for intrablock(no interblock) corruption in all datafiles, control files and the server parameter file&lt;br /&gt;    validate database; &lt;br /&gt;      #proactive check&lt;br /&gt;&lt;br /&gt;Healt Monitor&lt;br /&gt;  -&gt; run Data Recovery Advisor checks&lt;br /&gt;  View Healt Monitor checker reports using: EM, ADRCI, DBMS_HM, V$HM_RUN&lt;br /&gt;  Healt check mode can be:&lt;br /&gt;    [Reactive]: Healt check ran automatically when a critical error occurred&lt;br /&gt;    [Manual]&lt;br /&gt;  Available checks:&lt;br /&gt;    [Data Block Integrity]  : check disk image block corruptions, checksum failures and intrablock corruptions. Not check for interblock corruption&lt;br /&gt;    [Db Structure Integrity]: verify accessibility, consistency and corruption of all database files&lt;br /&gt;    [Undo Segment Integrity]: check for logical Undo corruptions and attempt to repair them&lt;br /&gt;    [Redo Integrity check], [Dictionary Integrity check]&lt;br /&gt;  * Packages *&lt;br /&gt;    DBMS_HM.run_check(check_name, run_name, input_params) &lt;br /&gt;    DBMS_HM.(GET)RUN_REPORT(run_name M, type O , level O )&lt;br /&gt;  * Views *&lt;br /&gt;    V$HM_CHECK(all possible checks), V$HM_RUN(view HM checker reports), V$HM_CHECK_PARAM, V$HM_FINDING, V$HM_RECOMMENDATION&lt;br /&gt;  show hm_run; &lt;br /&gt;    #show all checks&lt;br /&gt;&lt;br /&gt;Partitioning&lt;br /&gt;See http://www.oracle.com/technology/pub/articles/oracle-database-11g-top-features/11g-partitioning.html&lt;br /&gt;    Interval partitioning &lt;br /&gt;    Limitation&lt;br /&gt;      Cannot be used on subpartitions. &lt;br /&gt;      When used in primary partitions with subpartitions, only a single subpartition is created accepting DEFAULT values&lt;br /&gt;    The high value of the range partitions is called the Transition Point&lt;br /&gt;    Extends range partitioning by automatically creating new partitions on new data insert out of bounds. Only a single column DATE or NUMBER.&lt;br /&gt;    Works on index-organized tables. You can't create domain indexes&lt;br /&gt;    create table pippo(time_id date) partition by range(time_id) &lt;br /&gt;        interval(numtoyminterval(1, 'month'))&lt;br /&gt;        (partition p0 values less than to_date('3/12/1976', 'dd/mm/yyyy')),&lt;br /&gt;        (partition p1 values less than to_date('3/01/1977', 'dd/mm/yyyy'))&lt;br /&gt;    alter table pippo merge partitions for(to_date('3/12/1976', 'dd/mm/yyyy')), to_date('3/01/1977', 'dd/mm/yyyy')))&lt;br /&gt;    #the partitions to merge must be adiacent&lt;br /&gt;    * Views *&lt;br /&gt;      DBA_TAB_PARTITIONS(partitioning_type[range, interval(new automatically created)])&lt;br /&gt;  &lt;br /&gt;  System partitioning&lt;br /&gt;    The application must explicitly name the partition in the insert/merge statements, not required for update/delete. &lt;br /&gt;    Can't create as CTAS, Hurts performances. No keys. Partitions can have different physics attributes. Can't create unique local indexes. Can't split partitions&lt;br /&gt;    create table pippo(c1 number) partition by system (partition p1, partition p2)&lt;br /&gt;    insert into pippo partition(pippo) values(1)&lt;br /&gt;    alter table pippo merge partitions p1, p2 into partition p1&lt;br /&gt;  &lt;br /&gt;  Virtual Column-Based partitioning&lt;br /&gt;    Virtual column is computed on the fly. Datatype is optional. Can collect optimizer statistics. You can index a virtual column. &lt;br /&gt;    Can use a virtual column in all dml/ddl. Can partition over a virtual column. Can create virtual columns only on normal heap table. &lt;br /&gt;    Can't refers another virtual column. Output must always be scalar no lob, long, raw, ... Can't use pl/sql function if used for partitioning&lt;br /&gt;    create table pippo (c1 number, c2 number generated always as (c1*2))&lt;br /&gt;  &lt;br /&gt;  Reference partitioning&lt;br /&gt;    Master table is a partitioned table. Can't use interval partitioning. Requires foreign key relationship. &lt;br /&gt;    If no tablespace specified then partitions are in same tbs of parent table's partition. Can't specify partitions bounds. &lt;br /&gt;    Partition names must be unique between master and reference table. Can't disable the foreign key. &lt;br /&gt;    Can't add or drop partitions from child table while its possibly for parent table.&lt;br /&gt;    Pruning and partitionwise joins works even if query predicates are different from the partitioning key&lt;br /&gt;    &lt;br /&gt;    create table customers (&lt;br /&gt;      cust_id   number primary key,&lt;br /&gt;      cust_name varchar2(200),&lt;br /&gt;      rating    varchar2(1) not null)&lt;br /&gt;      partition by list (rating)(partition pA values ('A'), partition pB values ('B'));&lt;br /&gt;     &lt;br /&gt;    create table sales (&lt;br /&gt;      sales_id    number primary key,&lt;br /&gt;      cust_id     number not null,&lt;br /&gt;      sales_amt   number,&lt;br /&gt;      constraint  fk_sales_01 foreign key (cust_id) references customers)&lt;br /&gt;    partition by reference (fk_sales_01);&lt;br /&gt;  &lt;br /&gt;  Composite Partitioning&lt;br /&gt;    You can create composite partitions in any combination. &lt;br /&gt;    Range-range    Range-hash    Range-list   List-range   List-hash   List-list&lt;br /&gt;Directory structure&lt;br /&gt;$ORACLE_BASE (recommended only)&lt;br /&gt;  $ORACLE_HOME (do not explicitly set)&lt;br /&gt;    dbs&lt;br /&gt;      oranfstab sfirst default location&lt;br /&gt;  Flash recovery area (different disk then datafiles)&lt;br /&gt;  Datafiles           (different disk then Flash Recovery Area)&lt;br /&gt;  Inventory&lt;br /&gt;  /diag Advanced Diagnostic Repository (ADR base=diagnostic_dest multiple ADR homes allowed but only one ADR base) &lt;br /&gt;    Db name&lt;br /&gt;      Instance name (use v$DIAG_INFO to view these paths) ADR_HOME (multiple ADR homes allowed but only one ADR base)&lt;br /&gt;        alert (xml alert format)&lt;br /&gt;        hm (checker reports)&lt;br /&gt;        incident &lt;br /&gt;        trace(V$DIAG.name='Diag Trace')&lt;br /&gt;          text alert.log&lt;br /&gt;          background process trace files&lt;br /&gt;          foreground process trace files&lt;br /&gt;        wallet&lt;br /&gt;          ewallet.p12&lt;br /&gt;        cdump&lt;br /&gt;        bdump&lt;br /&gt;        udump&lt;br /&gt;        ...&lt;br /&gt;&lt;br /&gt;init.ora new params&lt;br /&gt;# A S M&lt;br /&gt;asm_preferred_read_failure_groups=data.locationA, data.locationB #Dynamic. disk_group_name.failure_group only disks local to the instance!!&lt;br /&gt;asm_diskgroups&lt;br /&gt;asm_diskstring&lt;br /&gt;# M E M O R Y&lt;br /&gt;sga_target=0 #Static. Enable Automatic Memory Management &lt;br /&gt;pga_aggregate_target=0 #Static. Enable Automatic Memory Management &lt;br /&gt;memory_target=900M #dynamic default 0 and when upgrading. Total memory for SGA and PGA. With sga_target=0 and pga_target=0 then defaults 60% to SGA and 40% to PGA&lt;br /&gt;                   #With sga_target!=0 and pga_target!=0 they indicate minimum values&lt;br /&gt;memory_max_target=2000M; #if unset defaults to memory_target(if greater than 0) or 0(if memory_target is not set)&lt;br /&gt;# R E S U L T   C A C H E&lt;br /&gt;result_cache_max_size #Static. Set the high limit. 0 disable. Maximum is 0.25% of memory_target, 0.5% of sga_target, 1%&gt;&lt;75% of shared pool.&lt;br /&gt;result_cache_max_result #Def. 5, max 100. Max % of result cache for a single cached result&lt;br /&gt;result_cache_remote_expiration #Def. 0. Time for a remote cached result to be valid. Positive values may lead to uncorrect results&lt;br /&gt;result_cache_mode MANUAL(def.), FORCE #Dynamic. MANUAL works only with /*+ result_cache*/ hint on SQL. Same behaviour for client cache. &lt;br /&gt;                                      #FORCE cache all unless /*+ no_result_cache */&lt;br /&gt;client_result_cache_size #Def. 0 disabled. Static. Size of client cache in bytes. Overriden by oci_result_cache_max_size&lt;br /&gt;client_result_cache_lag #Set a low value for unfrequent accesses&lt;br /&gt;  # client sqlnet.ora only&lt;br /&gt;  #oci_result_cache_max_size #Overrides client_result_cache_size&lt;br /&gt;  #oci_result_cache_max_rset_size #set max size in bytes of a single SQL result for a process&lt;br /&gt;  #oci_result_cache_max_rset_rows #set max size in rows of a single SQL result for a process&lt;br /&gt;# P L / S Q L&lt;br /&gt;plsql_optimize_level=3 #default is 2 recommended 3. 2 is the minimum level to enable native compilation&lt;br /&gt;plsql_code_type=INTERPRETED(def.), NATIVE #dynamic. INTERPRETED: Pl/sql is precompiled to Pl/sql bytecode using C compiler. &lt;br /&gt;   #NATIVE db compile Pl/sql to machine code, no need of interpreter, DLL are stored and loaded in db catalog, no filesystem involved&lt;br /&gt;# S E C U R I T Y&lt;br /&gt;sec_case_sensitive_logon=TRUE(def.), FALSE - case sensitive passwords&lt;br /&gt;sec_max_failed_login_attempts=5 #after 5 attempts the connection will be dropped&lt;br /&gt;sec_protocol_error_further_action=[CONTINUE | DROP | DELAY], 5 #CONTINUE allow the connection to continue DROP terminate the client connection after 5 attempts&lt;br /&gt;                                                               #DELAY delay client connection for 5 seconds&lt;br /&gt;sec_protocol_error_trace_action=none, trace, log, alert #TRACE log to user trace, LOG log to alert.log&lt;br /&gt;audit_trail=default is DB #Audit is enabled by default and stored in AUD$&lt;br /&gt;ldap_directory_sysauth= #YES: if a password file is configured then it will be checked before other strong authentications methods. &lt;br /&gt;# O P T I M I Z E R&lt;br /&gt;optimizer_capture_sql_plan_baselines=FALSE(def.), TRUE #db create and maintains a plan history for repeatable SQL, dynamic&lt;br /&gt;optimizer_use_sql_baselines=FALSE(def.) #TRUE plan history is automatically captured and mantained for repeated SQL statements.&lt;br /&gt;optimizer_use_private_statistics&lt;br /&gt;optimizer_use_pending_statistics=FALSE(def.) #Dynamic. Alter session to test pending statistics.&lt;br /&gt;optimizer_use_invisible_indexes=FALSE(def.) #dynamic. TRUE all invisible indexes are treated as visible&lt;br /&gt;optimizer_features_enable #may force the optimizer to work as in 10g&lt;br /&gt;#&lt;br /&gt;control_management_pack_access=NONE, DIAGNOSTIC, DIAGNOSTIC+TUNING(def.)&lt;br /&gt;java_jit_enabled=true #default is true. Java code will be compiled natively with no C compiler&lt;br /&gt;control_management_pack_access=DIAGNOSTIC+TUNING(def.), NONE(disable ADDM)&lt;br /&gt;memory_target&lt;br /&gt;memory_max_target&lt;br /&gt;diagnostic_dest= #ADR base (optional). Default diagnostic_dest=%ORACLE_BASE if %ORACLE_BASE defined else $ORACLE_HOME/log, many homes allowed&lt;br /&gt;ddl_lock_timeout=0(def.) #dynamic. length of time for a ddl waiting a busy resource, max 1000000(11.5 dd)&lt;br /&gt;db_securefile=ALWAYS, FORCE, PERMITTED(def.), NEVER, IGNORE #dynamic. &lt;br /&gt;  #ALWAYS: if tbs is enabled for ASSM Automatic Segment Space Management creates all lob as SecureFile otherwise creates BasicFiles. &lt;br /&gt;  #FORCE create all lob as SecureFiles regardless of the tablespace ASSM. &lt;br /&gt;  #PERMITTED SecureFiles creation is allowed. &lt;br /&gt;  #NEVER SecureFile creation is never allowed. &lt;br /&gt;  #IGNORE SecureFile creation is not allowed and ignores errors creating BasicFiles with SecureFile options&lt;br /&gt;db_ultra_safe=OFF(1:OFF 2:TYPICAL 3:TYPICAL), DATA_ONLY(1:MEDIUM 2:FULL 3:TYPPICAL), DATA_AND_INDEX(1:FULL 2:FULL 3:TYPICAL)&lt;br /&gt;  1 db_block_checking=TYPICAL, OFF or FALSE, MEDIUM, FULL or TRUE&lt;br /&gt;  2 db_block_checksum=FALSE(def.), FULL(recomm.)&lt;br /&gt;  3 db_lost_write_protect=TYPICAL&lt;br /&gt;statistic_level=[TYPICAL | ALL | BASIC] #BASIC will disable AWR providing SQL sources to Automatic SQL Tuning Advisor and ADDM&lt;br /&gt;filesystemio_options=[ASYNCH | SETALL] #ASYNCH or SETALL allows I/O calibration&lt;br /&gt;timed_statistics=true #TRUE allows I/O calibration&lt;br /&gt;&lt;br /&gt;sqlnet.ora new param&lt;br /&gt;  encryption_wallet_location=(source=(method=file)(method_data=(directory=/yourdir)))&lt;br /&gt;&lt;br /&gt;Database Replay&lt;br /&gt;  Useful for debugging, upgrading the OS, converting from a single instance to RAC&lt;br /&gt;  Captures user switching sessions, logins, all SQL(text, context and frequency), DML, DDL, session and system control calls(alter session..., alter system...)&lt;br /&gt;  NOT captures flashback SQL, direct path loads, distributed transactions, background activities, scheduled jobs&lt;br /&gt;  &lt;br /&gt;  Steps&lt;br /&gt;    1) With SYSDBA or SYSOPER required, you should(but not required) restart the db in RESTRICTED mode before capture&lt;br /&gt;    2) Create a directory to store the capture files and ensure space is enough&lt;br /&gt;    3) capture and optionally define filters&lt;br /&gt;    4) This step is optional but recommended. You should recreate a test environment identical to what the capture was at the beginning and reset the system clock.&lt;br /&gt;    5) Move captured file to test environment&lt;br /&gt;    6) Preprocess captued workload, this only happens once and simply converts captured data into files that can be replayed&lt;br /&gt;    7) Remap connection strings and modify database links&lt;br /&gt;    8) Set up one or more clients, each client can control one or more workload sessions&lt;br /&gt;&lt;br /&gt;  Upgrading&lt;br /&gt;  1)run @/app/oracle/product/11.1.0/db_1/rdbms/admin/utlu111i.sql(Pre-Upgrade Information Tool) from 10g database&lt;br /&gt;  1.5) startup upgrade# from 11g&lt;br /&gt;  2)@?/rdbms/admin/catupgrd.sql&lt;br /&gt;  3)@?/rdbms/admin/utlu111s.sql(post upgrade status)&lt;br /&gt;  4)@?/rdbms/admin/catuppst.sql(post upgrade actions)&lt;br /&gt;  5)@?/rdbms/admin/utlrp.sql[no params | 0 | 1 | n] &lt;br /&gt;    #No params: parallel recompilation based on CPU_COUNT.  1: serial.  n: parallel n  &lt;br /&gt;  6)Enhance compatibility param&lt;br /&gt;    * Avoid plan regression *&lt;br /&gt;    Before upgrade capture plans for SQL Workload into an Sql Tuning Set(STS)&lt;br /&gt;    After upgrade manually load the old plans&lt;br /&gt;&lt;br /&gt;ADR Automatic Diagnostic Repository&lt;br /&gt;  diagnostic_dest=ADR base (optional)&lt;br /&gt;  default diagnostic_dest=%ORACLE_BASE if %ORACLE_BASE defined else $ORACLE_HOME/log, many homes allowed&lt;br /&gt;  max 5 diagnostic data per hour per problem&lt;br /&gt;  ADR Command  Interpreter &lt;br /&gt;    Many homes allowed concurrently, use SET HOMEPATH. Not all commands works with multiple homes, homepath is null by default, all homes are current by default&lt;br /&gt;    view XML alert, &lt;br /&gt;    show hm_run, create report hm_run , show report hm_run &lt;br /&gt;  * Views *&lt;br /&gt;    V$DIAG_INFO show all locations&lt;br /&gt;  &lt;br /&gt;  ADRCI - ADR Command Interface&lt;br /&gt;    Used to view diagnostic data, view content of alert log file, package incidents and problem informations&lt;br /&gt;  &lt;br /&gt;  Incident Packaging Service&lt;br /&gt;    &lt;- EM Support Workbench(Support Workbench-&gt;Incident Package Configuration)(Collect diagnostic data, Generates incident reports and transmits), ADRCI&lt;br /&gt;    Critical Error=Problem=ORA-04031, composed of many Incidents=ORA-04031&lt;br /&gt;    Incident(Collecting, Ready, Tracking, Closed, Data Purged)&lt;br /&gt;    Retention: 1 year metadata(retention may be changed with EM), 1 month dumps. Incident is closed after twice retention elapses, is purged 30 days after open&lt;br /&gt;    1 Generate logical pack, 2 finalize, 3 gen. physical&lt;br /&gt;    Incident thresholds cannot be modified.&lt;br /&gt;    No edit and customizing when Quick Packaging&lt;br /&gt;    Oracle Support Workbench may be enabled to automatically upload files to Oracle Support by providing infos during the installation of &lt;br /&gt;      Oracle Configuration Manager&lt;br /&gt;    Flood-controlled incidents&lt;br /&gt;      are incidents reported multiple times. Alert log is updated and incident recorded in ADR but no dumps are generated.&lt;br /&gt;&lt;br /&gt;SQL Performance Analyzer&lt;br /&gt;  1)First you capture SQL workload in a STS(SQL Tuning Set) &lt;br /&gt;  2)Move SQL workload to test environment&lt;br /&gt;  3)Execute the workload to capture baseline execution data&lt;br /&gt;  4)you make your changes&lt;br /&gt;  5)Execute the workload to capture execution data&lt;br /&gt;  6)Analyze differences in SQL performances&lt;br /&gt;  7)Tune regressed SQL statements&lt;br /&gt;  Identify plan that might have regressed after a database upgrade, hardware reconfiguration, schema changes and any change may affect SQL. &lt;br /&gt;    net SQL workload is identified. ?SQL are executed?&lt;br /&gt;  Cannot use SQL Performance Analizer to identify sql statements that are part of the SQL plan baseline&lt;br /&gt;  You can set a time limit within which all SQL statement in the workload must execute&lt;br /&gt;  DML and DDL are NOT taken in consideration&lt;br /&gt;  * Parameters *&lt;br /&gt;    TIME_LIMIT parameter for all SQL&lt;br /&gt;    LOCAL_TIME_LIMIT for single SQL&lt;br /&gt;    EXECUTION_TYPE[EXPLAIN PLAN | TEST EXECUTE(def.)] &lt;br /&gt;      #TEST EXECUTE: Each SQL Statement in the workload is executed one time and execution plans and statistics are collected.&lt;br /&gt;&lt;br /&gt;SQL Repair Advisor&lt;br /&gt;  &lt;- Support Workbench(Diagnostic Summary-&gt;Active Incidents link)&lt;br /&gt;  (often provides patch to fix) &lt;br /&gt;  sqlplan will change after patching. SQL Repair Advisor is not automatically launched after a SQL statement crash&lt;br /&gt;  * Export patches * DBMS_SQLDIAG.pack_stgtab_sqlpatch(staging_table), export, unpack_stgtab_sqlpatch(staging_table)&lt;br /&gt;  * Packages *&lt;br /&gt;    DBMS_SQLDIAG.create_diagnosis_task(sql_text, task_name)&lt;br /&gt;    DBMS_SQLDIAG.set_tuning_task_parameter(task_id, filter) &lt;br /&gt;    DBMS_SQLDIAG.execute_diagnosis_task(task_name)&lt;br /&gt;    DBMS_SQLDIAG.report_diagnosis_task(task_name, out_type)&lt;br /&gt;    DBMS_SQLDIAG.accept_sql_patch(task_name, task_owner)&lt;br /&gt;  * Views *&lt;br /&gt;    DBA_SQL_PATCHES(recommended patches), drop_sql_patch(procedure)&lt;br /&gt;&lt;br /&gt;SQL Test Case Builder&lt;br /&gt;  &lt;- EM Support Workbench&lt;br /&gt;  Theese informations are gathered for a problematic SQL statement: the text, involved table definitions, optimizer statistics. No dump files&lt;br /&gt;  DBMS_SQLDIAG.export_sql_testcase_dir_by_inc&lt;br /&gt;&lt;br /&gt;Automatic Workload Repository&lt;br /&gt;  &lt;- EM(Adaptive Metric Threshold link -&gt; Baseline Metric Thresholds)&lt;br /&gt;  Requires AWR to have at least the same retention time.&lt;br /&gt;  A baseline is any set ot snapshot taken over a period of time.&lt;br /&gt;  Static baseline&lt;br /&gt;  Repeating static baseline&lt;br /&gt;    #Will be automatically created&lt;br /&gt;  Moving window baseline&lt;br /&gt;    #Will not be automatically created. SYSTEM_MOVING_WINDOW is system provided&lt;br /&gt;  Retention raise from 7 days(10g) to 8 days(11g) for default baseline SYSTEM_MOVING_WINDOW containing Adaptive Threshold&lt;br /&gt;  Thresholds types: &lt;br /&gt;    Significance Level &lt;br /&gt;      #if set to 0.99 alert on 1% change. Based on statistical relevance. Only Basic Metric support Significance level thresholds&lt;br /&gt;    Percentage of maximum &lt;br /&gt;      #calculated using the highest value captured by the baseline&lt;br /&gt;    Fixed values&lt;br /&gt;  When a baseline ends in the future a new baseline with the same name is created.&lt;br /&gt;  * Package *&lt;br /&gt;    DBMS_WORKLOAD.modify_baseline_window_size(wind_size) &lt;br /&gt;      #to change def. retention, if increase then increase AWR retention to match time&lt;br /&gt;    DBMS_WORKLOAD.create_baseline&lt;br /&gt;      #should be used for past time periods&lt;br /&gt;    DBMS_WORKLOAD.create_baseline_template&lt;br /&gt;      single:   (start_time, end_time, bas_name, templ_name, EXPIRATION(O)=&gt;null, dbid(O))&lt;br /&gt;      #EXPIRATION if not specified or null than the baseline template created will never expire&lt;br /&gt;      repeating:(day_of_week, hour_in_day, duration, expiration(O)=&gt;null, start_time, end_time, baseline_name_prefix, template_name, dbid(O))&lt;br /&gt;      #should be used when part or all of the time period is on the future&lt;br /&gt;    DBMS_WORKLOAD.rename_baseline(old, new, dbid(O)) &lt;br /&gt;    DBMS_WORKLOAD.modify_baseline_window_size&lt;br /&gt;    DBMS_WORKLOAD.drop_baseline_template(templ_name, dbid(O))&lt;br /&gt;    DBMS_WORKLOAD.select_baseline_metrics(baseline_name)(display metric thresholds)&lt;br /&gt;    DBMS_WORKLOAD_REPOSITORY... &lt;br /&gt;      #resize AWR retention period&lt;br /&gt;  * View *&lt;br /&gt;    DBA_HIST_BASELINE_TEMPLATE (template_type[single | repeated], repeat_interval[timing string as for DBMS_SCHEDULER])&lt;br /&gt;    DBA_HIST_BASELINE_DETAILS (shutdown[yes | no | null], pct_total_time[total snapshot time / total possible time], error_count[errors during snapshot])&lt;br /&gt;    DBA_HIST_BASELINE (baseline_type[static | moving | window | generated], creation_type, expiration[how long keep the baseline], template_name, last_computed,&lt;br /&gt;      moving_window_size[if baseline_type is null then AWR retention period else number of days of moving window])&lt;br /&gt;&lt;br /&gt;Controlling Automated Maintenace Tasks&lt;br /&gt;  New ABP(Autotask Background Process) &lt;br /&gt;    - converts automatic tasks into Scheduler jobs&lt;br /&gt;    - determine the jobs that need to be created for each maintenance task&lt;br /&gt;    - stores task execution history in the SYSAUX tablespace&lt;br /&gt;    - does NOT execute maintenance tasks&lt;br /&gt;  A task may be enabled/disabled and changed of resource percentage in one or all maintenance windows. May change duration of maintenance windows.&lt;br /&gt;  Database Resource Manager is automatically enabled during maintenance window&lt;br /&gt;  By default AutoTask schedules: optimizer statistics collection, SQL Tuning Advisor and Automated Segment Advisor.&lt;br /&gt;  * MAINTENANCE_WINDOW_GROUP *&lt;br /&gt;    DEFAULT_MAINTENANCE_PLAN(belongs to a resource allocation)&lt;br /&gt;    10g: weeknight_window, weekend_window&lt;br /&gt;    11g: [10PM-02AM, 4h]: monday_window, tuesday_window, wednesday_window, thursday_window, friday_window. [06AM-02AM, 20h]saturday_window, sunday_window&lt;br /&gt;  * Managing Automatic Maintenance Tasks *&lt;br /&gt;    &lt;- EM&lt;br /&gt;    10g: DBMS_SCHEDULER only enable or disable automatic maintenance tasks&lt;br /&gt;    11g: DBMS_AUTO_TASK_ADMIN more fine grained control &lt;br /&gt;         DBMS_AUTO_TASK_ADMIN.enable(client_name, operation, window_name)&lt;br /&gt;         DBMS_AUTO_TASK_ADMIN.disable(client_name, operation, window_name)&lt;br /&gt;         DBA_AUTOTASK_OPERATION lists only automatic task(clients) operations names&lt;br /&gt;         DBA_AUTOTASK_CLIENT&lt;br /&gt;         DBA_AUTOTASK_TASK #view ABP(Autotask Background Process) repository, stores execution history for automated maintenance tasks&lt;br /&gt;  &lt;br /&gt;  I/O Calibration&lt;br /&gt;    &lt;- EM(Database Control -&gt; Performance -&gt; I/O Calibration)&lt;br /&gt;    Requires 10 minutes to run, sysdba, filesystemio_options=[ASYNCH | SETALL], timed_statistics=true&lt;br /&gt;    recommended during low activity, no concurrent calibrations allowed&lt;br /&gt;    DBMS_RESOURCE_MANAGER.calibrate_io(num_disks=&gt;1, max_latency=&gt;10, max_iops, max_mbps, actual_latency)&lt;br /&gt;    V$IO_CALIBRATION_STATUS, DBA_RSC_IO_CALIBRATE, V$IOSTAT_FILE (all show calibration results)&lt;br /&gt;&lt;br /&gt;Database Resource Manager&lt;br /&gt;  Automatic actions based on current session single call usage: switch of Resource Consumer Group(switch grant needed), session kill, statement kill&lt;br /&gt;  Database Resource Manager is automatically enabled during maintenance window&lt;br /&gt;  CREATE_RESOURCE_PLAN(switch_group[null | CANCEL_SQL | KILL_SESSION | a group], switch_time[UNLIMITED], switch_estimate[false | true], &lt;br /&gt;                       switch_io_megabytes[null | mb], witch_io_reqs[null | io#], switch_for_call, switch_for_call[null | true])&lt;br /&gt;  CREATE_PLAN_DIRECTIVE(plan, group_or_subplan, mgmt_p1, switch_group[null | CANCEL_SQL | KILL_SESSION | a group], switch_io_reqs, switch_io_megabytes, &lt;br /&gt;                        switch_for_call, switch_time)&lt;br /&gt;  MIXED_WORKLOAD_PLAN predefined resource plan &lt;br /&gt;    Level 1: 100% sys_group&lt;br /&gt;    Level 2: [85% interactive_group], [15% ORA$AUTOTASK_SUB_PLAN, ORA$DIAGNOSTIC, OTHER_GROUPS]&lt;br /&gt;    Level 3: batch_group&lt;br /&gt;&lt;br /&gt;Oracle Scheduler&lt;br /&gt;  Minimum amount of metadata required for creation, recommended to create a big number of job&lt;br /&gt;  Create Lightweight jobs using: job array, named programs, schedules, DBMS_SCHEDULER.create_job&lt;br /&gt;  Lightweight jobs are created only from job templates(stored proc or Scheduler program), privileges are only inherited from parent job, &lt;br /&gt;  may discriminate DataGuard nodes&lt;br /&gt;  * Package *&lt;br /&gt;    DBMS_SCHEDULER.create_program(program_name, program_action, program_type[plsql_block | stored_procedure], enabled)&lt;br /&gt;    DBMS_SCHEDULER.create_job(job_name, program_name, repeat_interval(opt.), end_time(opt.), schedule_name(opt.), job_style[LIGHTWEIGHT], comments)&lt;br /&gt;  * Create a Job Array and submit using single transaction *&lt;br /&gt;    declare &lt;br /&gt;      testjob sys.job; &lt;br /&gt;      testjobarr sys.job_array; &lt;br /&gt;    begin &lt;br /&gt;      testjobarr:=sys.job_array(); &lt;br /&gt;      testjobarr.extend(500); &lt;br /&gt;      testjob:=sys.job(...); &lt;br /&gt;      testjobarr(i):=testjob; &lt;br /&gt;      dbms_scheduler.create_jobs(testjobarr, 'transactional'); &lt;br /&gt;    end;&lt;br /&gt;  * Remote External Jobs *&lt;br /&gt;    On source db: XML DB(default), run as SYS prvtrsch.plb, DBMS_SCHEDULER.set_agent_registration_pass(registration_password, expiration_date(O), max_uses(O))&lt;br /&gt;    On Dest host: install Scheduler agent(not default), configure schagent.conf, schagent.exe -registerdatabase hostdb 1521, schagent.exe -start&lt;br /&gt;  * Enable a remote job * &lt;br /&gt;    DBMS_SCHEDULER.create_credential(cred_name, username, pwd)&lt;br /&gt;    DBMS_SCHEDULER.create_job(...)&lt;br /&gt;    DBMS_SCHEDULER.set_attribute(job_name, 'credential_name', cred_name)&lt;br /&gt;    DBMS_SCHEDULER.set_attribute(job_name, 'destination', host:port), .enable(job_name)&lt;br /&gt;&lt;br /&gt;Security Enhancements&lt;br /&gt;  sec* parameters&lt;br /&gt;  Pwd are case sensitive(default when NOT upgrading, reset the pwd otherwise), delay after pwd wrong up to 10 secs&lt;br /&gt;  orapwd file=... entries=... ignorecase=n(def.)&lt;br /&gt;  alter profile ... password_verify_function verify_function_11g&lt;br /&gt;  utlpwdmg.sql enforce pwd verification&lt;br /&gt;  OS authentication is checked before the password file&lt;br /&gt;  Authentication using OID can be configured by granting SYSOPER/SYSDBA enterprise role in OID&lt;br /&gt;  Administrators can be authenticated using local OS if they are in the OSDBA or OSPER group&lt;br /&gt;  * ACL Fine Grained Access to network system supplied packages*&lt;br /&gt;    An ACL is used to restrict access to certain hosts is stored in XML format. Connect comprise resove.&lt;br /&gt;    an ACL Access Control List is a users/privilege list, only one ACL per host&lt;br /&gt;    DBMS_NETWORK_ACL_ADMIN.create_acl(acl[name of XML DB priv file], description, principal, is_grant, privilege[connect | resolve]) &lt;br /&gt;      #one privilege must be specified on creation&lt;br /&gt;    DBMS_NETWORK_ACL_ADMIN.add_privilege(acl[name of XML DB priv file], principal, is_grant, privilege[connect | resolve]) &lt;br /&gt;    DBMS_NETWORK_ACL_ADMIN.assign_acl(acl[name of XML DB priv file], host[ex. *.fadalti.com], lower_port, upper_port)&lt;br /&gt;    DBMS_NETWORK_ACL_ADMIN.check_privilege(acl[name of XML DB priv file], username, privilege[connect | resolve])&lt;br /&gt;  &lt;br /&gt;  Oracle Wallet&lt;br /&gt;    &lt;- Oracle Wallet Manager(owm.exe)&lt;br /&gt;    see sqlnet.ora for location. &lt;br /&gt;    Encryption Wallet(manually open after db startup) and Auto-Open Wallet&lt;br /&gt;    Wallet required, configured and opened to encrypt tablespaces, [AES128, 3DES168, AES128, AES192, AES256], I/O overhead&lt;br /&gt;    Attempting to create a table in an ecrypted tablespace with the wallet closed raise an error.&lt;br /&gt;    You cannot change the key of an encrypted tablespace.&lt;br /&gt;    A normal tablespace cannot be converted to an encrypted tablespace.&lt;br /&gt;    Creation method 1: mkstore -wrl $ORACLE_BASE/admin/$ORACLE_SID/wallet -create&lt;br /&gt;    Creation method 2: alter system set encryption key identified by "password"&lt;br /&gt;    create tablespace pippo datafile 'c:\pippo.dbf' size 100m encryption using 'AES128' default storage(encrypt)&lt;br /&gt;&lt;br /&gt;Automatic SQL Tuning Advisor&lt;br /&gt;  &lt;- EM&lt;br /&gt;  statistic_level=TYPICAL, BASIC will disable AWR providing SQL sources. AWR retention less than 7dd disable ASTA.&lt;br /&gt;  STA may evolves SQL Plans from non-accepted to accepted&lt;br /&gt;  10g Automatic Tuning Optimizer(never auto tune) -&gt;upgraded-&gt; 11g Automatic SQL Tuning Advisor&lt;br /&gt;  job name SYS_AUTO_SQL_TUNING_TASK runs for 1 hour, runs only once during nightly maintenace window as part of  MAINTENANCE_WINDOW_GROUP&lt;br /&gt;  Statistical analysis, SQL profiling, Access path analysis(add indexes), SQL structure analysis(Modifying SQL statements)&lt;br /&gt;  STA test and automaticall implement only SQL profiles creations with at least 66% of benefit, &lt;br /&gt;    choses statements from AWR Top SQL with poor performance in the past week or you manually run providing Sql Tuning Sets.&lt;br /&gt;  If run in Tuning Mode then the optimizer might run statistics and store in SQL Profiles&lt;br /&gt;  * Limitations * No recursive SQL, no ad hoc SQL, no parallel SQL, no long run profiled SQL, no insert/delete, no ddl&lt;br /&gt;  * Report *&lt;br /&gt;    Show if statisticd need to be collected, profile was recommended, index recommendation. &lt;br /&gt;    Show a benefit percentage of implementing recommendation for SQL profile and indexes&lt;br /&gt;  * Package *&lt;br /&gt;  DBMS_SQLTUNE.set_tuning_task_parameter(... see params below ...) &lt;br /&gt;    #for automatic tuning only, no manual&lt;br /&gt;    task_name=&gt;'SYS_AUTO_SQL_TUNING_PROG'&lt;br /&gt;      parameter=&gt;accept_sql_profile:        When TRUE auto accept SQL profiles. Profiles are always generated&lt;br /&gt;      parameter=&gt;replace_user_sql_profiles: allowed to replace user created SQL profiles&lt;br /&gt;      parameter=&gt;max_sql_profiles_per_exec: maximum number of allowed SQL profiles changes accepted per tuning task&lt;br /&gt;      parameter=&gt;max_auto_sql_profiles:     maximum total number of allowed SQL profiles changes by db&lt;br /&gt;      parameter=&gt;execution_days_to_expire:  default 30, task history expiration&lt;br /&gt;      parameter=&gt;time_limit:                to change default duration of 1 hour in seconds&lt;br /&gt;      parameter=&gt;test_execute:              only use plan costs&lt;br /&gt;  DBMS_SQLTUNE.report_auto_tuning_task(type[text], level[typical], section[all]) return varchar2&lt;br /&gt;  DBMS_AUTO_TASK_ADMIN.enable(client_name=&gt;'sql tuning advisor', operation=&gt;'NULL', window_name=&gt;['NULL'(all) | (a name)])&lt;br /&gt;  DBMS_AUTO_TASK_ADMIN.disable&lt;br /&gt;    #disable the Automatic Sql Tuning process&lt;br /&gt;  * View *&lt;br /&gt;  DBA_SQL_PROFILES[type], if type=AUTO then auto implemented SQL profile&lt;br /&gt;  DBA_ADVISOR_EXECUTIONS shows metadata information&lt;br /&gt;  DBA_ADVISOR_SQLSTATS shows a list of all SQL compilation and execution statistics&lt;br /&gt;  DBA_ADVISOR_SQLPLANS a list of all SQL execution plans&lt;br /&gt;&lt;br /&gt;SQL Plan Management&lt;br /&gt;  Preserve SQL performance across major system changes&lt;br /&gt;  A SQL Plan may be: &lt;br /&gt;    non accepted #may be evolved to accepted&lt;br /&gt;    accepted     #required for use, all manually loaded &lt;br /&gt;    enabled      #required for use&lt;br /&gt;    fixed        #A fixed plan has precedence over a non-fixed even if with higher cost, is FIXED if at least an enabled plan inside is FIXED=yes,&lt;br /&gt;                 #the optimizer will not add new plans. If you accept a profile recommended by STA that profile will not be FIXED&lt;br /&gt;  SQL Tuning Advisor may evolve plans from non-accepted to accepted.&lt;br /&gt;  * Plan history *      Contains both accepted and not-accepted plans for a repeatable SQL, best plan not accepted yet in SQL plan baseline&lt;br /&gt;  * SQL Plan Baseline * Contains plan history but only accepted&lt;br /&gt;  Automatic plan capture: see optimizer_capture_sql_plan_baselines parameter&lt;br /&gt;  Manual    plan capture: performances are not verified&lt;br /&gt;  * Package *&lt;br /&gt;    DBMS_SQLTUNE.create_sqlset(sqlset_name, description) creates an empty SQL set&lt;br /&gt;    select value(p) from table(DBMS_SQLTUNE.select_workload_repository('peak baseline', null, null, 'elapsed time', null, null, null, 20)) p&lt;br /&gt;    DBMS_SQLSET.load_sqlset(sqlset_name, populate_cursor )&lt;br /&gt;    DBMS_SPM.load_plans_from_sqlset(sqlset_name, fixed=&gt;no, enabled=&gt;yes) &lt;br /&gt;      #plans are loaded into the SQL plan baseline as non-fixed accepted and enabled plans. May be used &lt;br /&gt;    DBMS_SPM.load_plans_from_cursor_cache(sql_id, plan_hash_value[null ], sql_text, fixed[no | yes ], enabled[yes], &lt;br /&gt;      attribute_name[sql_text | parsing_schema_name | module | action], attribute_value) return integer&lt;br /&gt;    DBMS_SPM.evolve_sql_plan_baseline(sql_handle, plan_list, plan_name, time_limit[DBMS_SPM.auto_limit | DBMS_SPM.no_limit], &lt;br /&gt;      verify[YES], commit[YES]) return CLOB&lt;br /&gt;      #show all non-accepted plans with status changed to accepted. &lt;br /&gt;      #VERIFY=YES the database executes the unaccepted plans and compare performances againts the SQL plan baseline&lt;br /&gt;      #VERIFY=NO all unaccepted plans became accepted&lt;br /&gt;    DBMS_SPM.alter_sql_plan_baseline(sql_handle, plan_name, attribute_name[accepted_status | enabled], attribute_value=&gt;'yes')&lt;br /&gt;    DBMS_XPLAIN.display_sql_plan_baseline&lt;br /&gt;  * Views *&lt;br /&gt;    DBA_SQL_PLAN_BASELINES(sql_handle, sql_text, plan_name, origin[manual-load | manual-sqltune | auto-capture | auto-sqltune], enabled, accepted, fixed, autopurge)&lt;br /&gt;  &lt;br /&gt;  SMB SQL Management Base&lt;br /&gt;    By default uses Automatic Segment Space Management ASSM&lt;br /&gt;    contains plan history information, the statement log, SQL profiles and plan baselines. Is part of data dictionary and stored in sysaux tbs. &lt;br /&gt;    sysaux tbs must be online to use SQL Plan Management features that access the SMB&lt;br /&gt;    DBMS_SPM.configure([SPACE_BUDGET_PERCENT | PLAN_RETENTION_WEEKS], value) &lt;br /&gt;      #SPACE_BUDGET_PERCENT: if the size of SMB exceed 10% of sysaux tablespace a weekly alert is generated&lt;br /&gt;      #PLAN_RETENTION_WEEKS: plan not used for more than 1 year are purged&lt;br /&gt;    * Views *&lt;br /&gt;      DBA_SQL_MANAGEMENT_CONFIG(SPACE_BUDGET_PERCENT, PLAN_RETENTION_WEEKS)&lt;br /&gt;&lt;br /&gt;SQL Access Advisor&lt;br /&gt;  May be interrupted and resumed. By default is not scheduled as a maintenance task by the AutoTask.&lt;br /&gt;  Partitioning Recommendations for tables, indexes and materialized views, default mode is interval.&lt;br /&gt;  Partitioning Recommendations require at least 10000 rows on table, table must have some predicate or join with date or number , space, no bitmap indexes, &lt;br /&gt;    no interrupted SQL Access Advisor.&lt;br /&gt;  Advice on tuning Materialized Views, Materialized View Logs, indexes(B-tree, bitmap, function based)&lt;br /&gt;  * Packages *&lt;br /&gt;    DBMS_ADVISOR.add_sts_ref(task_name, sts_owner, sts_name)&lt;br /&gt;      #add an existing SQL tuning set&lt;br /&gt;    DBMS_ADVISOR.add_sqlwkld_ref(task_name, sts_name)&lt;br /&gt;      #add an existing SQL tuning set&lt;br /&gt;    DBMS_ADVISOR.delete_sts_ref(task_name, sts_owner, sts_name) link the SQL Access Advisor and the Workload&lt;br /&gt;    DBMS_ADVISOR.create_task(advisor_name=&gt;'SQL Access Advisor', task_name)&lt;br /&gt;    DBMS_ADVISOR.set_task_parameter(task_name, param, value)[partition | segment][def_partition_tablespace, tbs][max_number_partitions,...]&lt;br /&gt;      [valid_table_list,...][mode,comprehensive][journaling,4][analysis_scope,all]&lt;br /&gt;    DBMS_ADVISOR.execute_task(task_name)&lt;br /&gt;    DBMS_ADVISOR.get_task_report(task_name, type[text], level[typical], section[all], owner_name, execution_name, object_id)&lt;br /&gt;    DBMS_ADVISOR.cancel_task(task_name) wont see any recommendation&lt;br /&gt;    DBMS_ADVISOR.interrupt_task(task_name) sometimes see recommendation, can't resume or restart&lt;br /&gt;    DBMS_ADVISOR.create_file(DBMS_ADVISOR.get_task_script(task_name), directory_name, file_name)&lt;br /&gt;    DBMS_ADVISOR.copy_sqlwkld_to_sts()&lt;br /&gt;    DBMS_ADVISOR.quick_tune(DBMS_ADVISOR.SQLACCESS_ADVISOR, task_name, sql_text) &lt;br /&gt;      #task is automatically created&lt;br /&gt;&lt;br /&gt;ADDM Automatic Database Diagnostic Monitor&lt;br /&gt;  control_management_pack_access=DIAGNOSTIC+TUNING and statistic_level=TYPICAL or ALL&lt;br /&gt;  Analyzes AWR data, present problems and recommendations. Runs automatically by default when a new AWR snapashot is taken. Enabled by default.&lt;br /&gt;  You can use directive to limit or filter the ADDM&lt;br /&gt;  * ADDM for RAC Real Application Cluster *&lt;br /&gt;    Database ADDM(analyze all RAC instances), Instance ADDM(analyze one RAC instances), Partial ADDM(analyze some RAC instances)&lt;br /&gt;    Analyze: [Global resources and global I/O], [High-Load SQL], [Contention across the instances], [Global cache interconnect traffic], [network latency issues],&lt;br /&gt;             [skews in instance report times]&lt;br /&gt;  * Packages *&lt;br /&gt;    DBMS_ADDM.analyze_db(task_name, begin_snapshot, end_snapshot) &lt;br /&gt;      #Creates an ADDM task global for all RAC instances&lt;br /&gt;    DBMS_ADDM.analyze_inst &lt;br /&gt;      #Creates an ADDM task for a single instance&lt;br /&gt;    DBMS_ADDM.analyze_partial &lt;br /&gt;      #Creates an ADDM task for some instances&lt;br /&gt;    DBMS_ADDM.delete &lt;br /&gt;      #delete an ADDM task&lt;br /&gt;    DBMS_ADDM.get_report(task_name) &lt;br /&gt;      #Gets a report of an ADDM task&lt;br /&gt;    DBMS_ADDM.delete_finding_directive; &lt;br /&gt;    DBMS_ADDM.insert_finding_directive(task=&gt;null, directive=&gt;'SGA Directive', finding=&gt;'Undersized SGA', minactivesessions=&gt;5, minpctimpact=&gt;50) &lt;br /&gt;      #TASK   : null means all subsequently created tasks&lt;br /&gt;      #FINDING: the finding in DBA_ADVISOR_FINDING_NAMES&lt;br /&gt;    DBMS_ADDM.delete_sql_directive; DBMS_ADDM.insert_sql_directive &lt;br /&gt;      #Limit action&lt;br /&gt;    DBMS_ADDM.delete_segment_directive; &lt;br /&gt;      #Limit action&lt;br /&gt;    DBMS_ADDM.insert_segment_directive &lt;br /&gt;      #Prevent ADDM from reporting a schema, segment, subsegment or object&lt;br /&gt;    DBMS_ADDM.delete_parameter_directive; DBMS_ADDM.insert_parameter_directive(param_name) &lt;br /&gt;      #Prevent ADDM from altering specified parameter&lt;br /&gt;    DBMS_ADVISOR.SET_DEFAULT_TASK_PARAMETER (advisor_name, parameter, value) &lt;br /&gt;      #Specify the mode in wich to run ADDM [Database | Instance | Partial]&lt;br /&gt;  * Views *&lt;br /&gt;    DBA_ADVISOR_FINDINGS(finding_name)  #USER_... available. Shows which findings occur most frequently in the db&lt;br /&gt;    DBA_ADDM_TASKS                      #USER_... available. Show all executed ADDM tasks&lt;br /&gt;    DBA_ADDM_INSTANCES                  #USER_... available. Instance level info for completed ADDM tasks&lt;br /&gt;    DBA_ADD_FINDINGS                    #USER_... available. Extends DBA_ADVISOR_FINDINGS&lt;br /&gt;    DBA_ADVISOR_FINDING_NAMES           #USER_... available. Lists all registered finding names&lt;br /&gt;    DBA_ADVISOR_RECOMMENDATIONS(filtered[Y | N])&lt;br /&gt;    DBA_ADVISOR_ACTIONS(filtered[Y | N])&lt;br /&gt;&lt;br /&gt;Automatic Memory Management&lt;br /&gt;  sga_target=0 #static; pga_target=0 #static; memory_target=900M #dynamic; memory_max_target=2000M; &lt;br /&gt;  show parameter target; #archive_lag_target=0, db_flashback_retention_target=1440, fast_start_io_target=0, fast_start_mttr_target=0, memory_max_target=900M,&lt;br /&gt;                              memory_target=900M, pga_aggregate_target=0; sga_target=0&lt;br /&gt;  sga_target pga_aggregate_target memory_target memory_max_target result&lt;br /&gt;           0                    0          900M              999M AMM enabled, defaults 60% to SGA and 40% to PGA&lt;br /&gt;         50M                 100M          900M              999M AAM enabled, SGA minimum 50M, PGA minimum 100M&lt;br /&gt;         50M                    0          900M              999M AAM enabled, SGA minimum 50M, PGA minimum is memory_target-50M&lt;br /&gt;           0                 100M          900M              999M AAM enabled, SGA minimum is memory_target-100M, PGA minimum 100M&lt;br /&gt;                                           900M         0 or null AAM enabled, max_memory_target is memory_target. (SGA is not autotuned, PGA is)&lt;br /&gt;         50M                                                      Automatically tuned only SGA subcomponents. PGA is autotuned. max_memory_target=0&lt;br /&gt;                                      0 or null              999M AAM disabled. memory_target=0 default value&lt;br /&gt;  * Views *&lt;br /&gt;    V$MEMORY_DYNAMIC_COMPONENTS(component, current_size, user_specified_size)&lt;br /&gt;    V$MEMORY_CURRENT_RESIZE_OPS #current resizes in progress&lt;br /&gt;&lt;br /&gt;Optimizer Statistics Collection&lt;br /&gt;  Automatically during nightly manintenance window, precedence for most needing objects. Can set preferences at table, schema, database and global level.&lt;br /&gt;  Both global(incrementally but no with histograms) and local statistics for partitioned tables. Statistics job is atomic at schema level&lt;br /&gt;  Statistics are collected for user-defined function and function-based indexes&lt;br /&gt;  A pending statistic is not yet available&lt;br /&gt;  * Options, Statistics preferences *&lt;br /&gt;    publish[true | false]: def. true. Store statistics in data dictionary, current statistics&lt;br /&gt;    stale_percent: def. 10%. Threshold level for an object to be stale&lt;br /&gt;  * Granularity * auto, global, global and partition, all, partition, subpartition&lt;br /&gt;  * Extended Statistics * multi column or expression. Collects number of distinct values, density, number of nulls, frequency histograms&lt;br /&gt; &lt;br /&gt;  Capture statistics, Test and Publish&lt;br /&gt;    1) alter session set optimizer_use_pending_statistics=false;&lt;br /&gt;    2) set PUBLISH option to false using SET_TABLE_PREFS procedure &lt;br /&gt;         #subsequent statistics will be gathered as pending&lt;br /&gt;    3) gather the statistics for table;&lt;br /&gt;    4) alter session set optimizer_use_pending_statistics=true;&lt;br /&gt;    5) test the statistics&lt;br /&gt;    6) execute the PUBLISH_PENDING_STATS procedure&lt;br /&gt; &lt;br /&gt;  Capture global statistics for a partitioned table INCREMENTALLY, only on last partition&lt;br /&gt;    Incremental works if granularity=global and table marked both incremental and publish, estimate_percent=&gt;auto_sample_size[always recommended]&lt;br /&gt;    1) set INCREMENTAL value to true use SET_TABLE_PREFS procedure &lt;br /&gt;    2) DBMS_STATS.gather_table_stats(ownname=&gt;'ALDO', tabname=&gt;'persone', granularity=&gt;'GLOBAL') &lt;br /&gt;  * Packages *&lt;br /&gt;    DBMS_STATS.gather_database_stats_job_proc&lt;br /&gt;    DBMS_STATS.set_prefs &lt;br /&gt;      #set preferences at various levels&lt;br /&gt;    DBMS_STATS.set_table_prefs(schema, table, pref_name, pref_value)&lt;br /&gt;      #PUBLISH    =[true(def.) | false] FALSE: statistics taken will be pending&lt;br /&gt;      #INCREMENTAL=[true | false(def.)] TRUE: statistics will no be collected for partition that have not been changed&lt;br /&gt;    DBMS_STATS.set_schema_prefs&lt;br /&gt;    DBMS_STATS.resume_gather_stats&lt;br /&gt;    DBMS_STATS.get_prefs(['estimate_percents' | 'stale_percent' | 'publish'], schema, table) &lt;br /&gt;    DBMS_STATS.publish_pending_stats(schema[null(def.)], table[null(def.)]) &lt;br /&gt;      #pending stats became public&lt;br /&gt;    DBMS_STATS.delete_pending_stats(schema[null(def.)], table[null(def.)])&lt;br /&gt;    DBMS_STATS.export_pending_stats(schema[null(def.)], table[null(def.)])&lt;br /&gt;    DBMS_STATS.create_extended_stats(ownname, tabname, extension=&gt;'(name, surname)') &lt;br /&gt;      # select DBMS_STATS.create_extended_stats(null, 'persone', extension=&gt;'(name, surname)') from dual;&lt;br /&gt;      #collect extended statistics. A column group is created. A virtual hidden column is created with a system-defined name&lt;br /&gt;    DBMS_STATS.drop_extended_stats(ownname, tabname, extension=&gt;'name, surname')&lt;br /&gt;    DBMS_STATS.show_extended_stats(ownname, tabname, extension=&gt;'name, surname') return varchar2 &lt;br /&gt;      #return the name of the statistics entrys&lt;br /&gt;    DBMS_STATS.gather_table_stats(ownname=&gt;null, tabname=&gt;'pippe', method_opt=&gt;'for all columns size skewonly for columns(lower(a),b) skewonly') &lt;br /&gt;      #coll. ext. stats&lt;br /&gt;  * Views *&lt;br /&gt;    DBA_TAB_STATS, DBA_IND_STATS stored published statistics&lt;br /&gt;    DBA_TAB_STAT_PREFS(owner, table_name, preference_name, preference_value) #shows current settings for statistics preferences&lt;br /&gt;    DBA_TAB_PENDING_STATS&lt;br /&gt;    DBA_STAT_EXTENSIONS(extension_name, extension)&lt;br /&gt;&lt;br /&gt;Result Cache&lt;br /&gt;  In SGA(shared pool). Affected by memory_target, sga_target, shared_pool_size. Recently-used algorithm to age out results.&lt;br /&gt;    Can cache flashback SQL, can cache query fragments. Used both for SQL queries and deterministic functions.&lt;br /&gt;  /*Hint*/: result_cache and no_result_cache can use in a inline view&lt;br /&gt;  Result Cache Memory pool&lt;br /&gt;    SQL Query Result Cache&lt;br /&gt;    Pl/SQL Function Result Cache&lt;br /&gt;  client side&lt;br /&gt;  * Restrictions *&lt;br /&gt;   can't use SQL Query Result Cache on: Temporary tables, Dictionary tables, non-deterministic Pl/Sql functions(use deterministic keyword), &lt;br /&gt;     [currval,nextval,sysdate,sys_timestamp,current_date,current_timestamp,local_timestamp,userenv,sys_context,sys_quid], undergoing modification data, subqueries,&lt;br /&gt;     pipelined functions, functions can't have OUT or IN parameters, no anonymous blocks, no in package with invoker's right, no IN params as LOB, REF CURSOR, &lt;br /&gt;     RECORD, COLLECTION, OBJECT&lt;br /&gt;  create or replace function pippo(id number) return pp_record RESULT_CACHE RELIES_ON (persone) is ...&lt;br /&gt;      #RELIES_ON means that cached results will became invalid when the structure of any database object on which they depend is changed&lt;br /&gt;  * Packages *&lt;br /&gt;    DBMS_RESULT_CACHE.memory_report &lt;br /&gt;      #Reports cache enabled, block size, max cache size, max result size, memory [total | fixed | dynamic]&lt;br /&gt;    DBMS_RESULT_CACHE.status &lt;br /&gt;      #enabled/disabled, in RAC shows if synchronizing&lt;br /&gt;    DBMS_RESULT_CACHE.flush return boolean &lt;br /&gt;      #return true on successful removal, disable/close the cache DBMS_RESULT_CACHE.bypass(true) before flushing&lt;br /&gt;    DBMS_RESULT_CACHE.bypass([true | false]) &lt;br /&gt;      #bypass the cache&lt;br /&gt;  * Views *&lt;br /&gt;    V$RESULT_CACHE_STATISTICS #list cache settings and memory usage stats&lt;br /&gt;    V$RESULT_CACHE_OBJECTS(type, status[new | published | bypass | expired | invalid], name) #list cached objects and attributes&lt;br /&gt;    V$RESULT_CACHE_DEPENDENCY&lt;br /&gt;    V$RESULT_CACHE_MEMORY #show all memory blocks and statistics&lt;br /&gt;  &lt;br /&gt;  Client Result Cache&lt;br /&gt;    OCI based, cache only top-level SQL statements no query fragments, excellent on lookup tables. Independent from server result cache&lt;br /&gt;    client sqlnet.ora init params override the db server init params&lt;br /&gt;    * Restrictions *&lt;br /&gt;      no views, no remote objects, no complex types, no flashback, no SQL with pl/sql, no VPD policies on the tables&lt;br /&gt;    * Views *&lt;br /&gt;      CLIENT_RESULT_CACHE_STAT$ #show client settings and usage stats&lt;br /&gt;&lt;br /&gt;Adaptive Cursor Sharing&lt;br /&gt;  Automatic feature can't be turned off, no init params. Works the same for bind vars and literals.&lt;br /&gt;  10g: Bind variable not good for plan generation, first time will determine the plan forever(bind peeking)&lt;br /&gt;  11g: Generate new child cursors&lt;br /&gt;  Bind sensitive cursor: values are so different that a new plane is needed. New plans are added to plan history but not used until db has proved a better &lt;br /&gt;    performance. See optimizer_capture_sql_plan_baselines. Once the plane is changed the cursor became bind-aware, more plans will be used depending on params&lt;br /&gt;  * Views *&lt;br /&gt;    V$SQL(is_bind_sensitive, is_bind_aware)&lt;br /&gt;    V$SQL_CS_HISTOGRAM #shows distribution of exceution count across execution history histogram&lt;br /&gt;    V$SQL_CS_SELECTIVITY #shows selectivity ranges stored in cursor for predicates with bind variables&lt;br /&gt;    V$SQL_CS_STATISTICS #stats for different bind sets, buffer gets and CPU time&lt;br /&gt;&lt;br /&gt;Flashback Data Archive FDA - Oracle Total Recall&lt;br /&gt;  Requires Automatic Undo Management. Archivelog is not required. Data archive tablespaces must use ASSM&lt;br /&gt;  Store data changes compressed for any length of time you want in one or more tbs in an internal history table for each table tracked. &lt;br /&gt;    Only for some tables you choice. You can't modify data in Flashback, only purge. &lt;br /&gt;    Table/s must be enabled for tracking(flashback archiving). &lt;br /&gt;    Can set different retention for different tables, when in different archives, assigning different flashback data archives.&lt;br /&gt;    Retention at table level, must be specified for data archive. An internal historical table is created with few more columns and range partitioned. &lt;br /&gt;    FBDA process, sleep time automatically adjusted. Can use flashback SQL(as of).&lt;br /&gt;    Old data is automatically purged. May create default archive(not required)&lt;br /&gt;  * Differences from Flashback Database FD* FD may take db back in time, while FDA is read only. FDA is online FD is offline. &lt;br /&gt;    FD at db level while FDA at table level.&lt;br /&gt;  * Limitations *&lt;br /&gt;    no [drop | rename | modify] column, yes add column. no partition operations. no LONG to LOB conversion. no [drop | truncate] table&lt;br /&gt;  SQL&gt;grant flashback archive ADMINISTER to user; &lt;br /&gt;      #ADMINISTER allows [create flashback archive, alter flashback archive, drop flashback archive]&lt;br /&gt;  SQL&gt;grant flashback archive on t1 to user; &lt;br /&gt;      #user also need select privs, execute on DBMS_FLASHBACK&lt;br /&gt;  SQL&gt;create flashback data archive f1 tablespace tbs1 quota 2000m RETENTION 4 year; &lt;br /&gt;      #RETENTION must be specified for data archive&lt;br /&gt;  alter flashback archive f1 purge all; alter flashback archive f1 purge before timestamp(systimestamp - interval '2' day); &lt;br /&gt;  alter flashback archive f1 purge before scn 1233&lt;br /&gt;  alter table t1 noflashback archive f1; &lt;br /&gt;      #all flashback data is removed&lt;br /&gt;  alter flashback archive fla1 modify retention 1 year&lt;br /&gt;  select * from t1 versions between timestamp to_timestamp(...) and maxvalue&lt;br /&gt;  * Views *&lt;br /&gt;    DBA_FLASHBACK_ARCHIVE(flashback_archive_name, retention_in_days, status), DBA_FLASHBACK_ARCHIVE_TS(quota_in_mb), DBA_FLASHBACK_ARCHIVE_TABLES&lt;br /&gt;  &lt;br /&gt;  Flashback Transaction Blackout&lt;br /&gt;    database in archivelog, undo and redo data are needed. supplemental logging and primary key supplemental logging at db level must be enabled.&lt;br /&gt;    Transaction dependencies: &lt;br /&gt;      write-after-write: dependent transaction modifies data modified by parent transaction&lt;br /&gt;      primary key constraint: dependent transaction reinserts the primary key deleted by parent transaction&lt;br /&gt;      alter database add supplemental log data;&lt;br /&gt;      alter database add supplemental log data (primary key) columns;&lt;br /&gt;      grant execute on dbms_flashback to hr;&lt;br /&gt;      grant select any transaction to hr;&lt;br /&gt;      grant insert, update, delete on pippo to hr; &lt;br /&gt;        #grant DML on specific involved tables&lt;br /&gt;      * Packages *&lt;br /&gt;        DBMS_FLASHBACK.transaction_backout(numberofxids, xids(array), options[see below...], scnhint(SCN at the start of transaction) or timehint) &lt;br /&gt;          #no commit inside!&lt;br /&gt;          nocascade: (def.) no depent transactions expected&lt;br /&gt;          cascade: dependent transactions are backed out before the parent&lt;br /&gt;          nocascade_force: dependent transactions are ignored&lt;br /&gt;          noconflict_only: only those rows with no conflict in parent transactions&lt;br /&gt;      * Views *&lt;br /&gt;        DBA_FLASHBACK_TRANSACTION_STATE #backed out transactions&lt;br /&gt;        DBA_FLASHBACK_TRANSACTION_REPORT&lt;br /&gt;&lt;br /&gt;Oracle SecureFiles&lt;br /&gt;  10g lob-&gt;11g BasicFiles&lt;br /&gt;  transparent encryption. variable chunk size max 64M stored next to one another. redo generated only for changed data. &lt;br /&gt;    new client/server network for faster data transfer.&lt;br /&gt;    Every option may be changed later using . long api can't be used to configure SecureFile setting.&lt;br /&gt;    COMPATIBLE min 11.0. Error raisen if you use SecureFile capabilities in a BasicFile. &lt;br /&gt;    1) DEDUPLICATION detect and avoid duplicated data, Advanced Compression is required, only one copy is saved, deduplication is disabled by default&lt;br /&gt;    2) COMPRESSION [HIGH | MEDIUM(def.)], compression is disabled by default&lt;br /&gt;    3) ENCRYPTION must use Advanced Security Option [AES128 | 3DES168 | AES128 | AES192 | AES256], encryption is disabled by default&lt;br /&gt;    Older storage cluses(chunk, pctversion, freelist) no necessaries with SecureFiles, instead use this:&lt;br /&gt;      MAXSIZE: maximum LOB segment size&lt;br /&gt;      RETENTION: version control policy&lt;br /&gt;        MAX: after MAXSIZE old version is used&lt;br /&gt;        MIN: old version is retained for at least the time specified&lt;br /&gt;        AUTO: default. &lt;br /&gt;        NONE: old version is use ad much as possible&lt;br /&gt;  create table pippo(l clob) LOB(l)STORE AS [securefile | lob] (COMPRESS [HIGH | MEDIUM] deduplicate lob [CACHE | NOCACHE | CACHE READS] nologging); &lt;br /&gt;        #STORE AS is optional, default is LOB traditional.&lt;br /&gt;        #CACHE will place lob pages in the buffer cache for speedier access, default is NOCACHE, CACHE READS cache only during reads not for writes.&lt;br /&gt;        #NOLOGGING will not generate any redo&lt;br /&gt;        #COMPRESS [HIGH | MEDIUM(def.)]&lt;br /&gt;        #(NO) KEEP DUPLICATES #specify whether the database will store duplicates for the LOB column&lt;br /&gt;  create table pippo (doc clob)lob(doc) store as securefile(ENCRYPT);&lt;br /&gt;  create table pippo (doc clob encrypt using 'AES256')lob(doc) store as securefile;&lt;br /&gt;  &lt;br /&gt;  Migrating to SecureFiles&lt;br /&gt;    * Partition Exchange *&lt;br /&gt;      Ensure you have enough space for largest partition, long maintenance window, segment offline&lt;br /&gt;    * Online Redefinition (recommended) *&lt;br /&gt;      No segment offline, migration in parallel, index must be rebuild, double space required.&lt;br /&gt;      Materialized view must be refreshed if the source table is redefined.&lt;br /&gt;      create table tab1(id number, c lob) lob(c) store as lob;&lt;br /&gt;      create table tab1(id number, c lob) lob(c) store as securefile;&lt;br /&gt;      DBMS_REDEFINITION.start_redef_table('scott', 'tab1', 'tab2', 'id id c c');&lt;br /&gt;      DBMS_REDEFINITION.copy_table_dependents('scott', 'tab1', 'tab2', 1, true, true,true,true,false, error_count);&lt;br /&gt;      DBMS_REDEFINITION.finish_redef_table('scott', 'tab1', 'tab2');&lt;br /&gt;  * Packages *&lt;br /&gt;    DBMS_LOB.getoptions &lt;br /&gt;      #return lob settings&lt;br /&gt;    DBMS_LOB.setoptions &lt;br /&gt;    DBMS_LOB.get_deduplicated_regions &lt;br /&gt;    DBMS_SPACE.space_usage &lt;br /&gt;      #determine disk space used by all lob in segment, only for ASSM segments&lt;br /&gt;  * Views *&lt;br /&gt;    DBA_SPACE, DBA_LOB&lt;br /&gt;&lt;br /&gt;Locking Enhancements&lt;br /&gt;  By default a DDL will fail if can't get an immediate DML lock on the table.&lt;br /&gt;  lock table pippo in exclusive mode [nowait | wait(def.) (optional)] &lt;br /&gt;    #if mode omitted will wait undefinitely&lt;br /&gt;  The following statements will not require a lock: &lt;br /&gt;    create index online;&lt;br /&gt;    create materialized view log;&lt;br /&gt;    alter table enable constraint novalidate;&lt;br /&gt;Minimal invalidation - Fine Grained Dependency Management&lt;br /&gt;  Only logical affected objects are invalidated such as views and synonyms during online redefinition, triggers have not been enhanced they will be invalidated.&lt;br /&gt;&lt;br /&gt;Parameter file creation from Memory&lt;br /&gt;  create [spfile | pfile] from memory; &lt;br /&gt;    #will have values for all 150 init parameters even if not precedently set&lt;br /&gt;&lt;br /&gt;Hot Patching&lt;br /&gt;  Supported on RAC&lt;br /&gt;  opatch enable, disable and install patches.&lt;br /&gt;  Currently only for Linux, Solaris. Consumes extra memory depending on the number of currently running Oracle processes. &lt;br /&gt;    At least one OS page of memory(4-8kb) for Oracle process is required.&lt;br /&gt;  opatch query -is_online_patch  &lt;br /&gt;    #determine if patch is hot&lt;br /&gt;&lt;br /&gt;Invisible Indexes&lt;br /&gt;  Invisble to the optimizer, discarded from plans. Can change from in/visible at any time.&lt;br /&gt;  create index inv1 on pippo(nome) invisible; &lt;br /&gt;  alter index i1 in/visible;&lt;br /&gt;  * Views *&lt;br /&gt;    DBA_INDEXES(visibility)&lt;br /&gt;&lt;br /&gt;Shrinking Temporary Tablespaces&lt;br /&gt;  May shrink online temporary tablespaces and single tempfiles. Shrink to a minimum of 1MB(def.)&lt;br /&gt;  alter tablespace temp shrink space [keep 100m]; &lt;br /&gt;    #Not equally distributed along tempfiles&lt;br /&gt;  alter tablespace temp shrink tempfile '/pippo.dbf' [keep 100m] &lt;br /&gt;  * Views *&lt;br /&gt;    DBA_TEMP_FREE_SPACE(tablespace_name, free_space) #FREE_SACE in bytes. Space unallocated and allocated space available to be reused&lt;br /&gt;&lt;br /&gt;Tablespace Option for Temporary tables&lt;br /&gt;  May manually specify a temporary tbs, indexes are created in the same tablespace&lt;br /&gt;&lt;br /&gt;PL/SQL and Java Automatic Native Compilation&lt;br /&gt;  see parameter plsql_code_type and plsql_optimize_level&lt;br /&gt;  alter procedure pioppo compile pl_sql_code_type=native;&lt;br /&gt;  * Recompiling a Database for Pl/Sql Native Compilation *&lt;br /&gt;    1) shutdown immediate; 2) plsql_code_type=native, plsql_optimize_level=3 3) startup upgrade 4) @?/rdbms/admin/dbsupgnv.sql 5) restart and utlrp.sql&lt;br /&gt;  *  Views *&lt;br /&gt;    DBA_PLSQL_OBJECT_SETTINGS(plsql_code_type)&lt;br /&gt;&lt;br /&gt;OLTP Table Compression&lt;br /&gt;  Writes not degraded reads improved because data is directly read as compressed. Disk space and memory are minimized, cpu is increased.&lt;br /&gt;  May compress data during dml, not only when bulk loading(10g) or when creating CTAS(10g). Holes made by deletes are eliminated&lt;br /&gt;  Compression may be enabled for tables, partitions and tablespaces.&lt;br /&gt;  A block is compressed when reaches PCTFREE. &lt;br /&gt;  create table pippo(...) compress;                           #normal compress&lt;br /&gt;  create table pippo(...) compress for direct_load_operations #normal compress for a data warehouse workloads table not for OLTP&lt;br /&gt;  create table pippo(...) compress for all operations         #compress for dml operations&lt;br /&gt;  alter table pippo compress for all operations               #An existing table may be altered to compress but existing data remain uncompressed.&lt;br /&gt;  * Views *&lt;br /&gt;    DBA_TABLES(compression, compress_for)&lt;br /&gt;&lt;br /&gt;Direct NFS Client&lt;br /&gt;  Simplify manageability across multiple platforms, performance are increased but kernel NFS is not completely bypassed since its used for network communication&lt;br /&gt;  Avoid kernel NFS layer. Load balancing. You may control I/O path. OS must perform the mount. NFS version 3 protocol implemented in Oracle RDBMS kernel.&lt;br /&gt;    If mismatch between oranfstab and OS mount points the NFS is stopped. To remove an NFS path in use restart the database.&lt;br /&gt;    Direct NFS client will disabled if delete oranfstab or modify its setting or replacing ODM NFS with the stub libodn11.so&lt;br /&gt;    If the database can't open the NFS using Direct NFS it will use OS kernel &lt;br /&gt;  * Configuring *&lt;br /&gt;    1) Specify mount point in /etc/mtab first default location and be sure the OS perform the mount&lt;br /&gt;    2) (optional) edit oranfstab for Oracle specfic options such as additional paths to a mount point. &lt;br /&gt;       Mount point search order:&lt;br /&gt;       (optional)          $ORACLE_HOME/dbs/oranfstab&lt;br /&gt;       (optional)          /etc/oranfstab&lt;br /&gt;       (when no oranfstab) /etc/mtab&lt;br /&gt;    4) Enable Direct NFS replacing standard ODM library libnfsodm10.so with ODM NFS library $ORACLE_HOME/lib/libodm11.so&lt;br /&gt;  oranfstab format:&lt;br /&gt;    server: TestServer1   #nfs server name&lt;br /&gt;    path:   130.33.34.11  #up to 4 network paths if the first fail, load balancing&lt;br /&gt;    export: /vol/oradata1 #exported path from NFS server&lt;br /&gt;    mount:  /mnt/oradata1 #local mount point&lt;br /&gt;  * Views *&lt;br /&gt;  V$DNFS_STATS   #show performance stats for Direct NFS&lt;br /&gt;  V$DNFS_SERVERS #show servers accessed by Direct NFS&lt;br /&gt;  V$DNFSFILES    #files currently using Direct NFS&lt;br /&gt;  V$DNFS_CHANNEL #open network paths&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6897144177599049811-1605996500852014429?l=ashakkhan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ashakkhan.blogspot.com/feeds/1605996500852014429/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6897144177599049811&amp;postID=1605996500852014429' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/1605996500852014429'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/1605996500852014429'/><link rel='alternate' type='text/html' href='http://ashakkhan.blogspot.com/2009/05/oracle-10g-new-features.html' title='Oracle 11g  New Features'/><author><name>Ashak Ali Khan</name><uri>http://www.blogger.com/profile/02783946057420260374</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_1rApOiGy_ns/Sa0sDHWokDI/AAAAAAAAAXQ/fQut2UPtxgY/S220/Ashak_Khan.bmp'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6897144177599049811.post-1899034851482500116</id><published>2009-05-03T00:14:00.000-07:00</published><updated>2009-05-03T00:16:25.820-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Real Application Clusters'/><title type='text'>RAC 10g administration - Basic</title><content type='html'>RAC benefit and characteristics&lt;br /&gt;- does not protect from human errrors&lt;br /&gt;- increased availabilty from node/instance failure&lt;br /&gt;- speed up parallel DSS queries&lt;br /&gt;- no speed up parallel OLTP processes&lt;br /&gt;- no availability increase on data failures&lt;br /&gt;- no availability increase on network failures&lt;br /&gt;- no availability increase on release upgrades&lt;br /&gt;- no scalability increased for applications workloads in all cases&lt;br /&gt;&lt;br /&gt;RAC tuning - After migration to RAC test:&lt;br /&gt; - Interconnect latency&lt;br /&gt; - Instance recovery time&lt;br /&gt; - Application strongly relying on table truncates, full scan tables, sequences and non-sequences key generation,&lt;br /&gt;   global context variables&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;RAC specific background processes for the database instance&lt;br /&gt;Cluster Synchronization Service (CSS)&lt;br /&gt;  ocssd daemon, manages cluster configuration&lt;br /&gt;  &lt;br /&gt;Cluster Ready Services (CRS)&lt;br /&gt;  manages resources(listeners, VIPs, Global Service Daemon GSD, Oracle Notification Service ONS)&lt;br /&gt;  crsd daemon backup the OCR every for hours, configuration is stored in OCR&lt;br /&gt;&lt;br /&gt;Event Manager (EVM)&lt;br /&gt;  evmd daemon, publish events&lt;br /&gt;&lt;br /&gt;LMSn coordinate block updates&lt;br /&gt;LMON global enqueue for shared locks&lt;br /&gt;LMDn manages requests for global enqueues&lt;br /&gt;LCK0 handle resources not requiring Cache Fusion&lt;br /&gt;DIAG collect diagnostic info&lt;br /&gt;&lt;br /&gt;GSD 9i is not compatible with 10g&lt;br /&gt; &lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;FAN Fast Application Notification&lt;br /&gt;- Must connect using service&lt;br /&gt;&lt;br /&gt;Logged to:&lt;br /&gt;&amp;ORA_CRS_HOME/racg/dump &lt;br /&gt;$ORA_CRS_HOHE/log/&lt;nodename&gt;/racg &lt;br /&gt;&lt;br /&gt;&lt;event_type&gt; VERSION=&lt;n.n&gt; &lt;br /&gt;service=&lt;service_namne.db_domain_name&gt; &lt;br /&gt;[database=&lt;db_unique_name&gt; [instance=&lt;instance_name&gt;]] &lt;br /&gt;[host=&lt;hostname&gt;] &lt;br /&gt;status=&lt;event_status&gt; reason=&lt;event_reason&gt; [card=&lt;n&gt;] &lt;br /&gt;timestamp=&lt;event_date&gt; &lt;event_time&gt;&lt;br /&gt;&lt;br /&gt;event_type      Description &lt;br /&gt;SERVICE         Primary application service event &lt;br /&gt;SRV_PRECONNECT  Preconnect application service event (TAF) &lt;br /&gt;SERVICEMEMBER   Application service on a specific instance event &lt;br /&gt;DATABASE        Database event &lt;br /&gt;INSTANCE        Instance event &lt;br /&gt;ASM             ASM instance event &lt;br /&gt;NODE            Cluster node event &lt;br /&gt;&lt;br /&gt;#FAN events can control the workload per instance for each service&lt;br /&gt; &lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;Oracle Notification Service ONS&lt;br /&gt;- Transmits FAN events&lt;br /&gt;- For every FAN event status change, all executables in $ORA_CRS_HOME/racg/usrco are launched (callout scripts)&lt;br /&gt;  &lt;br /&gt;The ONS process is $ORA_CRS_HOME/opmn/bin/ons&lt;br /&gt;  Arguments:&lt;br /&gt;  -d: Run in daemon mode&lt;br /&gt;  -a &lt;command&gt;: &lt;command&gt; can be [ping, shutdown, reload, or debug]&lt;br /&gt;    &lt;br /&gt;[$ORA_CRS_HOME/opmn/conf/ons.config]&lt;br /&gt;  localport=6lOO &lt;br /&gt;  remoteport=6200 &lt;br /&gt;  loglevel=3 &lt;br /&gt;  useocr=on&lt;br /&gt;&lt;br /&gt;onsctl start/stop/ping/reconfig/debug/detailed&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;FCF Fast Connection Failover&lt;br /&gt;- A JDBC application configured to use FCF automatically subscribes to FAN events&lt;br /&gt;- A JDBC application must use service names to connect&lt;br /&gt;- A JDBC application must use implicit connection cache&lt;br /&gt;- $ORACLE_HOME/opmn/lib/ons.jar must be in classpath&lt;br /&gt;- -Doracle.ons.oraclehome - &lt;location of oracle home&gt; &lt;br /&gt;  or&lt;br /&gt;  System.setProperty ("oracle.ons.oraclehome", "/u01/app/oracle/product/10.2.0/db_l");&lt;br /&gt;  &lt;br /&gt;  OracleDataSource ods = new OracleDataSource(); &lt;br /&gt;  ods.setUser("USERl"); &lt;br /&gt;  ods.setPassword("USERl"); &lt;br /&gt;  ods.setConnectionCachingEnabled(true); &lt;br /&gt;  ods.setFastConnectionFailoverEnabled(true); &lt;br /&gt;  ods.setConnectionCacheName("MyCache"); &lt;br /&gt;  ods.setConnectionCacheProperties(cp); &lt;br /&gt;  ods.setURL("jdbc:oracle:thin:@(DESCRIPTION=(LOAD_BALANCE=on)(ADDRESS=(PROTOCOL=TCP)(HOST=londonl-vip)(PORT=152l)(ADDRESS=(PROTOCOL=TCP)(HOST=london2-vip)(PORT=152l)(CONNECT_DATA=(SERVICE_NAME=SERVICE1)))")&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;Check for main Clusterware services up&lt;br /&gt;    &lt;br /&gt;#check Event Manager up&lt;br /&gt;ps -ef | grep  evmd&lt;br /&gt;#check Cluster Synchronization Services up&lt;br /&gt;ps -ef | grep ocssd &lt;br /&gt;#check Cluster Ready Services up&lt;br /&gt;ps -ef | grep crsd&lt;br /&gt;#check Oracle Notification Service&lt;br /&gt;ps -ef | grep ons&lt;br /&gt;&lt;br /&gt;[/etc/inittab]&lt;br /&gt;...&lt;br /&gt; &lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;crs_stat&lt;br /&gt;#Tested, as root&lt;br /&gt;#Lists the status of an application profile and resources&lt;br /&gt;#crs_stat [resource_name [...]] [-v] [-l] [-q] [-c cluster_node]&lt;br /&gt;$ORA_CRS_HOME/bin/crs_stat -t&lt;br /&gt;  Name           Type           Target    State     Host        &lt;br /&gt;  ------------------------------------------------------------&lt;br /&gt;  ora.e2.gsd     application    ONLINE    ONLINE    e2          &lt;br /&gt;  ora.e2.ons     application    ONLINE    ONLINE    e2          &lt;br /&gt;  ora.e2.vip     application    ONLINE    ONLINE    e2&lt;br /&gt;  &lt;br /&gt;VIP Normal&lt;br /&gt;  Name           Type           Target    State     Host        &lt;br /&gt;  ------------------------------------------------------------&lt;br /&gt;  ora.e2.vip     application    ONLINE    ONLINE    e2    &lt;br /&gt;  ora.e2.vip     application    ONLINE    ONLINE    e3&lt;br /&gt;VIP Node 2 is down  &lt;br /&gt;  Name           Type           Target    State     Host        &lt;br /&gt;  ------------------------------------------------------------&lt;br /&gt;  ora.e2.vip     application    ONLINE    ONLINE    e2    &lt;br /&gt;  ora.e2.vip     application    ONLINE    ONLINE    e2&lt;br /&gt;  &lt;br /&gt;crs_stat -p ...&lt;br /&gt;AUTO_START = #2 CRS will not start after system boot&lt;br /&gt;&lt;br /&gt;crs_stat&lt;br /&gt;NAME=ora.RAC.RACl.inst &lt;br /&gt;TYPE=application &lt;br /&gt;TARGET=ONLINE &lt;br /&gt;STATE=ONLINE on londonl &lt;br /&gt;&lt;br /&gt;NAME=ora.RAC.SERVICEl.RACl.srv &lt;br /&gt;TYPE=application &lt;br /&gt;TARGET=OFFLINE &lt;br /&gt;STATE=OFFLINE &lt;br /&gt;&lt;br /&gt;#use -v for verbose resource use&lt;br /&gt;#use -p for a lot of details&lt;br /&gt;#use -ls to view resources and relative owners&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;Voting disk&lt;br /&gt;On Shared storage, Used by CSS, contains nodes that are currently available within the cluster&lt;br /&gt;If Voting disks are lost and no backup is available then Oracle Clusterware must be reinstalled&lt;br /&gt;3 way multiplexing is ideal&lt;br /&gt;&lt;br /&gt;#backup a voting disk online&lt;br /&gt;dd if=&lt;fname&gt; of=&lt;out_fname&gt;&lt;br /&gt;&lt;br /&gt;crsctl&lt;br /&gt;#Tested, as oracle&lt;br /&gt;$ORA_CRS_HOME/bin/crsctl check crs&lt;br /&gt;    Cluster Synchronization Services appears healthy&lt;br /&gt;    Cluster Ready Services appears healthy&lt;br /&gt;    Event Manager appears healthy&lt;br /&gt;&lt;br /&gt;#add online a new voting disk(10.2), -force if Oracle Clusterware is not started&lt;br /&gt;crsctl add css votedisk 'new votedisk path' -force&lt;br /&gt;&lt;br /&gt;crsctl start/stop/enable/disable crs&lt;br /&gt;&lt;br /&gt;#set/unset parameters on OCR&lt;br /&gt;crsctl set/unset &lt;parameter&gt; &lt;value&gt;&lt;br /&gt;&lt;br /&gt;You can list the currently configured voting disks: &lt;br /&gt;crsctl query css votedisk &lt;br /&gt;0.  0  /u02/oradata/RAC/CSSFilel &lt;br /&gt;1.  1  /u03/oradata/RAC/CSSFile2 &lt;br /&gt;2.  2  /u04/oradata/RAC/CSSFile3 &lt;br /&gt;&lt;br /&gt;Dynamically add and remove voting disks to an existing Oracle Clusterware installation: &lt;br /&gt;crsctl add/delete css votedisk &lt;path&gt; -force&lt;br /&gt;&lt;br /&gt;CRS log and debug&lt;br /&gt;#as root, enable extra debug for the running CRS daemons as well as those running in future&lt;br /&gt;#enable to inspect system reboots&lt;br /&gt;crsctl debug log crs&lt;br /&gt;&lt;br /&gt;#Collect log and traces to upload to Oracle Support&lt;br /&gt;diagcollection.pl&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;OCR - Oracle Cluster Registry&lt;br /&gt;    &lt;br /&gt;[/etc/oracle/ocr.loc](10g) or [/etc/oracle/srvConfig.loc](9i, still exists in 10g for compatibility)&lt;br /&gt;ocrconfig_loc=/dev/raw/rawl &lt;br /&gt;ocrmirrorconfig_loc=/dev/raw/raw2 &lt;br /&gt;local_only=FALSE &lt;br /&gt;  &lt;br /&gt;OCRCONFIG - Command-line tool for managing Oracle Cluster Registry&lt;br /&gt;  #recover OCR logically, must be done on all nodes&lt;br /&gt;  ocrconfig -import exp.dmp&lt;br /&gt;  #export OCR content logically&lt;br /&gt;  ocrconfig -export         &lt;br /&gt;  #recover OCR from OCR backup &lt;br /&gt;  ocrconfig -restore bck.ocr&lt;br /&gt;  #show backup status&lt;br /&gt;  #crsd daemon backup the OCR every for hours, the most recent backup file is backup00.ocr&lt;br /&gt;  ocrconfig -showbackup &lt;br /&gt;    londonl 2005/08/04 11:15:29 /uOl/app/oracle/product/lO.2.0/crs/cdata/crs &lt;br /&gt;    londonl 2005/08/03 22:24:32 /uOl/app/oracle/product/10.2.0/crs/cdata/crs &lt;br /&gt;  #change OCR autobackuo location&lt;br /&gt;  ocrconfig -backuploc&lt;br /&gt;  #must be run on each affected node&lt;br /&gt;  ocrconfig -repair ocr &lt;filename&gt;&lt;br /&gt;  ocrconfig -repair ocrmirror &lt;filename&gt;&lt;br /&gt;  #force Oracle Clusterware to restart on a node, may lose recent OCR updates&lt;br /&gt;  ocrconfig -overwrite&lt;br /&gt;&lt;br /&gt;CVU       - Cluster verification utility to get status of CRS resources&lt;br /&gt;dd                           : use it safely to backup voting disks when nodes are added/removed&lt;br /&gt;&lt;br /&gt;#verify restore&lt;br /&gt;cluvfy comp ocr -n all&lt;br /&gt;&lt;br /&gt;ocrcheck&lt;br /&gt;#OCR integrity check, validate the accessibility of the device and its block integrity&lt;br /&gt;log to current dir or to $OCR_HOME/log/&lt;node&gt;/client&lt;br /&gt;&lt;br /&gt;ocrdump&lt;br /&gt;#dump the OCR content to a text file, if succeds then integrity of backups is verified&lt;br /&gt;OCRDUMP   - Identify the interconnect being used&lt;br /&gt;$ORA CRS HOME/bin/ocrdump.bin -stdout -keyname SYSTEM.css.misscount -xml&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;Pre install, prerequisite&lt;br /&gt;(./run)cluvfy : run from install media or CRS_HOME, verify prerequisites on all nodes&lt;br /&gt;&lt;br /&gt;Post installation&lt;br /&gt;- Backup root.sh&lt;br /&gt;- Set up other user accounts&lt;br /&gt;- Verify Enterprise Manager / Cluster Registry by running srvctl config database -d db_name&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;SRVCTL&lt;br /&gt;Stores infos in OCR, manages:&lt;br /&gt;Database, Instance, Service, Node applications, ASM, Listener &lt;br /&gt;&lt;br /&gt;srvctl config database -d &lt;db_name&gt; : Verify Enterprise Manager / Cluster Registry&lt;br /&gt;set SRVM_TRACE=TRUE environment var to create Java based tool trace/debug file for srvctl&lt;br /&gt;#-v to check services&lt;br /&gt;srvctl status   database -d RAC -v SERVICE1&lt;br /&gt;srvctl start    database -d &lt;name&gt; [-o mount]&lt;br /&gt;srvctl stop     database -d &lt;name&gt; [-o stop_options] &lt;br /&gt;#moves parameter file&lt;br /&gt;srvctl modify   database -d name -p /u03/oradata/RAC/spfileRAC.ora &lt;br /&gt;srvctl remove   database -d TEST&lt;br /&gt;#Verify the OCR configuration&lt;br /&gt;srvctl config   database - TEST&lt;br /&gt;&lt;br /&gt;srvctl start    instance -d RACDB -i "RAC3,RAC4" &lt;br /&gt;srvctl stop     instance -d &lt;orcl&gt; -i "orcl3,orcl4" -o immediate&lt;br /&gt;srvctl add      instance -d RACDB -i RAC3 -n londonS &lt;br /&gt;#move the instance to node london4&lt;br /&gt;srvctl modify   instance -d RAC -i RAC3 -n london4 &lt;br /&gt;#set a dependency of instance RAC3 to +ASM3&lt;br /&gt;srvctl modify   instance -d RAC -i RAC3 -s +ASM3 &lt;br /&gt;#removes an ASM dependency&lt;br /&gt;srvctl modify   instance -d RAC -i RAC3 -r &lt;br /&gt;&lt;br /&gt;#stop all applications on node&lt;br /&gt;srvctl stop     nodeapps -n londonl &lt;br /&gt;#-a display the VIP configuration&lt;br /&gt;srvctl config   nodeapps -n londonl -a&lt;br /&gt;srvctl add      nodeapps -n london3 -o $0RACLE_H0ME -A london3-vip/255.255.0.0/eth0&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;Services&lt;br /&gt;Changes are recorded in OCR only! Must use DBMS_SERVICE to update the dictionary&lt;br /&gt;&lt;br /&gt;srvctl start    service -d RAC -s "SERVICE1,SERVICE2"&lt;br /&gt;srvctl status   service -d RAC -s "SERVICE1,SERVICE2"&lt;br /&gt;srvctl stop     service -d RAC -s "SERVICE1,SERVICE2" -f&lt;br /&gt;srvctl disable  service -d RAC -s "SERVICE2" -i RAC4&lt;br /&gt;srvctl remove   service -d RAC -s "SERVICE2"&lt;br /&gt;&lt;br /&gt;#relocate from RAC2 to RAC4&lt;br /&gt;srvctl relocate service -d RAC -s "SERVICE2" -i RAC2 -t RAC4&lt;br /&gt;&lt;br /&gt;#preferred RAC1,RAC2 and available RAC3,RAC4&lt;br /&gt;#-P PRECONNECT automatically creates a ERP and ERP_PRECONNECT service to use as BACKUP in tns_names&lt;br /&gt;#See TNSnames configuration&lt;br /&gt;#the service is NOT started, must be started manually (dbca do it automatically)&lt;br /&gt;srvctl add      service -d ERP -s SERVICE2 -i "RAC1,RAC2" -a "RAC3,RAC4" -P PRECONNECT&lt;br /&gt;&lt;br /&gt;#show configuration, -a shows TAF conf&lt;br /&gt;srvctl config   service -d RAC -a&lt;br /&gt;&lt;br /&gt;#modify an existing service&lt;br /&gt;srvctl modify   service -d RACDB -s "SERVICE1" -i "RAC1,RAC2" -a "RAC3,RAC4"&lt;br /&gt;srvctl stop     service -d RACDB -s "SERVICE1"&lt;br /&gt;srvctl start    service -d RACDB -s "SERVICE1"&lt;br /&gt;&lt;br /&gt;Views&lt;br /&gt;GV$SERVICES &lt;br /&gt;GV$ACTIVE_SERVICES &lt;br /&gt;GV$SERVICEMETRIC&lt;br /&gt;GV$SERVICEMETRIC_HISTORY&lt;br /&gt;GV$SERVICE_WAIT_CLASS&lt;br /&gt;GV$SERVICE_EVENT&lt;br /&gt;GV$SERVICE_STATS&lt;br /&gt;GV$SERV_MOD_ACT_STATS&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;SQL for RAC&lt;br /&gt;select * from V$ACTIVE_INSTANCES;&lt;br /&gt;&lt;br /&gt;Cache Fusion - GRD Global Resource Directory&lt;br /&gt;GES(Global Enqueue Service)&lt;br /&gt;GCS(Global Cache Service)&lt;br /&gt;&lt;br /&gt;Data Guard &amp; RAC&lt;br /&gt;- Configuration files at primary location can be stored in any shared ASM diskgroup, on shared raw devices, &lt;br /&gt;  on any shared cluster file system. They simply have to be shared&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;VIP virtual IP&lt;br /&gt;- Both application/RAC VIP fail over if related application fail and accept new connections&lt;br /&gt;- Recommended RAC VIP sharing among database instances but not among different applications because...&lt;br /&gt;- ...VIP fail over if the application fail over&lt;br /&gt;- A failed over VIP application accepts new connection&lt;br /&gt;- Each VIP requires an unused and resolvable IP address&lt;br /&gt;- VIP address should be registered in DNS&lt;br /&gt;- VIP address should be on the same subnet of the public network&lt;br /&gt;- VIPs are used to prevent connection requests timeout during client connection attempts&lt;br /&gt;&lt;br /&gt;Changing a VIP&lt;br /&gt;1- Stop VIP dependent cluster components on one node&lt;br /&gt;2- Make changes on DNS&lt;br /&gt;3- Change VIP using SRVCTL&lt;br /&gt;4- Restart VIP dependent components&lt;br /&gt;5- Repeat above on remaining nodes&lt;br /&gt; &lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;oifcfg&lt;br /&gt;allocating and deallocating network interfaces, get values from OCR&lt;br /&gt;&lt;br /&gt;To display a list of networks&lt;br /&gt;oifcfg getif&lt;br /&gt;eth1  192.168.1.0  global  cluster_interconnect&lt;br /&gt;eth0  192.168.0.0  global  public&lt;br /&gt;&lt;br /&gt;display a list of current subnets&lt;br /&gt;oifcfg iflist &lt;br /&gt;etho  147.43.1.0 &lt;br /&gt;ethl  192.168.1.0 &lt;br /&gt;&lt;br /&gt;To include a description of the subnet, specify the -p option: &lt;br /&gt;oifcfg iflist -p &lt;br /&gt;ethO  147.43.1.0  UNKNOWN &lt;br /&gt;ethl  192.168.1.0  PRIVATE &lt;br /&gt;&lt;br /&gt;In 10.2 public interfaces are UNKNOWN. &lt;br /&gt;To include the subnet mask, append the -n option to the -p option: &lt;br /&gt;oifcfg if list -p -n &lt;br /&gt;etho  147.43.1.0  UNKNOWN  255.255.255.0 &lt;br /&gt;ethl  192.168.1.0  PRIVATE  255.255.255.0 &lt;br /&gt; &lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;Db parameters with SAME VALUE across all instances&lt;br /&gt;active_instance_count&lt;br /&gt;archive_lag_target&lt;br /&gt;compatible&lt;br /&gt;cluster_database             RAC param&lt;br /&gt;cluster_database_instance    RAC param&lt;br /&gt;#Define network interfaces that will be used for interconnect&lt;br /&gt;#it is not a failover but a redistribution. If an address not work then stop all&lt;br /&gt;#Overrides the OCR&lt;br /&gt;cluster_interconnects        RAC param = 192.168.0.10; 192.168.0.11; ...&lt;br /&gt;control_files&lt;br /&gt;db_block_size&lt;br /&gt;db_domain&lt;br /&gt;db_files&lt;br /&gt;db_name&lt;br /&gt;db_recovery_file_dest&lt;br /&gt;db_recovery_file_dest_size&lt;br /&gt;db_unique_name&lt;br /&gt;dml_locks                    (when 0)&lt;br /&gt;instance_type                (rdbms or asm)&lt;br /&gt;max_commit_propagation_delay RAC param&lt;br /&gt;parallel_max_servers&lt;br /&gt;remote_login_password_file&lt;br /&gt;trace_enabled&lt;br /&gt;#cannot be mixed AUTO and MANUAL in a RAC&lt;br /&gt;undo_management&lt;br /&gt;&lt;br /&gt;Db parameters with INSTANCE specific VALUE across all instances&lt;br /&gt;instance_name&lt;br /&gt;instance_number&lt;br /&gt;thread&lt;br /&gt;undo_tablespace #system param&lt;br /&gt;&lt;br /&gt;Listener parameters&lt;br /&gt;local_listener='(ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.13) (PORT = 1521)))'&lt;br /&gt;  #allow pmon to register with local listener when not using 1521 port&lt;br /&gt;remote_listener = '(ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.2.9) (PORT = 1521)) (ADDRESS = (PROTOCOL = TCP)(HOST =192.168.2.10)(PORT = 1521)))'&lt;br /&gt;  #make the listener aware of the load of the listeners of other nodes&lt;br /&gt;&lt;br /&gt;Important Rac Parameters&lt;br /&gt;gc_files_to_locks #other than default disable Cache Fusion&lt;br /&gt;recovery_parallelism #number of redo application server processes in instance or media recovery&lt;br /&gt;&lt;br /&gt;Rac and Standby parameters&lt;br /&gt;dg_broker_config_file1 #shared between primary and standby instances&lt;br /&gt;dg_broker_config_file2 #different from dg_broker_config_file1, shared between primary and standby instances&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;Forum section&lt;br /&gt;This browser does not support Applets.&lt;br /&gt; &lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;Shared contents&lt;br /&gt;datafiles, controlfiles, spfiles, redo log&lt;br /&gt;&lt;br /&gt;Shared or local?&lt;br /&gt;                                                 RAW_Dev File_Syst  ASM NFS OCFS&lt;br /&gt;- Datafiles              : shared mandatory&lt;br /&gt;- Control files          : shared mandatory&lt;br /&gt;- Redo log               : shared mandatory&lt;br /&gt;- SPfile                 : shared mandatory&lt;br /&gt;- OCR and vote           : shared mandatory           Y         Y     N&lt;br /&gt;- Archived log           : shared not mandatory.      N         Y     N  Y&lt;br /&gt;- Undo                   : local&lt;br /&gt;- Flash Recovery         : shared                                     Y  Y     Y&lt;br /&gt;- Data Guard broker conf.: shared(prim. &amp; stdby)      Y               Y&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;Adding logfile thread groups for a new instance&lt;br /&gt;#To support a new instance on your RAC &lt;br /&gt;1) alter database add logfile thread 3 group 7;&lt;br /&gt;1) alter database add logfile thread 3 group 8;&lt;br /&gt;#makes the thread available for use by any instance&lt;br /&gt;2) alter database enable thread 3;&lt;br /&gt;# if you want to change an used thread&lt;br /&gt;  2) alter system set thread=3 scope=pfile sid='RAC01'&lt;br /&gt;  3) srvctl stop instance -d RACDB -i RAC01&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;Views and queries&lt;br /&gt;select * from GV$CACHE_TRANSFER&lt;br /&gt; &lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;An instance failed to start, what do we do?&lt;br /&gt;1) Check the instance alert.log&lt;br /&gt;2) Check the Oracle Clusterware software alert.log&lt;br /&gt;3) Check the resource state using CRS_STAT&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;Install&lt;br /&gt;See official Note 239998.1 for removing crs installation&lt;br /&gt;See http://startoracle.com/2007/09/30/so-you-want-to-play-with-oracle-11gs-rac-heres-how/ to install 11g RAC on VMware&lt;br /&gt;See http://www.oracle.com/technology/pub/articles/hunter_rac10gr2_iscsi.html to install on Linux with iSCSI disks&lt;br /&gt;See http://www.oracle-base.com/articles/10g/OracleDB10gR2RACInstallationOnCentos4UsingVMware.php to install on VMware&lt;br /&gt;&lt;br /&gt;#If using VMware remember to allow shared disks disabling locking&lt;br /&gt;#Obviously this is not required if you use OCFS or ASM&lt;br /&gt;disk.locking = "FALSE"&lt;br /&gt;See OCFS Oracle Cluster Filesystem&lt;br /&gt;&lt;br /&gt;Prerequisites check&lt;br /&gt;#check node connectivity and Clusterware integrity&lt;br /&gt;./runcluvfy.sh stage -pre dbinst -n all&lt;br /&gt;./runcluvfy.sh stage -post hwos  -n "linuxes,linuxes1"  -verbose&lt;br /&gt;WARNING: &lt;br /&gt;Package cvuqdisk not installed.   &lt;br /&gt;&lt;br /&gt;rpm -Uvh clusterware/rpm/cvuqdisk-1.0.1-1.rpm&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;WARNING: &lt;br /&gt;Unable to determine the sharedness of /dev/sdf on nodes:&lt;br /&gt;        linuxes1,linuxes1,linuxes1,linuxes1,linuxes1,linuxes1,linuxes,linuxes,linuxes,linuxes,linuxes,linuxes&lt;br /&gt;&lt;br /&gt;Safely ignore this error&lt;br /&gt;&lt;br /&gt;./runcluvfy.sh comp peer -n "linuxes,linuxes1"  -verbose&lt;br /&gt;./runcluvfy.sh comp nodecon -n "linuxes,linuxes1" -verbose &lt;br /&gt;./runcluvfy.sh comp sys -n "linuxes,linuxes1" -p crs -verbose &lt;br /&gt;./runcluvfy.sh comp admprv -n "linuxes,linuxes1" -verbose -o user_equiv&lt;br /&gt;./runcluvfy.sh stage -pre crsinst -n "linuxes,linuxes1" -r 10gR2&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;Restart intallation - Remove from each node&lt;br /&gt;su -c "$ORA_CRS_HOME/install/rootdelete.sh; $ORA_CRS_HOME/install/rootdeinstall.sh"&lt;br /&gt;#oracle user&lt;br /&gt;export DISPLAY=192.168.0.1:0.0&lt;br /&gt;/app/crs/oui/bin/runInstaller -removeHome -noClusterEnabled ORACLE_HOME=/app/crs LOCAL_NODE=linuxes&lt;br /&gt;rm -rf $ORA_CRS_HOME/*&lt;br /&gt;#root&lt;br /&gt;su -c "chown oracle:dba /dev/raw/*; chmod 660 /dev/raw/*; rm -rf /var/tmp/.oracle; rm -rf /tmp/.oracle"&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;#Format rawdevices using&lt;br /&gt;dd if=/dev/zero of=/dev/raw/raw6 bs=1M count=250&lt;br /&gt;&lt;br /&gt;#If related error message appears during installation, manually launch on related node&lt;br /&gt;/app/crs/oui/bin/runInstaller -attachHome -noClusterEnabled ORACLE_HOME=/app/crs ORACLE_HOME_NAME=OraCrsHome CLUSTER_NODES=linuxes,linuxes1 CRS=true  "INVENTORY_LOCATION=/app/oracle/oraInventory" LOCAL_NODE=linuxes&lt;br /&gt;&lt;br /&gt;runcluvfy.sh stage -pre crsinst -n linuxes -verbose&lt;br /&gt;&lt;br /&gt;Forum section&lt;br /&gt;This browser does not support Applets.&lt;br /&gt; /etc/hosts example&lt;br /&gt;# Do not remove the following line, or various programs &lt;br /&gt;# that require network functionality will fail, &lt;br /&gt;127.0.0.1     localhost &lt;br /&gt;147.43.1.101  londonl &lt;br /&gt;147.43.1.102  london2 &lt;br /&gt;#VIP is usable only after VIPCA utility run,&lt;br /&gt;#should be created on the public interface. Remember that VIPCA is a GUI tool&lt;br /&gt;147.43.1.201  londonl-vip &lt;br /&gt;147.43.1.202  london2-vip &lt;br /&gt;192.168.1.1   londonl-priv &lt;br /&gt;192.168.1.2   london2-priv&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;Kernel Parameters(/etc/sysctl.conf) Recommended Values&lt;br /&gt;kernel.sem (semmsl)           250 &lt;br /&gt;kernel.sem (semmns)           32000 &lt;br /&gt;kernel.sem (semopm)           100 &lt;br /&gt;kernel.sem (semmni)           128 &lt;br /&gt;kernel.shmall                 2097152 &lt;br /&gt;kernel.shmmax                 Half the size of physical memory &lt;br /&gt;kernel.shmmni                 4096 &lt;br /&gt;fs.file-max                   65536 &lt;br /&gt;net.core.rmem_default         262144 &lt;br /&gt;net.core.rmem_max             262144 &lt;br /&gt;net.core.wmem_default         262144 &lt;br /&gt;net.core.wmem_max             262144 &lt;br /&gt;net.ipv4.ip_local_port_range  1024 to 65000 &lt;br /&gt; &lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;RAC restrictions&lt;br /&gt;- dbms_alert, both publisher and subscriber must be on same instance, AQ is the workaround&lt;br /&gt;- dbms_pipe, only works on the same instance, AQ is the workaround&lt;br /&gt;- UTL_FILE, directories, external tables and BFILEs need to be on shared storage&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;Implementing the HA High Availability Framework&lt;br /&gt;Use srvctl to start/stop applications&lt;br /&gt;&lt;br /&gt;#Manually create a script that OCR will use to start/stop/status&lt;br /&gt;&lt;br /&gt;#Create an application VIP. &lt;br /&gt;#This command generates an application profile called haf demovip.cap in the $ORA_CRS_HOME/crs/ public directory. &lt;br /&gt;$ORA_CRS_HOME/bin/crs_profile -create hafdemovip -t application -a $ORA_CRS_HOME/bin/usrvip -o oi=eth0,ov=147.43.1.200,on=255.255.0.0 &lt;br /&gt;&lt;br /&gt;#As the oracle user, register the VIP with Oracle Clusterware: &lt;br /&gt;ORA_CRS_HOME/bin/crs_register hafdemovip &lt;br /&gt;&lt;br /&gt;#As the root user, set the owner of the apphcation VIP to root: &lt;br /&gt;$ORA_CRS_HOME/bin/crs_setperm hafdemovip -o root &lt;br /&gt;&lt;br /&gt;#As the root user, grant the oracle user permission to run the script: &lt;br /&gt;$ORA_CRS_HOME/bin/crs_setperm hafdemovip -u user:oracle:r-x &lt;br /&gt;&lt;br /&gt;#As the oracle user, start the application VIP: &lt;br /&gt;$ORA_CRS_HOME/bin/crs_start hafdemovip &lt;br /&gt;&lt;br /&gt;2. Create an application profile. &lt;br /&gt;$ORA_CRS_HOHE/bin/crs_profile -create hafdemo -t application -d "HAF Demo" -r hafdemovip -a /tmp/HAFDemoAction -0 ci=5,ra=60&lt;br /&gt;&lt;br /&gt;3. Register the application profile with Oracle Clusterware. &lt;br /&gt;$ORA_CRS_HOHE/bin/crs_register hafdemo &lt;br /&gt;&lt;br /&gt;$ORA_CRS_HOME/bin/crs_start hafdemo&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;CRS commands&lt;br /&gt;crs_profile&lt;br /&gt;crs_register&lt;br /&gt;crs_unregister&lt;br /&gt;crs_getperm&lt;br /&gt;crs_setperm&lt;br /&gt;crs_start&lt;br /&gt;crs_stop&lt;br /&gt;crs_stat&lt;br /&gt;crs_relocate&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;Server side callouts&lt;br /&gt;Oracle instance up(/down?)&lt;br /&gt;Service member down(/up?)&lt;br /&gt;Shadow application service up(/down?)&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;Adding a new node&lt;br /&gt;- Configure hardware and OS&lt;br /&gt;- With NETCA reconfigure listeners and add the new one&lt;br /&gt;- $ORA_CRS_HOME/oui/bin/addnode.sh from one of existing nodes to define the new one to all existing nodes&lt;br /&gt;- $ASM_HOME/oui/bin/addnode.sh from one of existing nodes (if using ASM)&lt;br /&gt;- $ORACLE_HOME/oui/bin/addnode.sh from one of existing nodes&lt;br /&gt;- racgons -add_config to add ONS metadata to OCR from one of existing nodes&lt;br /&gt;&lt;br /&gt;Removing a node from a cluster&lt;br /&gt;- Remove node from clusterware&lt;br /&gt;- Check that ONS configuration has been updated on other node&lt;br /&gt;- Check that database and instances are terminated on node to remove&lt;br /&gt;- Check that node has been removed from database and ASM repository&lt;br /&gt;- Check that software has been removed from database and ASM homes on node to remove&lt;br /&gt; &lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;RAC contentions&lt;br /&gt;- enq:HW - contention and gc current grant wait events&lt;br /&gt;  Use larger uniform extent size for objects&lt;br /&gt;  &lt;br /&gt;- enq: TX - index contention&lt;br /&gt;  Re-create the index as a global hash partitioned index.&lt;br /&gt;  Increase the sequence cache size if retaining the sequence.&lt;br /&gt;  Re-create the table using a natural key instead of a surrogate key.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6897144177599049811-1899034851482500116?l=ashakkhan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ashakkhan.blogspot.com/feeds/1899034851482500116/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6897144177599049811&amp;postID=1899034851482500116' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/1899034851482500116'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/1899034851482500116'/><link rel='alternate' type='text/html' href='http://ashakkhan.blogspot.com/2009/05/rac-10g-administration-basic.html' title='RAC 10g administration - Basic'/><author><name>Ashak Ali Khan</name><uri>http://www.blogger.com/profile/02783946057420260374</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_1rApOiGy_ns/Sa0sDHWokDI/AAAAAAAAAXQ/fQut2UPtxgY/S220/Ashak_Khan.bmp'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6897144177599049811.post-1653381647299395024</id><published>2009-03-23T05:14:00.000-07:00</published><updated>2009-03-23T05:15:42.974-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='11g New Features'/><title type='text'>11g New Feature : Invisible Index</title><content type='html'>Beginning with Release 11g, you can create invisible indexes. An invisible index is an index that is ignored by the optimizer and the user unless you explicitly set the OPTIMIZER_USE_INVISIBLE_INDEXES initialization parameter to TRUE at the session or system level. The default value for this parameter is FALSE.&lt;br /&gt;&lt;br /&gt;Using invisible indexes, you can do the following:&lt;br /&gt;&lt;br /&gt;1.Test the removal of an index before dropping it.&lt;br /&gt;&lt;br /&gt;2.Use temporary index structures for certain operations or modules of an application without affecting the overall application.&lt;br /&gt;&lt;br /&gt;Unlike unusable indexes, an invisible index is maintained during DML statements.&lt;br /&gt;&lt;br /&gt;To create an invisible index, use the SQL statement CREATE INDEX with the INVISIBLE clause. The following statement creates an invisible index named emp_ename for the ename column of the emp table:&lt;br /&gt;&lt;br /&gt;CREATE INDEX emp_ename ON emp(ename)&lt;br /&gt;TABLESPACE users&lt;br /&gt;STORAGE (INITIAL 20K&lt;br /&gt;NEXT 20k&lt;br /&gt;PCTINCREASE 75)&lt;br /&gt;INVISIBLE;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;To make a visible index invisible, issue this statement:&lt;br /&gt;&lt;br /&gt;ALTER INDEX index_name INVISIBLE;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;To make an invisible index visible, issue this statement:&lt;br /&gt;&lt;br /&gt;ALTER INDEX index_name VISIBLE;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;To find out whether an index is visible or invisible, query the dictionary views USER_INDEXES, ALL_INDEXES, or DBA_INDEXES. Column VISIBILITY is newly added to these views.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6897144177599049811-1653381647299395024?l=ashakkhan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ashakkhan.blogspot.com/feeds/1653381647299395024/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6897144177599049811&amp;postID=1653381647299395024' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/1653381647299395024'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/1653381647299395024'/><link rel='alternate' type='text/html' href='http://ashakkhan.blogspot.com/2009/03/11g-new-feature-invisible-index.html' title='11g New Feature : Invisible Index'/><author><name>Ashak Ali Khan</name><uri>http://www.blogger.com/profile/02783946057420260374</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_1rApOiGy_ns/Sa0sDHWokDI/AAAAAAAAAXQ/fQut2UPtxgY/S220/Ashak_Khan.bmp'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6897144177599049811.post-8393578721476856067</id><published>2009-03-21T01:08:00.000-07:00</published><updated>2009-03-21T01:09:41.892-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Oracle Dataguards'/><title type='text'>Data Guard Redo Apply and Media Recovery Best Practices 10gR1</title><content type='html'>Data Guard Redo Apply and Media Recovery Best Practices&lt;br /&gt;The best practices outlined in this paper have been derived after extensive media recovery testing on Oracle Database 10g as part of performance studies within the Maximum Availability Architecture (MAA) project2. For more information on MAA, please refer to [1]. For more information on Oracle 10g High Availability Practices or Data Guard, refer to [2], [3], [4] and [5]. Besides, some of these best practices were derived after extensive joint studies with real customer databases. &lt;br /&gt;Tuning Media Recovery Phases&lt;br /&gt;Media recovery consists of three distinct phases. Each phase must be assessed and tuned if the recovery rate is not sufficient. &lt;br /&gt;1. Log Read Phase involves the reading of redo from the standby redo logs or archived redo logs by the recovery coordinator or Managed Recovery Process (MRP). &lt;br /&gt;2. Redo Apply Phase involves the reading of data blocks into the buffer cache and the application of redo, by parallel recovery slave processes. The recovery coordinator (or MRP) ships redo to the recovery slaves using the parallel query (PQ) inter-process communication framework. &lt;br /&gt;3. Checkpoint Phase involves the flushing to disk of modified data blocks and the update of data file headers to record checkpoint completion. &lt;br /&gt;Real Application Clusters (RAC) provides additional fault tolerance to an existing Data Guard Redo Apply instance but does not help speed up recovery. For a RAC standby, in Data Guard Redo Apply, media recovery still runs on one instance, called the apply instance. However, for a RAC standby, Data Guard Broker makes it possible to achieve seamless high availability in the event of failures of one or more instances in a RAC standby. Redo transport and redo apply can be redirected to a surviving standby instance without any intervention from the user. For further details, refer to [6]. &lt;br /&gt;The following sections outline the best practices relevant to each phase.&lt;br /&gt;Best Practices for Tuning Log Read Phase&lt;br /&gt;Maximize I/O rates on standby redo logs (SRL) and archived redo logs&lt;br /&gt;Measure read I/O rates on the SRL and archived redo log directories. Keep in mind that the concurrent writing of shipped redo on a standby may reduce the redo read rate due to I/O saturation. The overall recovery rate will always be bounded by the rate at which redo can be read; so ensure that the redo read rate surpasses your required recovery rate.&lt;br /&gt;The following UNIX example shows how to measure the maximum redo read rate for recovery. Oracle uses a 4 MB read buffer for redo log reads.3 &lt;br /&gt;% /bin/time dd if=/redo_logs/t_log8.f of=/dev/null bs=4096k &lt;br /&gt;50+1 records in&lt;br /&gt;50+1 records out &lt;br /&gt;real 6.4&lt;br /&gt;user 0.0&lt;br /&gt;sys 0.1&lt;br /&gt;Estimated Read Rate (200 MB log file) = (50 * 4 MB) / 6.4s = 31.25 MB/sec&lt;br /&gt;Best Practices for Tuning Redo Apply Phase&lt;br /&gt;Assess Recovery Rate &lt;br /&gt;Use the following queries to get several snapshots while a redo log is being applied to obtain the current recovery rate:&lt;br /&gt;i. Determine Log Block Size (lebsz) since it is different for each operating system. This query only needs to be executed once. &lt;br /&gt;select lebsz LOG_BLOCK_SIZE from x$kccle where rownum=1;&lt;br /&gt;ii. Derive recovery blocks applied for at least 2 snapshots: &lt;br /&gt;(a) Media Recovery Cases (e.g. recover [standby] database)&lt;br /&gt;select TYPE, ITEM, SOFAR, TO_CHAR(SYSDATE, ‘DD-MON-YYYY HH:MI:SS’) TIME from v$RECOVERY_PROGRESS where ITEM=’Redo Blocks’ and TOTAL=0;&lt;br /&gt;(b) Managed Recovery Cases (e.g. recover managed standby database…)&lt;br /&gt;select PROCESS, SEQUENCE#, THREAD#, BLOCK#, BLOCKS, TO_CHAR(SYSDATE, ‘DD-MON-YYYY HH:MI:SS’) TIME from V$MANAGED_STANDBY where PROCESS=’MRP0’;&lt;br /&gt;iii. To determine the recovery rate (MB/sec) for this archive, use one of these formulas with the information derived above: &lt;br /&gt;(a) Media Recovery Case:&lt;br /&gt;((SOFAR_END – SOFAR_BEG) * LOG_BLOCK_SIZE) /&lt;br /&gt;((TIME_END – TIME_BEG) * 1024 * 1024 )&lt;br /&gt;(b) Managed Recovery Case:&lt;br /&gt;((BLOCK#_END – BLOCK#_BEG) * LOG_BLOCK_SIZE)) /&lt;br /&gt;((TIME_END – TIME_BEG) * 1024 * 1024)&lt;br /&gt;Use defaults for DB_BLOCK_CHECKING and DB_BLOCK_CHECKSUM &lt;br /&gt;The default settings are DB_BLOCK_CHECKING = FALSE and DB_BLOCK_CHECKSUM = TRUE. Setting DB_BLOCK_CHECKING to TRUE can potentially halve the recovery rate. Block checking is always recommended on the primary database and may still be enabled on the standby if the recovery rate meets expectations. Block checksum should always be enabled for both primary and standby databases and will catch most block corruptions while incurring negligible overhead. 5&lt;br /&gt;Set recovery parallelism to the number of CPUs &lt;br /&gt;Parallel recovery is enabled by default for media and crash recovery with the default and optimal degree of parallelism set to the number of CPUs available.   The same default settings are used by managed recovery or Data Guard Redo Apply beginning with 10.1.0.5, and for Oracle Database 10g Release 2 beginning with 10.2.0.1.  Prior to these releases it is necessary to explicitly set the PARALLEL attribute in the MANAGED RECOVERY clause.   For example, &lt;br /&gt;RECOVER MANAGED STANDBY DATABASE PARALLEL; &lt;br /&gt;If you want to experiment with an higher degree of parallelism, you can explicitly dictate the degree of parallelism.  &lt;br /&gt;   RECOVER MANAGED STANDBY DATABASE PARALLEL &lt;#&gt;;&lt;br /&gt;Set PARALLEL_EXECUTION_MESSAGE_SIZE (PEMS) = 8192 &lt;br /&gt;Increasing the PEMS parameter to 8192 may improve recovery by as much as 20%, over the default PEMS setting of 2152. The message size parameter is used by parallel query operations so there must be sufficient shared pool to support this increase. On a 64-CPU box with a 32-bit address space, an increase in message size to 8K may cause parallel query operations to fail, because of a blowout in addressable memory. Most of the recovery performance gains can be realized by increasing PEMS to 4K (4096).&lt;br /&gt;Set DB_CACHE_SIZE &gt;= Primary’s settings, DB_KEEP_CACHE_SIZE=0, and DB_RECYCLE_CACHE_SIZE=0 &lt;br /&gt;Having a large database cache size can improve media recovery performance significantly. Since media recovery does not require DB_KEEP_CACHE_SIZE and DB_RECYCLE_CACHE_SIZE or require a large SHARED_POOL_SIZE, the memory can be reallocated to the DB_CACHE_SIZE.&lt;br /&gt;The only complication is resetting it to the primary database setting prior to changing to a primary role. If these parameters are different, you may require 2 initialization parameter files (init.oras or spfiles) for standby and primary roles. &lt;br /&gt;Best Practices for Tuning Checkpoint Phase&lt;br /&gt;Increase primary and standby log group size &lt;br /&gt;Increase the primary database’s online redo log and standby database’s standby redo logs sizes to a default of 1 GB. Oracle does a full checkpoint and updates all the file headers (in an optimized manner) at each log file boundary during media recovery. To reduce the frequency of a full database checkpoint and updating all the file headers, increase the log group size so that a log switch is occurring at a minimum of 15 minutes interval6. If Real Time Apply is being used and redo is being sent synchronously or asynchronously via LGWR process, then there’s no additional data loss risk with this change. If archiver is sending the redo or the primary database is converting to ARCH mode due to heavy load, then you have to balance between faster recovery rates and higher data loss risk.&lt;br /&gt;Tune I/O &lt;br /&gt;DBWR needs to write out modified blocks from the buffer cache to the data files. Always use native asynchronous I/O by setting DISK_ASYNCH_IO=TRUE (default). In the rare case that asynchronous I/O is not available, use DBWR_IO_SLAVES to improve the effective data block write rate with synchronous I/O. &lt;br /&gt;Ensure that you have sufficient I/O bandwidth and the I/O response time is “reasonable” for your system either by doing some base I/O tests, comparing the I/O statistics with primary, or looking at some historical I/O metrics. Be aware that I/O response time may vary when many applications share the same storage infrastructure such as with a Storage Area Network (SAN) or Network Attached Storage (NAS). &lt;br /&gt;Troubleshooting and Advanced Tuning&lt;br /&gt;The physical standby database or a recovery instance is unlike the primary database. While the typical primary instance may comprise of 95 percent or more query activity with many CPU intensive operations, the media recovery instance is very write and update intensive. The recovery instance’s goal is to apply changes to data blocks and write them to the data files. In many cases, the media recovery instance requires much less overall CPU resources but equal or greater I/O or memory capacity. Instead of possibly hundreds of CPU intensive operations on the primary, only the recovery coordinator (PID of the foreground process in v$process) or MRP process (MRP0 PID found in v$managed_standby) is generally CPU intensive. In many cases, fewer but faster CPUs will typically enhance recovery performance. There is no simple formula to predict the standby database system utilization. Here are some general observations that we found during our testing.&lt;br /&gt;• The higher the read ratio on primary, the greater the difference in CPU utilization between the primary and standby databases. &lt;br /&gt;• Higher numbers of sorts or complex queries executed will require more CPU utilization on the primary database. Queries and sorts do not create additional redo and thus do not create additional work on the standby database. &lt;br /&gt;• Additional standby database CPU utilization is required when unique blocks are updated to account for the application of redo to the distinct blocks. The SQL*Loader runs modified 5 times less unique blocks compared to an OLTP run leading to 30% - 40% less CPU utilization on the standby while having almost three times the apply rate of the OLTP runs. &lt;br /&gt;Therefore, tuning media recovery focuses primarily on removing system resources or database wait constraints. &lt;br /&gt;Assess system resources &lt;br /&gt;Use system commands such as UNIX sar and vmstat or system monitoring tools to assess system resources.&lt;br /&gt;• If there are I/O bottlenecks or excessive wait I/Os, then stripe across more spindles/devices or leverage more controllers. A stripe size between 256KB to 1MB is optimal to leverage your I/O subsystem. Verify that this is not a bus or controller bottleneck or any other I/O bottleneck. The read I/O from the standby redo log should be greater than expected recovery rate. &lt;br /&gt;• Check for excessive swapping or memory paging. &lt;br /&gt;• Check to ensure the recovery coordinator or MRP is not CPU bound during recovery.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6897144177599049811-8393578721476856067?l=ashakkhan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ashakkhan.blogspot.com/feeds/8393578721476856067/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6897144177599049811&amp;postID=8393578721476856067' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/8393578721476856067'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/8393578721476856067'/><link rel='alternate' type='text/html' href='http://ashakkhan.blogspot.com/2009/03/data-guard-redo-apply-and-media.html' title='Data Guard Redo Apply and Media Recovery Best Practices 10gR1'/><author><name>Ashak Ali Khan</name><uri>http://www.blogger.com/profile/02783946057420260374</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_1rApOiGy_ns/Sa0sDHWokDI/AAAAAAAAAXQ/fQut2UPtxgY/S220/Ashak_Khan.bmp'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6897144177599049811.post-5013508379759186754</id><published>2009-03-18T01:53:00.001-07:00</published><updated>2009-03-18T01:53:48.814-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Oracle Dataguards'/><title type='text'>Failover in Oracle9i DataGuard Environments</title><content type='html'>PURPOSE&lt;br /&gt;-------&lt;br /&gt;&lt;br /&gt;This Note shows the different Failover Types and Limitations for Failover in&lt;br /&gt;Oracle DataGuard 9i&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;SCOPE &amp; APPLICATION&lt;br /&gt;-------------------&lt;br /&gt;&lt;br /&gt;The contents of this note are valid for 9iR1 (9.0.1) and 9iR2 (9.2.0)&lt;br /&gt;DataGuard Configurations, also for Logical Standby Databases. This note&lt;br /&gt;should help you to understand and describe what a failover is, what &lt;br /&gt;Types of Failovers are available, and how to perform them.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;FAILOVER ON ORACLE DATABASES PROTECTED WITH ORACLE DATAGUARD&lt;br /&gt;============================================================&lt;br /&gt; &lt;br /&gt;1. What is a Failover ?&lt;br /&gt;&lt;br /&gt;Oracle DataGuard is a Disaster Recovery (DR) Solution for Oracle Databases. &lt;br /&gt;The basic idea behind DataGuard is a Standby Database performing all changes&lt;br /&gt;from a Primary Database on itself, too. So the Standby Database should be a&lt;br /&gt;constantly updated copy of a Primary Database. This copy can either be a &lt;br /&gt;mounted and in Recovery mode placed (Physical Standby) or an open Database&lt;br /&gt;(Logical Standby - Oracle 9iR2 only). In case of a loss of the Primary&lt;br /&gt;Database, the Standby can take over the Primary Role and act as a Primary &lt;br /&gt;Database. Also for planned outages of the Primary Database (eg. Hardware &lt;br /&gt;upgrades,...), the Standby Database can takeover the Primary Role and &lt;br /&gt;switchback to the Standby Role once the Upgrade is complete. &lt;br /&gt;&lt;br /&gt;Please refer to the following notes for information on creating a Standby&lt;br /&gt;Database:&lt;br /&gt;&lt;br /&gt; Note 180031.1: Creating a Data Guard Configuration&lt;br /&gt; Note 186150.1: Data Guard 9i Creating a Logical Standby Database&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;The Difference between a Switchover and a Failover is, that after a Failover, &lt;br /&gt;the Standby Database becoming a Primary now, cannot switchback to become a &lt;br /&gt;Standby Database again. In Opposition a Switchover exchanges the Database&lt;br /&gt;Roles (The Primary becomes a Standby and the Standby becomes a Primary). &lt;br /&gt;Switchovers can be performed arbitrarily, a Failover only once.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;2. Failover Types&lt;br /&gt;&lt;br /&gt;2.1 Failover on Physical Standby Database&lt;br /&gt;&lt;br /&gt;A Failover can be performed when all or most of the information until the &lt;br /&gt;Unavailability of the Primary Database was propageted to the Standby. The&lt;br /&gt;usage of Standby RedoLogs ia a great advantage here. If you have no Standby&lt;br /&gt;RedoLogs available, you will always encounter some Data Loss (depending on&lt;br /&gt;the Changes since the latest LogSwitch). To perform a Failover just follow &lt;br /&gt;these steps:&lt;br /&gt;&lt;br /&gt;- The Primary Database is down for any reason&lt;br /&gt;&lt;br /&gt;- Verify a Standby RedoLog is in use for Primary current Online RedoLog. You &lt;br /&gt;  then find in the ALERT.LOG of the Standby something like:&lt;br /&gt;  &lt;br /&gt;  RFS: Successfully opened standby logfile 4:'C:\ORACLE\ORADATA\PRIMARY\STBY01.LOG'&lt;br /&gt;&lt;br /&gt;- If this is the case run the following commands:&lt;br /&gt;&lt;br /&gt;   SQL&gt; ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL;&lt;br /&gt;  &lt;br /&gt;  This cancels the normal managed Recovery. To get the Standby RedoLog Information&lt;br /&gt;  is still required. Therefore issue this command:&lt;br /&gt;&lt;br /&gt;   SQL&gt; ALTER DATABASE RECOVER MANAGED STANDBY DATABASE FINISH;&lt;br /&gt;   &lt;br /&gt;- If a Standby RedoLog is not used for any reason, then run this one:&lt;br /&gt;&lt;br /&gt;   SQL&gt; ALTER DATABASE RECOVER MANAGED STANDBY DATABASE FINISH SKIP STANDBY LOGFILE;&lt;br /&gt;&lt;br /&gt;  Please keep in mind that this one causes (Minimal) Data Loss as the latestet&lt;br /&gt;  information from the down Primary Database is not available anymore. &lt;br /&gt;&lt;br /&gt;- Once this is complete (This performs a complete Recovery or incomplete &lt;br /&gt;  Recovery until the last SCN included in the latest archived Log available at &lt;br /&gt;  the Standby), you can now make the Standby Database a Primary:&lt;br /&gt;  &lt;br /&gt;   SQL&gt; ALTER DATABASE COMMIT TO SWITCHOVER TO PRIMARY&lt;br /&gt;   &lt;br /&gt;WARNING: This will only succeed if the correct RECOVER FINISH-statement was &lt;br /&gt;         issued before. If you forgot the 'SKIP STANDBY LOGFILE' although you&lt;br /&gt;         have no Standby RedoLogs, the COMMIT to Switchover will fail with the&lt;br /&gt;         error that more Media Recovery is required here.&lt;br /&gt;         &lt;br /&gt;- If the COMMIT TO SWITCHOVER fails for any reason you have to use the ACTIVATE&lt;br /&gt;  command which forces the Failover (and may cause Data Loss !!)&lt;br /&gt;  &lt;br /&gt;   SQL&gt; ALTER DATABASE ACTIVATE STANDBY DATABASE;&lt;br /&gt;&lt;br /&gt;- Shutdown and restart the Databse after this command ended successfully:&lt;br /&gt;&lt;br /&gt;   SQL&gt; SHUTDOWN IMMEDIATE&lt;br /&gt;   SQL&gt; STARTUP&lt;br /&gt;   &lt;br /&gt;- Now the Standby is open as a new Primary Database&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;2.2 Failover on a Logical Standby Database (Oracle 9iR2 only):&lt;br /&gt;&lt;br /&gt;A Failover to a Logical Standby Database is also possible, but not recommended&lt;br /&gt;for DR, as there are some restrictions on Logical Standby Databases (see&lt;br /&gt;Oracle 9i DataGuard Concepts and Administration, Chapter 4.1.4 Determine &lt;br /&gt;Support for Datatypes or Tables). So a Failover to a Logical Standby Database&lt;br /&gt;might always cause a Data Loss.&lt;br /&gt;To perform a Failover to a Logical Standby Database, perform the following &lt;br /&gt;steps:&lt;br /&gt;&lt;br /&gt;- The Primary Database is down for any reason&lt;br /&gt;&lt;br /&gt;- Determine if all Archive Logs have been transfered from the Primary Database&lt;br /&gt;  to the Logical Standby Database (Either look for them in the directory and &lt;br /&gt;  query the DBA_LOGSTDBY_LOG-view).&lt;br /&gt;&lt;br /&gt;- Copy all missing ArchiveLogs and the Online RedoLogs from the Primary &lt;br /&gt;  Database to the Logical Standby Database if possible.&lt;br /&gt;&lt;br /&gt;- Register all copied or not already registered LogFiles to the Logical Standby&lt;br /&gt;  Database:&lt;br /&gt;  &lt;br /&gt;   SQL&gt; ALTER DATABASE REGISTER LOGICAL LOGFILE '&lt;Patch/Logfilename&gt;';&lt;br /&gt;&lt;br /&gt;- Turn off Logical Apply Delay Interval (if set):&lt;br /&gt;&lt;br /&gt;   SQL&gt; ALTER DATABASE STOP LOGICAL STANDBY APPLY;&lt;br /&gt;   SQL&gt; EXECUTE DBMS_LOGSTDBY.APPLY_UNSET('APPLY_DELAY');&lt;br /&gt;   SQL&gt; ALTER DATABASE START LOGICAL STANDBY APPLY;&lt;br /&gt;&lt;br /&gt;- Ensure all registered Logfiles have been applied:&lt;br /&gt;&lt;br /&gt;   SQL&gt; SELECT APPLIED_SCN, NEWEST_SCN FROM DBA_LOGSTDBY_PROGRESS;&lt;br /&gt;   &lt;br /&gt;- Stop Logical Apply Services:&lt;br /&gt;&lt;br /&gt;   SQL&gt; ALTER DATABASE STOP LOGICAL STANDBY APPLY;&lt;br /&gt;   &lt;br /&gt;- Activate the Logical Standby Database:&lt;br /&gt;&lt;br /&gt;   SQL&gt; ALTER DATABASE ACTIVATE LOGICAL STANDBY DATABASE;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6897144177599049811-5013508379759186754?l=ashakkhan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ashakkhan.blogspot.com/feeds/5013508379759186754/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6897144177599049811&amp;postID=5013508379759186754' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/5013508379759186754'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/5013508379759186754'/><link rel='alternate' type='text/html' href='http://ashakkhan.blogspot.com/2009/03/failover-in-oracle9i-dataguard.html' title='Failover in Oracle9i DataGuard Environments'/><author><name>Ashak Ali Khan</name><uri>http://www.blogger.com/profile/02783946057420260374</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_1rApOiGy_ns/Sa0sDHWokDI/AAAAAAAAAXQ/fQut2UPtxgY/S220/Ashak_Khan.bmp'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6897144177599049811.post-6650993486462085274</id><published>2009-03-16T01:13:00.000-07:00</published><updated>2009-03-16T01:14:03.981-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Real Application Clusters'/><title type='text'>11g Cluster Administration and Maintenance</title><content type='html'>Checking CRS Status:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;The below two commands are generally used to check the status of CRS. The first command lists the status of CRS&lt;br /&gt;on the local node where as the other command shows the CRS status across all the nodes in Cluster.&lt;br /&gt;&lt;br /&gt;crsctl check crs &lt;&lt;-- for the local node&lt;br /&gt;crsctl check cluster &lt;&lt;-- for remote nodes in the cluster&lt;br /&gt;&lt;br /&gt;[root@node1-pub ~]# crsctl check crs&lt;br /&gt;Cluster Synchronization Services appears healthy&lt;br /&gt;Cluster Ready Services appears healthy&lt;br /&gt;Event Manager appears healthy&lt;br /&gt;[root@node1-pub ~]# &lt;br /&gt;&lt;br /&gt;Checking Viability of CSS across nodes:&lt;br /&gt;&lt;br /&gt;crsctl check cluster&lt;br /&gt;&lt;br /&gt;For this command to run, CSS needs to be running on the local node. The "ONLINE" status for remote node says that CSS is running on that node.&lt;br /&gt;When CSS is down on the remote node, the status of "OFFLINE" is displayed for that node.&lt;br /&gt;&lt;br /&gt;[root@node1-pub ~]# crsctl check cluster&lt;br /&gt;node1-pub    ONLINE&lt;br /&gt;node2-pub    ONLINE &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Viewing Cluster name:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;I use below command to get the name of Cluster. You can also dump the ocr and view the name from the dump file.&lt;br /&gt;&lt;br /&gt;ocrdump -stdout -keyname SYSTEM | grep -A 1 clustername | grep ORATEXT | awk '{print $3}'&lt;br /&gt;&lt;br /&gt;[root@node1-pub ~]# ocrdump -stdout -keyname SYSTEM | grep -A 1 clustername | grep ORATEXT | awk '{print $3}'&lt;br /&gt;test-crs&lt;br /&gt;[root@node1-pub ~]# &lt;br /&gt;&lt;br /&gt;OR&lt;br /&gt;&lt;br /&gt;ocrconfig -export /tmp/ocr_exp.dat -s online&lt;br /&gt;for i in `strings /tmp/ocr_exp.dat | grep -A 1 clustername` ; do if [ $i != 'SYSTEM.css.clustername' ]; then echo $i; fi; done&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;[root@node1-pub ~]# ocrconfig -export /tmp/ocr_exp.dat -s online&lt;br /&gt;[root@node1-pub ~]# for i in `strings /tmp/ocr_exp.dat | grep -A 1 clustername` ; do if [ $i != 'SYSTEM.css.clustername' ]; then echo $i; fi; done&lt;br /&gt;test-crs&lt;br /&gt;[root@node1-pub ~]# &lt;br /&gt;&lt;br /&gt;OR&lt;br /&gt;&lt;br /&gt;Oracle creates a directory with the same name as Cluster under the $ORA_CRS_HOME/cdata. you can get the cluster name from this directory as well.&lt;br /&gt;&lt;br /&gt;[root@node1-pub ~]# ls /u01/app/crs/cdata&lt;br /&gt;localhost  test-crs&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Viewing No. Of Nodes configured in Cluster:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;The below command can be used to find out the number of nodes registered into the cluster.&lt;br /&gt;It also displays the node's Public name, Private name and Virtual name along with their numbers.&lt;br /&gt;&lt;br /&gt;olsnodes -n -p -i&lt;br /&gt;&lt;br /&gt;[root@node1-pub ~]# olsnodes -n -p -i &lt;br /&gt;node1-pub       1       node1-prv       node1-vip&lt;br /&gt;node2-pub       2       node2-prv       node2-vip&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Viewing Votedisk Information:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;The below command is used to view the no. of Votedisks configured in the Cluster.&lt;br /&gt;&lt;br /&gt;crsctl query css votedisk&lt;br /&gt;&lt;br /&gt;[root@node1-pub ~]# crsctl query css votedisk&lt;br /&gt; 0.     0    /u02/ocfs2/vote/VDFile_0&lt;br /&gt; 1.     0    /u02/ocfs2/vote/VDFile_1&lt;br /&gt; 2.     0    /u02/ocfs2/vote/VDFile_2&lt;br /&gt;Located 3 voting disk(s).&lt;br /&gt;[root@node1-pub ~]# &lt;br /&gt;&lt;br /&gt;[root@node1-pub ~]# crsctl check crs&lt;br /&gt;Cluster Synchronization Services appears healthy&lt;br /&gt;Cluster Ready Services appears healthy&lt;br /&gt;Event Manager appears healthy&lt;br /&gt;[root@node1-pub ~]# &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Viewing OCR Disk Information:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;The below command is used to view the no. of OCR files configured in the Cluster. It also displays the version of OCR&lt;br /&gt;as well as storage space information. You can only have 2 OCR files at max.&lt;br /&gt;&lt;br /&gt;ocrcheck&lt;br /&gt;&lt;br /&gt;[root@node1-pub ~]# ocrcheck&lt;br /&gt;Status of Oracle Cluster Registry is as follows :&lt;br /&gt;         Version                  :          2&lt;br /&gt;         Total space (kbytes)     :     262120&lt;br /&gt;         Used space (kbytes)      :       3848&lt;br /&gt;         Available space (kbytes) :     258272&lt;br /&gt;         ID                       :  744414276&lt;br /&gt;         Device/File Name         : /u02/ocfs2/ocr/OCRfile_0&lt;br /&gt;                                    Device/File integrity check succeeded&lt;br /&gt;         Device/File Name         : /u02/ocfs2/ocr/OCRfile_1&lt;br /&gt;                                    Device/File integrity check succeeded&lt;br /&gt; &lt;br /&gt;         Cluster registry integrity check succeeded&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;Various Timeout Settings in Cluster:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Disktimeout: &lt;br /&gt;    Disk Latencies in seconds from node-to-Votedisk. Default Value is 200. (Disk IO)&lt;br /&gt;Misscount: &lt;br /&gt;    Network Latencies in second from node-to-node (Interconnect). Default Value is 60 Sec (Linux) and 30 Sec in Unix platform. (Network IO)&lt;br /&gt;    Misscount &lt; Disktimeout&lt;br /&gt;&lt;br /&gt;NOTE: Do not change them without contacting Oracle Support. This may cause logical corruption to the Data.&lt;br /&gt;&lt;br /&gt;IF&lt;br /&gt;  (Disk IO Time &gt; Disktimeout) OR (Network IO time &gt; Misscount)&lt;br /&gt;THEN&lt;br /&gt;   REBOOT NODE&lt;br /&gt;ELSE&lt;br /&gt;   DO NOT REBOOT&lt;br /&gt;END IF;&lt;br /&gt;&lt;br /&gt;crsctl get css disktimeout&lt;br /&gt;crsctl get css misscount&lt;br /&gt;crsctl get css  reboottime&lt;br /&gt;&lt;br /&gt;[root@node1-pub ~]# crsctl get css disktimeout&lt;br /&gt;200&lt;br /&gt;&lt;br /&gt;[root@node1-pub ~]# crsctl get css misscount&lt;br /&gt;Configuration parameter misscount is not defined. &lt;&lt;&lt;&lt;&lt; This message indicates that the Misscount is not set maually and it is set to it's &lt;br /&gt;Default Value On Linux, it is default to 60 Second. If you want to chang it, you can do that as below. (Not recommended)&lt;br /&gt;&lt;br /&gt;[root@node1-pub ~]# crsctl set css misscount 100&lt;br /&gt;Configuration parameter misscount is now set to 100.&lt;br /&gt;[root@node1-pub ~]# crsctl get css misscount&lt;br /&gt;100&lt;br /&gt;&lt;br /&gt;The below command sets the value of misscount back to its Default values:&lt;br /&gt;&lt;br /&gt; crsctl unset css misscount &lt;br /&gt;&lt;br /&gt;[root@node1-pub ~]# crsctl unset css misscount&lt;br /&gt;&lt;br /&gt;[root@node1-pub ~]# crsctl get css  reboottime&lt;br /&gt;3&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Add/Remove OCR file in Cluster:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Removing OCR File&lt;br /&gt;&lt;br /&gt;(1) Get the Existing OCR file information by running ocrcheck utility.&lt;br /&gt;&lt;br /&gt;[root@node1-pub ~]# ocrcheck&lt;br /&gt;Status of Oracle Cluster Registry is as follows :&lt;br /&gt;         Version                  :          2&lt;br /&gt;         Total space (kbytes)     :     262120&lt;br /&gt;         Used space (kbytes)      :       3852&lt;br /&gt;         Available space (kbytes) :     258268&lt;br /&gt;         ID                       :  744414276&lt;br /&gt;         Device/File Name         : /u02/ocfs2/ocr/OCRfile_0 &lt;-- OCR&lt;br /&gt;                                    Device/File integrity check succeeded&lt;br /&gt;         Device/File Name         : /u02/ocfs2/ocr/OCRfile_1 &lt;-- OCR Mirror&lt;br /&gt;                                    Device/File integrity check succeeded&lt;br /&gt; &lt;br /&gt;         Cluster registry integrity check succeeded&lt;br /&gt; &lt;br /&gt;(2) The First command removes the OCR mirror (/u02/ocfs2/ocr/OCRfile_1). If you want to remove the OCR&lt;br /&gt;      file (/u02/ocfs2/ocr/OCRfile_1) run the next command.&lt;br /&gt;&lt;br /&gt;ocrconfig -replace ocrmirror&lt;br /&gt;ocrconfig -replace ocr&lt;br /&gt;&lt;br /&gt;[root@node1-pub ~]# ocrconfig -replace ocrmirror &lt;br /&gt;[root@node1-pub ~]# ocrcheck&lt;br /&gt;Status of Oracle Cluster Registry is as follows :&lt;br /&gt;         Version                  :          2&lt;br /&gt;         Total space (kbytes)     :     262120&lt;br /&gt;         Used space (kbytes)      :       3852&lt;br /&gt;         Available space (kbytes) :     258268&lt;br /&gt;         ID                       :  744414276&lt;br /&gt;         Device/File Name         : /u02/ocfs2/ocr/OCRfile_0 &lt;&lt;-- OCR File&lt;br /&gt;                                    Device/File integrity check succeeded&lt;br /&gt; &lt;br /&gt;                                    Device/File not configured  &lt;-- OCR Mirror not existed any more&lt;br /&gt; &lt;br /&gt;         Cluster registry integrity check succeeded&lt;br /&gt;&lt;br /&gt;Adding OCR&lt;br /&gt;&lt;br /&gt;You need to add OCR or OCR Mirror file in a case where you want to move the existing OCR file location to the different Devices.&lt;br /&gt;The below command add ths OCR mirror file if OCR file alread exists.&lt;br /&gt;&lt;br /&gt;(1) Get the Current status of OCR:&lt;br /&gt; &lt;br /&gt;[root@node1-pub ~]# ocrconfig -replace ocrmirror &lt;br /&gt;[root@node1-pub ~]# ocrcheck&lt;br /&gt;Status of Oracle Cluster Registry is as follows :&lt;br /&gt;         Version                  :          2&lt;br /&gt;         Total space (kbytes)     :     262120&lt;br /&gt;         Used space (kbytes)      :       3852&lt;br /&gt;         Available space (kbytes) :     258268&lt;br /&gt;         ID                       :  744414276&lt;br /&gt;         Device/File Name         : /u02/ocfs2/ocr/OCRfile_0 &lt;&lt;-- OCR File&lt;br /&gt;                                    Device/File integrity check succeeded&lt;br /&gt; &lt;br /&gt;                                    Device/File not configured  &lt;-- OCR Mirror does not exist&lt;br /&gt; &lt;br /&gt;         Cluster registry integrity check succeeded&lt;br /&gt;&lt;br /&gt;As You can see, I only have one OCR file but not the second file which is OCR Mirror.&lt;br /&gt;So, I can add second OCR (OCR Mirror) as below command. &lt;br /&gt;&lt;br /&gt;ocrconfig -replace ocrmirror &lt;File name&gt;&lt;br /&gt;&lt;br /&gt;[root@node1-pub ~]# ocrconfig -replace ocrmirror /u02/ocfs2/ocr/OCRfile_1&lt;br /&gt;[root@node1-pub ~]# ocrcheck&lt;br /&gt;Status of Oracle Cluster Registry is as follows :&lt;br /&gt;         Version                  :          2&lt;br /&gt;         Total space (kbytes)     :     262120&lt;br /&gt;         Used space (kbytes)      :       3852&lt;br /&gt;         Available space (kbytes) :     258268&lt;br /&gt;         ID                       :  744414276&lt;br /&gt;         Device/File Name         : /u02/ocfs2/ocr/OCRfile_0&lt;br /&gt;                                    Device/File integrity check succeeded&lt;br /&gt;         Device/File Name         : /u02/ocfs2/ocr/OCRfile_1&lt;br /&gt;                                    Device/File integrity check succeeded&lt;br /&gt; &lt;br /&gt;         Cluster registry integrity check succeeded&lt;br /&gt;&lt;br /&gt;You can have at most 2 OCR devices (OCR itself and its single Mirror) in a cluster. Adding extra Mirror gives you below error message&lt;br /&gt; &lt;br /&gt;[root@node1-pub ~]# ocrconfig -replace ocrmirror /u02/ocfs2/ocr/OCRfile_2&lt;br /&gt;PROT-21: Invalid parameter&lt;br /&gt;[root@node1-pub ~]# &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Add/Remove Votedisk file in Cluster:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Adding Votedisk:&lt;br /&gt;&lt;br /&gt;Get the existing Vote Disks associated into the cluster. To be safe, Bring crs cluster stack down on all the nodes &lt;br /&gt;but one on which you are going to add votedisk from.&lt;br /&gt;&lt;br /&gt;(1) Stop CRS on all the nodes in cluster but one.&lt;br /&gt;&lt;br /&gt;[root@node2-pub ~]# crsctl stop crs&lt;br /&gt;&lt;br /&gt;(2) Get the list of Existing Vote Disks&lt;br /&gt;&lt;br /&gt;crsctl query css votedisk&lt;br /&gt;&lt;br /&gt;[root@node1-pub ~]# crsctl query css votedisk&lt;br /&gt; 0.     0    /u02/ocfs2/vote/VDFile_0&lt;br /&gt; 1.     0    /u02/ocfs2/vote/VDFile_1&lt;br /&gt; 2.     0    /u02/ocfs2/vote/VDFile_2&lt;br /&gt;Located 3 voting disk(s).&lt;br /&gt;&lt;br /&gt;(3) Backup the VoteDisk file&lt;br /&gt;&lt;br /&gt;Backup the existing votedisks as below as oracle:&lt;br /&gt;&lt;br /&gt;dd if=/u02/ocfs2/vote/VDFile_0 of=$ORACLE_BASE/bkp/vd/VDFile_0&lt;br /&gt;&lt;br /&gt;[root@node1-pub ~]# su - oracle&lt;br /&gt;[oracle@node1-pub ~]$ dd if=/u02/ocfs2/vote/VDFile_0 of=$ORACLE_BASE/bkp/vd/VDFile_0&lt;br /&gt;41024+0 records in&lt;br /&gt;41024+0 records out&lt;br /&gt;[oracle@node1-pub ~]$ &lt;br /&gt;&lt;br /&gt;(4) Add an Extra Votedisk into the Cluster: &lt;br /&gt;&lt;br /&gt;    If it is a OCFS, then touch the file as oracle. On raw devices, initialize the raw devices using "dd" command&lt;br /&gt;&lt;br /&gt;touch /u02/ocfs2/vote/VDFile_3 &lt;&lt;-- as oracle&lt;br /&gt;crsctl add css votedisk /u02/ocfs2/vote/VDFile_3 &lt;&lt;-- as oracle&lt;br /&gt;crsctl query css votedisks&lt;br /&gt;&lt;br /&gt;[root@node1-pub ~]# su - oracle&lt;br /&gt;[oracle@node1-pub ~]$ touch /u02/ocfs2/vote/VDFile_3&lt;br /&gt;[oracle@node1-pub ~]$ crsctl add css votedisk /u02/ocfs2/vote/VDFile_3&lt;br /&gt;Now formatting voting disk: /u02/ocfs2/vote/VDFile_3.&lt;br /&gt;Successful addition of voting disk /u02/ocfs2/vote/VDFile_3.&lt;br /&gt;&lt;br /&gt;(5) Confirm that the file has been added successfully:&lt;br /&gt;&lt;br /&gt;[root@node1-pub ~]# ls -l /u02/ocfs2/vote/VDFile_3&lt;br /&gt;-rw-r-----  1 oracle oinstall 21004288 Oct  6 16:31 /u02/ocfs2/vote/VDFile_3&lt;br /&gt;[root@node1-pub ~]# crsctl query css votedisks&lt;br /&gt;Unknown parameter: votedisks&lt;br /&gt;[root@node1-pub ~]# crsctl query css votedisk&lt;br /&gt; 0.     0    /u02/ocfs2/vote/VDFile_0&lt;br /&gt; 1.     0    /u02/ocfs2/vote/VDFile_1&lt;br /&gt; 2.     0    /u02/ocfs2/vote/VDFile_2&lt;br /&gt; 3.     0    /u02/ocfs2/vote/VDFile_3&lt;br /&gt;Located 4 voting disk(s).&lt;br /&gt;[root@node1-pub ~]# &lt;br /&gt;&lt;br /&gt;Removing Votedisk:&lt;br /&gt;&lt;br /&gt;Removing Votedisk from the cluster is very simple. Tthe below command removes the given votedisk from cluster configuration.&lt;br /&gt;&lt;br /&gt;crsctl delete css votedisk /u02/ocfs2/vote/VDFile_3&lt;br /&gt;&lt;br /&gt;[root@node1-pub ~]# crsctl delete css votedisk /u02/ocfs2/vote/VDFile_3&lt;br /&gt;Successful deletion of voting disk /u02/ocfs2/vote/VDFile_3.&lt;br /&gt;[root@node1-pub ~]# &lt;br /&gt;&lt;br /&gt;[root@node1-pub ~]# crsctl query css votedisk&lt;br /&gt; 0.     0    /u02/ocfs2/vote/VDFile_0&lt;br /&gt; 1.     0    /u02/ocfs2/vote/VDFile_1&lt;br /&gt; 2.     0    /u02/ocfs2/vote/VDFile_2&lt;br /&gt;Located 3 voting disk(s).&lt;br /&gt;[root@node1-pub ~]# &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Backing Up OCR&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Oracle performs physical backup of OCR devices every 4 hours under the default backup direcory $ORA_CRS_HOME/cdata/&lt;CLUSTER_NAME&gt; &lt;br /&gt;and then it rolls that forward to Daily, weekly and monthly backup. You can get the backup information by executing below command. &lt;br /&gt;&lt;br /&gt;ocrconfig -showbackup&lt;br /&gt;&lt;br /&gt;[root@node1-pub ~]# ocrconfig -showbackup &lt;br /&gt;&lt;br /&gt;node2-pub     2007/09/03 17:46:47     /u01/app/crs/cdata/test-crs/backup00.ocr&lt;br /&gt; &lt;br /&gt;node2-pub     2007/09/03 13:46:45     /u01/app/crs/cdata/test-crs/backup01.ocr&lt;br /&gt; &lt;br /&gt;node2-pub     2007/09/03 09:46:44     /u01/app/crs/cdata/test-crs/backup02.ocr&lt;br /&gt; &lt;br /&gt;node2-pub     2007/09/03 01:46:39     /u01/app/crs/cdata/test-crs/day.ocr&lt;br /&gt; &lt;br /&gt;node2-pub     2007/09/03 01:46:39     /u01/app/crs/cdata/test-crs/week.ocr&lt;br /&gt;[root@node1-pub ~]# &lt;br /&gt; &lt;br /&gt;Manually backing up the OCR&lt;br /&gt;&lt;br /&gt;ocrconfig -manualbackup &lt;&lt;--Physical Backup of OCR&lt;br /&gt;&lt;br /&gt;The above command backs up OCR under the default Backup directory. You can export the contents of the OCR using below command (Logical backup).&lt;br /&gt;&lt;br /&gt;ocrconfig -export /tmp/ocr_exp.dat -s online &lt;&lt;-- Logical Backup of OCR&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Restoring OCR&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;The below command is used to restore the OCR from the physical backup. Shutdown CRS on all nodes.&lt;br /&gt;&lt;br /&gt;ocrconfig -restore &lt;file name&gt;&lt;br /&gt;&lt;br /&gt;Locate the avialable Backups&lt;br /&gt;&lt;br /&gt;[root@node1-pub ~]# ocrconfig -showbackup&lt;br /&gt; &lt;br /&gt;node2-pub     2007/09/03 17:46:47     /u01/app/crs/cdata/test-crs/backup00.ocr&lt;br /&gt; &lt;br /&gt;node2-pub     2007/09/03 13:46:45     /u01/app/crs/cdata/test-crs/backup01.ocr&lt;br /&gt; &lt;br /&gt;node2-pub     2007/09/03 09:46:44     /u01/app/crs/cdata/test-crs/backup02.ocr&lt;br /&gt; &lt;br /&gt;node2-pub     2007/09/03 01:46:39     /u01/app/crs/cdata/test-crs/day.ocr&lt;br /&gt; &lt;br /&gt;node2-pub     2007/09/03 01:46:39     /u01/app/crs/cdata/test-crs/week.ocr&lt;br /&gt; &lt;br /&gt;node1-pub     2007/10/07 13:50:41     /u01/app/crs/cdata/test-crs/backup_20071007_135041.ocr&lt;br /&gt;&lt;br /&gt;Perform Restore from previous Backup&lt;br /&gt;&lt;br /&gt;[root@node2-pub ~]# ocrconfig -restore /u01/app/crs/cdata/test-crs/week.ocr&lt;br /&gt;&lt;br /&gt;The above command restore the OCR from week old backup.&lt;br /&gt;If you have logical backup of OCR (taken using export option), then You can import it with the below command.&lt;br /&gt;&lt;br /&gt;ocrconfig -import /tmp/ocr_exp.dat&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Restoring Votedisks&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Shutdown CRS on all the nodes in Cluster. &lt;br /&gt;Locate the current location of the Votedisks &lt;br /&gt;Restore each of the votedisks using "dd" command from the previous good backup of Votedisk taken using the same "dd" command. &lt;br /&gt;Start CRS on all the nodes. &lt;br /&gt;crsctl stop crs&lt;br /&gt;crsctl query css votedisk&lt;br /&gt;dd if=&lt;backup of Votedisk&gt; of=&lt;Votedisk file&gt; &lt;&lt;-- do this for all the votedisks&lt;br /&gt;crsctl start crs&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Changing Public and Virtual IP Address:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Current Config                                               Changed to&lt;br /&gt;&lt;br /&gt;Node 1:&lt;br /&gt;&lt;br /&gt;Public IP:       216.160.37.154                              192.168.10.11&lt;br /&gt;VIP:             216.160.37.153                              192.168.10.111&lt;br /&gt;subnet:          216.160.37.159                              192.168.10.0&lt;br /&gt;Netmask:         255.255.255.248                             255.255.255.0&lt;br /&gt;Interface used:  eth0                                        eth0&lt;br /&gt;Hostname:        node1-pub.hingu.net                         node1-pub.hingu.net&lt;br /&gt;&lt;br /&gt;Node 2:&lt;br /&gt;&lt;br /&gt;Public IP:       216.160.37.156                              192.168.10.22&lt;br /&gt;VIP:             216.160.37.157                              192.168.10.222&lt;br /&gt;subnet:          216.160.37.159                              192.168.10.0&lt;br /&gt;Netmask:         255.255.255.248                             255.255.255.0&lt;br /&gt;Interface used:  eth0                                        eth0&lt;br /&gt;Hostname:        node1-pub.hingu.net                         node2-pub.hingu.net&lt;br /&gt;&lt;br /&gt;=======================================================================&lt;br /&gt;(A)&lt;br /&gt;&lt;br /&gt;Take the Services, Database, ASM Instances and nodeapps down on both the Nodes in Cluster. Also disable the nodeapps, asm and database instances to prevent them from restarting in case if this node gets rebooted during this process.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;srvctl stop service -d test&lt;br /&gt;srvctl stop database -d test&lt;br /&gt;srvctl stop asm -n node1-pub&lt;br /&gt;srvctl stop asm -n node2-pub&lt;br /&gt;srvctl stop nodeapps -n node1-pub,node1-pub2&lt;br /&gt;srvctl disable instance -d test -i test1,test2&lt;br /&gt;srvctl disable asm -n node1-pub&lt;br /&gt;srvctl disable asm -n node2-pub&lt;br /&gt;srvctl disable nodeapps -n node1-pub&lt;br /&gt;srvctl disable nodeapps -n node2-pub&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;(B)&lt;br /&gt;Modify the /etc/hosts and/or DNS, ifcfg-eth0 (local node) with the new IP values&lt;br /&gt;on All the Nodes&lt;br /&gt;&lt;br /&gt;(C)&lt;br /&gt;Restart the specific network interface in order to use the new IP.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;ifconfig eth0 down&lt;br /&gt;ifconfig eth0 up&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Or, you can restart the network.&lt;br /&gt;CAUTION: on NAS, restarting entire network may cause the node to be rebooted.&lt;br /&gt;&lt;br /&gt;(D)&lt;br /&gt;Update the OCR with the New Public IP. &lt;br /&gt;In case of public IP, you have to delete the interface first and then add it back with the new IP address. &lt;br /&gt;&lt;br /&gt;As oracle user, Issue the below command:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;oifcfg delif -global eth0&lt;br /&gt;oifcfg setif -global eth0/192.168.10.0:public&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;(E)&lt;br /&gt;Update the OCR with the New Virtual IP.&lt;br /&gt;Virtual IP is part of the nodeapps and so you can modify the nodeapps to update the Virtual IP information.&lt;br /&gt;&lt;br /&gt;As privileged user (root), Issue the below commands:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;srvctl modify nodeapps -n node1-pub -A 192.168.10.111/255.255.255.0/eth0 &lt;-- for Node 1&lt;br /&gt;srvctl modify nodeapps -n node1-pub -A 192.168.10.222/255.255.255.0/eth0 &lt;-- for Node 2&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;(F)&lt;br /&gt;Enable the nodeapps, ASM, database Instances for all the Nodes.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;srvctl enable instance -d test -i test1,test2&lt;br /&gt;srvctl enable asm -n node1-pub&lt;br /&gt;srvctl enable asm -n node2-pub&lt;br /&gt;srvctl enable nodeapps -n node1-pub&lt;br /&gt;srvctl enable nodeapps -n node2-pub&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;(G)&lt;br /&gt;Update the listener.ora file on each nodes with the correct IP addresses in case if it uses the IP address instead of the hostname.&lt;br /&gt;&lt;br /&gt;(H)&lt;br /&gt;Restart the Nodeapps, ASM and Database instance&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;srvctl start nodeapps -n node1-pub&lt;br /&gt;srvctl start nodeapps -n node2-pub&lt;br /&gt;srvctl start asm -n node1-pub&lt;br /&gt;srvctl start asm -n node2-pub&lt;br /&gt;srvctl start database -d test&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;=======================================================================&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6897144177599049811-6650993486462085274?l=ashakkhan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ashakkhan.blogspot.com/feeds/6650993486462085274/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6897144177599049811&amp;postID=6650993486462085274' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/6650993486462085274'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/6650993486462085274'/><link rel='alternate' type='text/html' href='http://ashakkhan.blogspot.com/2009/03/11g-cluster-administration-and.html' title='11g Cluster Administration and Maintenance'/><author><name>Ashak Ali Khan</name><uri>http://www.blogger.com/profile/02783946057420260374</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_1rApOiGy_ns/Sa0sDHWokDI/AAAAAAAAAXQ/fQut2UPtxgY/S220/Ashak_Khan.bmp'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6897144177599049811.post-2180120899889364722</id><published>2009-03-16T01:03:00.001-07:00</published><updated>2009-03-16T01:04:27.215-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Real Application Clusters'/><title type='text'>Step-By-Step Installation of Oracle 9i RAC on IBM AIX</title><content type='html'>3.0 Preparing for the installation of RAC&lt;br /&gt;&lt;br /&gt;The Real Application Clusters installation process includes four major tasks.&lt;br /&gt;&lt;br /&gt;Configure the shared disks and UNIX preinstallation tasks. &lt;br /&gt;Run the Oracle Universal Installer to install the Oracle9i Enterprise Edition and the Oracle9i Real Application Clusters software. &lt;br /&gt;Create and configure your database. &lt;br /&gt;&lt;br /&gt;3.1 Configure the shared disks and UNIX preinstallation tasks&lt;br /&gt;&lt;br /&gt;3.1.1 Configure the shared disks&lt;br /&gt;&lt;br /&gt;Real Application Clusters requires that all each instance be able to access a set of unformatted devices on a shared disk subsystem if GPFS is not being used. These shared disks are also referred to as raw devices. If your platform supports an Oracle-certified cluster file system, however, you can store the files that Real Application Clusters requires directly on the cluster file system.&lt;br /&gt;&lt;br /&gt;Note: If you are using Parallel Filesystem (GPFS), however, you can store the files that Real Application Clusters requires&lt;br /&gt;directly on the cluster file system ! &lt;br /&gt;&lt;br /&gt;The Oracle instances in Real Application Clusters write data onto the raw devices to update the control file, server parameter file, each datafile, and each redo log file. All instances in the cluster share these files.&lt;br /&gt;&lt;br /&gt;The Oracle instances in the RAC configuration write information to raw devices defined for:&lt;br /&gt;&lt;br /&gt;The control file &lt;br /&gt;The spfile.ora &lt;br /&gt;Each datafile &lt;br /&gt;Each ONLINE redo log file &lt;br /&gt;Server Manager (SRVM) configuration information &lt;br /&gt;It is therefore necessary to define raw devices for each of these categories of file. The Oracle Database Configuration Assistant (DBCA) will create a seed database expecting the following configuration:&lt;br /&gt;&lt;br /&gt;Raw Volume File Size Sample File Name &lt;br /&gt;SYSTEM tablespace 400 Mb db_name_raw_system_400m &lt;br /&gt;USERS tablespace 120 Mb db_name_raw_users_120m &lt;br /&gt;TEMP tablespace 100 Mb db_name_raw_temp_100m &lt;br /&gt;UNDOTBS tablespace per instance 312 Mb db_name_raw_undotbsx_312m &lt;br /&gt;CWMLITE tablespace 100 Mb db_name_raw_cwmlite_100m &lt;br /&gt;EXAMPLE 160 Mb db_name_raw_example_160m &lt;br /&gt;OEMREPO 20 Mb db_name_raw_oemrepo_20m &lt;br /&gt;INDX tablespace 70 Mb db_name_raw_indx_70m &lt;br /&gt;TOOLS tablespace 12 Mb db_name_raw_tools_12m &lt;br /&gt;DRYSYS tablespace 90 Mb db_name_raw_drsys_90m &lt;br /&gt;First control file 110 Mb db_name_raw_controlfile1_110m &lt;br /&gt;Second control file 110 Mb db_name_raw_controlfile2_110m &lt;br /&gt;Two ONLINE redo log files per instance 120 Mb x 2 db_name_thread_lognumber_120m &lt;br /&gt;spfile.ora 5 Mb db_name_raw_spfile_5m &lt;br /&gt;srvmconfig 100 Mb db_name_raw_srvmconf_100m &lt;br /&gt;&lt;br /&gt;Note: Automatic Undo Management requires an undo tablespace per instance therefore you would require a minimum of 2 tablespaces as described above. By following the naming convention described in the table above, raw partitions are identified with the database and the raw volume type (the data contained in the raw volume). Raw volume size is also identified using this method.&lt;br /&gt;&lt;br /&gt;Note: In the sample names listed in the table, the string db_name should be replaced with the actual database name, thread is the thread number of the instance, and lognumber is the log number within a thread.&lt;br /&gt;&lt;br /&gt;On the node from which you run the Oracle Universal Installer, create an ASCII file identifying the raw volume objects as shown above. The&lt;br /&gt;DBCA requires that these objects exist during installation and database creation. When creating the ASCII file content for the objects, name them&lt;br /&gt;using the format:&lt;br /&gt;&lt;br /&gt;database_object=raw_device_file_path&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;When you create the ASCII file, separate the database objects from the paths with equals (=) signs as shown in the example below:&lt;br /&gt;&lt;br /&gt;system1=/dev/rdb_name_system_400m&lt;br /&gt;spfile1=/dev/rdb_name_spfile_5m&lt;br /&gt;users1=/dev/rdb_name_users_120m&lt;br /&gt;temp1=/dev/rdb_name_emp_100m&lt;br /&gt;undotbs1=/dev/rdb_name_undotbs1_312m&lt;br /&gt;undotbs2=/dev/rdb_name_undotbs2_312m&lt;br /&gt;example1=/dev/rdb_name_example_160m &lt;br /&gt;cwmlite1=/dev/rdb_name_cwmlite_100m &lt;br /&gt;indx1=/dev/rdb_name_indx_70m&lt;br /&gt;tools1=/dev/rdb_name_tools_12m&lt;br /&gt;drsys1=/dev/rdb_name_drsys_90m&lt;br /&gt;control1=/dev/rdb_name_cntrl1_110m&lt;br /&gt;control2=/dev/rdb_name_cntrl2_110m&lt;br /&gt;redo1_1=/dev/rdb_name_log11_120m&lt;br /&gt;redo1_2=/dev/rdb_name_log12_120m&lt;br /&gt;redo2_1=/dev/rdb_name_log21_120m&lt;br /&gt;redo2_2=/dev/rdb_name_log22_120m&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;You must specify that Oracle should use this file to determine the raw device volume names by setting the following environment variable where filename&lt;br /&gt;is the name of the ASCII file that contains the entries shown in the example above:&lt;br /&gt;&lt;br /&gt;csh:&lt;br /&gt;&lt;br /&gt;setenv DBCA_RAW_CONFIG filename &lt;br /&gt;&lt;br /&gt;ksh, bash or sh:&lt;br /&gt;&lt;br /&gt;DBCA_RAW_CONFIG=filename; export DBCA_RAW_CONFIG&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;3.1.2 UNIX Preinstallation Steps&lt;br /&gt;&lt;br /&gt;Note: In addition, you can run the installPrep.sh script provided in Note 189256.1 which catches most unix environment problems. &lt;br /&gt;&lt;br /&gt;After configuring the raw volumes, perform the following steps prior to installation as root user:&lt;br /&gt;&lt;br /&gt;Add the Oracle USER&lt;br /&gt;&lt;br /&gt;Make sure you have an osdba group defined in the /etc/group file on all nodes of your cluster. To designate an osdba group name and group number and osoper group during installation, these group names must be identical on all nodes of your UNIX cluster that will be part of the Real Application Clusters database. The default UNIX group name for the osdba and osoper groups is dba. There also needs be an oinstall group which the software owner should have as its primary group. A typical entry would therefore look like the following: &lt;br /&gt;dba::101:oracle&lt;br /&gt;oinstall::102:root,oracle&lt;br /&gt;&lt;br /&gt;The following is an example of the command used to create the "dba" group with a group ID of "101":&lt;br /&gt;&lt;br /&gt;      # mkgroup -'A' id='101' users='oracle' dba&lt;br /&gt;&lt;br /&gt;Create an oracle account on each node so that the account: &lt;br /&gt;Is a member of the osdba group (dba in this example) &lt;br /&gt;Has oinstall as its primary group &lt;br /&gt;Is used only to install and update Oracle software &lt;br /&gt;Has write permissions on remote directories &lt;br /&gt;The following is an example of the smit command used to create the "oracle" user:&lt;br /&gt;&lt;br /&gt;   Smit -&gt; Security &amp; Users -&gt; Users -&gt; Add a User&lt;br /&gt;&lt;br /&gt;Fastpath:&lt;br /&gt;&lt;br /&gt;# smit mkuser&lt;br /&gt;&lt;br /&gt;Type or select values in entry fields.Press Enter AFTER making all desired changes.[TOP]            &lt;br /&gt;                                      [Entry Fields]* User NAME                                          [oracle]  User&lt;br /&gt;ID                                            [101]                     #  ADMINISTRATIVE USER?                                false                   +  Primary GROUP                                      [oinstall]               +&lt;br /&gt;  Group SET                                          []                       +&lt;br /&gt;  ADMINISTRATIVE GROUPS                              []                       +&lt;br /&gt;  ROLES                                              []                       +&lt;br /&gt;  Another user can SU TO USER?                        true                    +&lt;br /&gt;  SU GROUPS                                          [ALL]                    +&lt;br /&gt;  HOME directory                                     [/home/oracle]  Initial PROGRAM                                    [/bin/ksh]&lt;br /&gt;  User INFORMATION                                   []&lt;br /&gt;  EXPIRATION date (MMDDhhmmyy)                       [0]&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Note that the primary group is not "dba". The "use" of "oinstall" is optional but recommended. For more information on the use of the "oinstall" group see the : Oracle9i Installation Guide Release 2 (9.X.X.X.0) for UNIX Systems: AIX-Based Systems, Compaq Tru64 UNIX, HP 9000 Series HP-UX, Linux Intel and Sun SPARC Solaris documentation.&lt;br /&gt;&lt;br /&gt;Create a mount point directory on each node to serve as the top of your Oracle software directory structure so that: &lt;br /&gt;The name of the mount point on each node is identical to that on the initial node &lt;br /&gt;The oracle account has read, write, and execute privileges &lt;br /&gt;On the node from which you will run the Oracle Universal Installer, set up user equivalence by adding entries for all nodes in the cluster, including the local node, to the .rhosts file of the oracle account, or the /etc/hosts.equiv file. &lt;br /&gt;As oracle account user, check for user equivalence for the oracle account by performing a remote login (rlogin) to each node in the cluster. &lt;br /&gt;As oracle account user, if you are prompted for a password, you have not given the oracle account the same attributes on all nodes. You must&lt;br /&gt;correct this because the Oracle Universal Installer cannot use the rcp command to copy Oracle products to the remote node's directories without&lt;br /&gt;user equivalence. &lt;br /&gt;Establish system environment variables&lt;br /&gt;&lt;br /&gt;Set a local bin directory in the user's PATH, such as /usr/local/bin, or /opt/bin. It is necessary to have execute permissions on this directory. &lt;br /&gt;Set the DISPLAY variable to point to the system's (from where you will run OUI) IP address, or name, X server, and screen. &lt;br /&gt;Set a temporary directory path for TMPDIR with at least 20 Mb of free space to which the OUI has write permission. &lt;br /&gt;Establish Oracle environment variables: Set the following Oracle environment variables:&lt;br /&gt;&lt;br /&gt;Environment Variable Suggested value &lt;br /&gt;ORACLE_BASE eg /u01/app/oracle &lt;br /&gt;ORACLE_HOME eg /u01/app/oracle/product/901 &lt;br /&gt;ORACLE_TERM xterm &lt;br /&gt;NLS_LANG AMERICAN-AMERICA.UTF8 for example &lt;br /&gt;ORA_NLS33 $ORACLE_HOME/ocommon/nls/admin/data &lt;br /&gt;PATH Should contain $ORACLE_HOME/bin &lt;br /&gt;CLASSPATH $ORACLE_HOME/JRE:$ORACLE_HOME/jlib \&lt;br /&gt;$ORACLE_HOME/rdbms/jlib: \&lt;br /&gt;$ORACLE_HOME/network/jlib &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Create the directory /var/opt/oracle and set ownership to the oracle user. &lt;br /&gt;Note: There is a verification script InstallPrep.sh available which may be downloaded and run prior to the installation of Oracle Real Application Clusters. This script verifies that the system is configured correctly according to the Installation Guide. The output of the script will report any further tasks that need to be performed before successfully installing Oracle 9.x DataServer (RDBMS). This script performs the following verifications:-&lt;br /&gt;&lt;br /&gt;ORACLE_HOME Directory Verification &lt;br /&gt;UNIX User/umask Verification &lt;br /&gt;UNIX Group Verification &lt;br /&gt;Memory/Swap Verification &lt;br /&gt;TMP Space Verification &lt;br /&gt;Real Application Cluster Option Verification &lt;br /&gt;Unix Kernel Verification &lt;br /&gt;&lt;br /&gt;./InstallPrep.sh &lt;br /&gt;You are currently logged on as oracle &lt;br /&gt;Is oracle the unix user that will be installing Oracle Software? y or n &lt;br /&gt;y&lt;br /&gt;Enter the unix group that will be used during the installation&lt;br /&gt;Default: dba&lt;br /&gt;dba &lt;br /&gt;&lt;br /&gt;Enter Location where you will be installing Oracle&lt;br /&gt;Default: /u01/app/oracle/product/oracle9i&lt;br /&gt;/u01/app/oracle/product/9.2.0.1&lt;br /&gt;Your Operating System is AIX&lt;br /&gt;Gathering information... Please wait &lt;br /&gt;&lt;br /&gt;Checking unix user ...&lt;br /&gt;user test passed &lt;br /&gt;&lt;br /&gt;Checking unix umask ... &lt;br /&gt;umask test passed &lt;br /&gt;&lt;br /&gt;Checking unix group ... &lt;br /&gt;Unix Group test passed&lt;br /&gt;&lt;br /&gt;Checking Memory &amp; Swap... &lt;br /&gt;Memory test passed&lt;br /&gt;&lt;br /&gt;/tmp test passed &lt;br /&gt;&lt;br /&gt;Checking for a cluster...&lt;br /&gt;AIX Cluster test&lt;br /&gt;Cluster has been detected&lt;br /&gt;You have 2 cluster members configured and 2 are curently up&lt;br /&gt;No cluster warnings detected&lt;br /&gt;Processing kernel parameters... Please wait&lt;br /&gt;Running Kernel Parameter Report...&lt;br /&gt;Check the report for Kernel parameter verification&lt;br /&gt;&lt;br /&gt;Completed.&lt;br /&gt;&lt;br /&gt;/tmp/Oracle_InstallPrep_Report has been generated&lt;br /&gt;&lt;br /&gt;Please review this report and resolve all issues before attempting to install the Oracle Database Software &lt;br /&gt;&lt;br /&gt;3.2 Using the Oracle Universal Installer for Real Application Clusters &lt;br /&gt;Follow these procedures to use the Oracle Universal Installer to install the Oracle Enterprise Edition and the Real Application Clusters software. Oracle9i is supplied on multiple CD-ROM disks. During the installation process it is necessary to switch between the CD-ROMS. OUI will manage the switching between CDs. For the latest RAC/IBM certification matrix see here.&lt;br /&gt;&lt;br /&gt;To install the Oracle Software, perform the following:. &lt;br /&gt;Login as the root user and mount the first CD-ROM if installing from CD-ROM &lt;br /&gt;# mount -rv cdrfs /dev/cd0 /cdrom&lt;br /&gt;&lt;br /&gt;Execute the "rootpre.sh" shell script on the CD-ROM mount point or the location of Disk1 if installing from a disk stage. See the Oracle9i Installation Guide Release 2 (9.X.X.X.0) for UNIX Systems: AIX-Based Systems, Compaq Tru64 UNIX, HP 9000 Series HP-UX, Linux Intel and Sun SPARC Solaris documentation for more information on creating disk stages. &lt;br /&gt;&lt;br /&gt;# /&lt;Location_Of_Install_Media&gt;/rootpre.sh      &lt;br /&gt;Login as the oracle user and execute the "runInstaller". See &lt;Note:153960.1&gt; if you experience problems starting the runInstaller. &lt;br /&gt;&lt;br /&gt;$ /&lt;Location_Of_Install_Media&gt;/runInstaller&lt;br /&gt;&lt;br /&gt;At the OUI Welcome screen, click Next. &lt;br /&gt;A prompt will appear for the Inventory Location (if this is the first time that OUI has been run on this system). This is the base directory into which OUI will install files. The Oracle Inventory definition can be found in the file /etc/oraInst.loc. Click OK. &lt;br /&gt;Verify the UNIX group name of the user who controls the installation of the Oracle9i software. If an instruction to run /tmp/orainstRoot.sh appears, the pre-installation steps were not completed successfully. Typically, the /var/opt/oracle directory does not exist or is not writeable by oracle. Run /tmp/orainstRoot.sh to correct this, forcing Oracle Inventory files, and others, to be written to the ORACLE_HOME directory. Once again this screen only appears the first time Oracle9i products are installed on the system. Click Next. &lt;br /&gt;The File Location window will appear. Do NOT change the Source field. The Destination field defaults to the ORACLE_HOME environment variable. Click Next. &lt;br /&gt;Select the Products to install. In this example, select the Oracle9i Server then click Next. &lt;br /&gt;Select the installation type. Choose the Enterprise Edition option. The selection on this screen refers to the installation operation, not the database configuration. The next screen allows for a customized database configuration to be chosen. Click Next. &lt;br /&gt;Select the configuration type. In this example you choose the Advanced Configuration as this option provides a database that you can customize, and configures the selected server products. Select Customized and click Next. &lt;br /&gt;Select the other nodes on to which the Oracle RDBMS software will be installed. It is not necessary to select the node on which the OUI is currently running. Click Next. &lt;br /&gt;&lt;br /&gt;NOTE: If choosing to create a shared Oracle Home on GPFS, you will only choose one node within the Cluster Node Selection screen of OUI for the installation of the binaries. &lt;br /&gt;Identify the raw partition in to which the Oracle9i Real Application Clusters (RAC) configuration information will be written. It is recommended that this raw partition is a minimum of 100MB in size. &lt;br /&gt;An option to Upgrade or Migrate an existing database is presented. Do NOT select the radio button. The Oracle Migration utility is not able to upgrade a RAC database, and will error if selected to do so. &lt;br /&gt;The Summary screen will be presented. Confirm that the RAC database software will be installed and then click Install. The OUI will install the Oracle9i software on to the local node, and then copy this information to the other nodes selected. &lt;br /&gt;Once Install is selected, the OUI will install the Oracle RAC software on to the local node, and then copy software to the other nodes selected earlier. This will take some time. During the installation process, the OUI does not display messages indicating that components are being installed on other nodes - I/O activity may be the only indication that the process is continuing. &lt;br /&gt;3.3 Create a RAC Database using the Oracle Database Configuration Assistant&lt;br /&gt;&lt;br /&gt;The Oracle Database Configuration Assistant (DBCA) will create a database for you (for an example of manual database creation see Database Creation in Oracle9i RAC). The DBCA creates your database using the optimal flexible architecture (OFA). This means the DBCA creates your database files, including the default server parameter file, using standard file naming and file placement practices. The primary phases of DBCA processing are:-&lt;br /&gt;&lt;br /&gt;Verify that you correctly configured the shared disks for each tablespace (for non-cluster file system platforms) &lt;br /&gt;Create the database &lt;br /&gt;Configure the Oracle network services &lt;br /&gt;Start the database instances and listeners &lt;br /&gt;Oracle Corporation recommends that you use the DBCA to create your database. This is because the DBCA preconfigured databases optimize your environment to take advantage of Oracle9i features such as the server parameter file and automatic undo management. The DBCA also enables you to&lt;br /&gt;define arbitrary tablespaces as part of the database creation process. So even if you have datafile requirements that differ from those offered in one of the DBCA templates, use the DBCA. You can also execute user-specified scripts as part of the database creation process.&lt;br /&gt;&lt;br /&gt;The DBCA and the Oracle Net Configuration Assistant also accurately configure your Real Application Clusters environment for various Oracle high availability features and cluster administration tools.&lt;br /&gt;&lt;br /&gt;DBCA will launch as part of the installation process, but can be run manually by executing the command dbca from the $ORACLE_HOME/bin directory on UNIX platforms. The RAC Welcome Page displays. Choose Oracle Cluster Database option and select Next. &lt;br /&gt;The Operations page is displayed. Choose the option Create a Database and click Next. &lt;br /&gt;The Node Selection page appears. Select the nodes that you want to configure as part of the RAC database and click Next. If nodes are missing from the Node Selection then perform clusterware diagnostics by executing the $ORACLE_HOME/bin/lsnodes -v command and analyzing its output. Refer to your vendor's clusterware documentation if the output indicates that your clusterware is not properly installed. Resolve the problem and then restart the DBCA. &lt;br /&gt;The Database Templates page is displayed. The templates other than New Database include datafiles. Choose New Database and then click Next. &lt;br /&gt;The Show Details button provides information on the database template selected. &lt;br /&gt;DBCA now displays the Database Identification page. Enter the Global Database Name and Oracle System Identifier (SID). The Global Database Name is typically of the form name.domain, for example mydb.us.oracle.com while the SID is used to uniquely identify an instance (DBCA should insert a suggested SID, equivalent to name1 where name was entered in the Database Name field). In the RAC case the SID specified will be used as a prefix for the instance number. For example, MYDB, would become MYDB1, MYDB2 for instance 1 and 2 respectively. &lt;br /&gt;The Database Options page is displayed. Select the options you wish to configure and then choose Next. Note: If you did not choose New Database from the Database Template page, you will not see this screen. &lt;br /&gt;The Additional database Configurations button displays additional database features. Make sure both are checked and click OK. &lt;br /&gt;Select the connection options desired from the Database Connection Options page. Note: If you did not choose New Database from the Database Template page, you will not see this screen. Click Next. &lt;br /&gt;DBCA now displays the Initialization Parameters page. This page comprises a number of Tab fields. Modify the Memory settings if desired and then select the File Locations tab to update information on the Initialization Parameters filename and location. Then click Next. &lt;br /&gt;The option Create persistent initialization parameter file is selected by default. If you have a cluster file system, then enter a file system name, otherwise a raw device name for the location of the server parameter file (spfile) must be entered. Then click Next. &lt;br /&gt;The button File Location Variables… displays variable information. Click OK. &lt;br /&gt;The button All Initialization Parameters… displays the Initialization Parameters dialog box. This box presents values for all initialization parameters and indicates whether they are to be included in the spfile to be created through the check box, included (Y/N). Instance specific parameters have an instance value in the instance column. Complete entries in the All Initialization Parameters page and select Close. Note: There are a few exceptions to what can be altered via this screen. Ensure all entries in the Initialization Parameters page are complete and select Next. &lt;br /&gt;DBCA now displays the Database Storage Window. This page allows you to enter file names for each tablespace in your database. &lt;br /&gt;The file names are displayed in the Datafiles folder, but are entered by selecting the Tablespaces icon, and then selecting the tablespace object from the expanded tree. Any names displayed here can be changed. A configuration file can be used, see section 3.2.1, (pointed to by the environment variable DBCA_RAW_CONFIG). Complete the database storage information and click Next. &lt;br /&gt;The Database Creation Options page is displayed. Ensure that the option Create Database is checked and click Finish. &lt;br /&gt;The DBCA Summary window is displayed. Review this information and then click OK. &lt;br /&gt;Once the Summary screen is closed using the OK option, DBCA begins to create the database according to the values specified. &lt;br /&gt;A new database now exists. It can be accessed via Oracle SQL*PLUS or other applications designed to work with an Oracle RAC database.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;5.0 References&lt;br /&gt;&lt;br /&gt;Note: 182037.1 - AIX: Quick Start Guide - 9.0.1 RDBMS Installation &lt;br /&gt;Note: 201019.1 - AIX: Quick Start Guide - 9.2.0 RDBMS Installation &lt;br /&gt;Note:137288.1 - Database Creation in Oracle9i RAC &lt;br /&gt;Note:183408.1 - Raw Devices and Cluster Filesystems With Real Application Clusters &lt;br /&gt;RAC/IBM AIX certification matrix &lt;br /&gt;Oracle9i Real Application Clusters Installation and Configuration Release 1 (9.0.1) &lt;br /&gt;Oracle9i Real Application Clusters Concepts &lt;br /&gt;Oracle9i Real Application Clusters Administration &lt;br /&gt;Oracle9i Real Application Clusters Deployment and Performance &lt;br /&gt;Oracle9i Installation Guide for Compaq Tru64, Hewlett-Packard HPUX, IBM-AIX, Linux, and Sun Solaris-based systems. &lt;br /&gt;Oracle9i Release Notes&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6897144177599049811-2180120899889364722?l=ashakkhan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ashakkhan.blogspot.com/feeds/2180120899889364722/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6897144177599049811&amp;postID=2180120899889364722' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/2180120899889364722'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/2180120899889364722'/><link rel='alternate' type='text/html' href='http://ashakkhan.blogspot.com/2009/03/step-by-step-installation-of-oracle-9i.html' title='Step-By-Step Installation of Oracle 9i RAC on IBM AIX'/><author><name>Ashak Ali Khan</name><uri>http://www.blogger.com/profile/02783946057420260374</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_1rApOiGy_ns/Sa0sDHWokDI/AAAAAAAAAXQ/fQut2UPtxgY/S220/Ashak_Khan.bmp'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6897144177599049811.post-3587540394712441485</id><published>2009-03-03T05:37:00.000-08:00</published><updated>2009-03-03T05:39:11.110-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='11g..)'/><category scheme='http://www.blogger.com/atom/ns#' term='10g'/><category scheme='http://www.blogger.com/atom/ns#' term='Oracle upgrades(9i'/><title type='text'>Complete Checklist for Manual Upgrades to 11gR1 - ML Note:429825.1</title><content type='html'>11gR1 manual upgrade checklist&lt;br /&gt;Metalink Note : Note:429825.1. (latest revision on 05-MAR-2008)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6897144177599049811-3587540394712441485?l=ashakkhan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ashakkhan.blogspot.com/feeds/3587540394712441485/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6897144177599049811&amp;postID=3587540394712441485' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/3587540394712441485'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/3587540394712441485'/><link rel='alternate' type='text/html' href='http://ashakkhan.blogspot.com/2009/03/complete-checklist-for-manual-upgrades.html' title='Complete Checklist for Manual Upgrades to 11gR1 - ML Note:429825.1'/><author><name>Ashak Ali Khan</name><uri>http://www.blogger.com/profile/02783946057420260374</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_1rApOiGy_ns/Sa0sDHWokDI/AAAAAAAAAXQ/fQut2UPtxgY/S220/Ashak_Khan.bmp'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6897144177599049811.post-8883987325233647651</id><published>2008-11-16T01:41:00.000-08:00</published><updated>2008-11-16T01:42:02.898-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Solaris Kernel Configuration - Oracle'/><title type='text'>Solaris Kernel Configuration - Oracle</title><content type='html'>Solaris Kernel Configuration - Oracle  &lt;br /&gt;&lt;br /&gt;Sample Kernel Configuration:&lt;br /&gt;Parameter Description Formula Value &lt;br /&gt;SHMMAX Maximum Shared Memory Segment Size - 4,294,967,295  &lt;br /&gt;SHMMIN Minimum Shared Memory Segment Size - 1 &lt;br /&gt;SHMMNI Maximum Number of Shared Memory Identifers - 100 &lt;br /&gt;SHMSEG Maximum Number of Shared Memory Segments a user process can attach - 10 &lt;br /&gt;SEMMNI Maximum Number of Semaphore Identifiers - 100 &lt;br /&gt;SEMMSL Maximum Number of Semaphores in a Set 10 + max(P[db1],P[db2],…,P[dbn]) = 10 + max(350,35) = 10+ 350 =  360 &lt;br /&gt;SEMMNS Maximum Number of Semaphores in a System (P[db1] + P[db2] + … + P[dbn]) + max(P[db1],P[db2],…,P[dbn]) + 10 * count(P[db1],P[db2],…,P[dbn])&lt;br /&gt;= (350+35) + max(350,35) + 10(2) = 385 + 350 + 20 =  755 &lt;br /&gt;SEMOPM Maximum Number of Operations per SEMOP call - 100 &lt;br /&gt;SEMVMX Semaphore Maximum Value - 32,767 &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Sample Databases:&lt;br /&gt;Processes Value &lt;br /&gt;P[db1] 350 &lt;br /&gt;P[db2] 35 &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Sample of /etc/system Parameter:&lt;br /&gt;   ************************************************************************************&lt;br /&gt;   *  B E G I N  O R A C L E  C O N F I G U R A T I O N&lt;br /&gt;   ************************************************************************************&lt;br /&gt;   &lt;br /&gt;   set shmsys: shminfo_shmmax = 4294967295&lt;br /&gt;   &lt;br /&gt;   *&lt;br /&gt;   * Shared Memory Parameters - Static&lt;br /&gt;   *&lt;br /&gt;   set shmsys: shminfo_shmmin = 1&lt;br /&gt;   set shmsys: shminfo_shmmni = 100&lt;br /&gt;   set shmsys: shminfo_shmseg = 10&lt;br /&gt;   *&lt;br /&gt;   * Semaphore parameters - semmsl &amp; semmns are dynamic:&lt;br /&gt;   *&lt;br /&gt;   * semmsl := 10 + max(P[db1],P[db2],...,P[dbn])&lt;br /&gt;   * semmns := (P[db1]+P[db2]+...+P[dbn]) + max(P[db1],P[db2],...,P[dbn]) + 10 * count (P[db1],P[db2],...,P[dbn])&lt;br /&gt;   *&lt;br /&gt;   * where P[dbX] is the processes parameter set for an Oracle database X&lt;br /&gt;   *&lt;br /&gt;   set semsys: seminfo_semmni = 100&lt;br /&gt;   set semsys: seminfo_semmsl = 360&lt;br /&gt;   set semsys: seminfo_semmns = 755&lt;br /&gt;   set semsys: seminfo_semopm = 100&lt;br /&gt;   set semsys: seminfo_semvmx = 32767&lt;br /&gt;   &lt;br /&gt;   *&lt;br /&gt;   * Increase file descriptor limits (large databases)&lt;br /&gt;   * &lt;br /&gt;   set rlim_fd_max=8192&lt;br /&gt;   set rlim_fd_cur=1024&lt;br /&gt;&lt;br /&gt;   ************************************************************************************&lt;br /&gt;   *   E N D  O R A C L E  C O N F I G U R A T I O N&lt;br /&gt;   ************************************************************************************&lt;br /&gt;&lt;br /&gt;      &lt;br /&gt;  &lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;OCPdba.Net&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6897144177599049811-8883987325233647651?l=ashakkhan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ashakkhan.blogspot.com/feeds/8883987325233647651/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6897144177599049811&amp;postID=8883987325233647651' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/8883987325233647651'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/8883987325233647651'/><link rel='alternate' type='text/html' href='http://ashakkhan.blogspot.com/2008/11/solaris-kernel-configuration-oracle.html' title='Solaris Kernel Configuration - Oracle'/><author><name>Ashak Ali Khan</name><uri>http://www.blogger.com/profile/02783946057420260374</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_1rApOiGy_ns/Sa0sDHWokDI/AAAAAAAAAXQ/fQut2UPtxgY/S220/Ashak_Khan.bmp'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6897144177599049811.post-6938016436512121859</id><published>2008-11-05T05:52:00.000-08:00</published><updated>2009-03-03T05:32:41.123-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Management'/><title type='text'>Think Outside the Box</title><content type='html'>You are driving along in your car on a wild, stormy night, it’s raining heavily, when suddenly you pass by a bus stop, and you see three people waiting for a bus:&lt;br /&gt;&lt;br /&gt;       An old lady who looks as if she is about to die. &lt;br /&gt;&lt;br /&gt;       An old friend who once saved your life. &lt;br /&gt;&lt;br /&gt;       The perfect partner you have been dreaming about. &lt;br /&gt;&lt;br /&gt;Which one would you choose to offer a ride to, knowing very well that there could only be one passenger in your car?&lt;br /&gt;&lt;br /&gt;This is a dilemma that was once used as part of a job application.&lt;br /&gt;&lt;br /&gt;       You could pick up the old lady, because she is going to die, and thus you&lt;br /&gt;should save her first; &lt;br /&gt;&lt;br /&gt;       * or you could take the old friend because he once saved your life, and this&lt;br /&gt;would be the perfect chance to ! pay him back. &lt;br /&gt;&lt;br /&gt;       However, you may never be able to find your perfect mate again. &lt;br /&gt;&lt;br /&gt;The candidate who was hired had no trouble coming up with his answer. Guess what was his answer?&lt;br /&gt;&lt;br /&gt;He simply answered:&lt;br /&gt;&lt;br /&gt;“I would give the car keys to my Old friend and let him take the lady to the hospital. I would stay behind and wait for the bus with the partner of my dreams.”&lt;br /&gt;&lt;br /&gt;Sometimes, we gain more if we are able to give up our stubborn thought limitations. Never forget to “Think Outside the Box.”&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6897144177599049811-6938016436512121859?l=ashakkhan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ashakkhan.blogspot.com/feeds/6938016436512121859/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6897144177599049811&amp;postID=6938016436512121859' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/6938016436512121859'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/6938016436512121859'/><link rel='alternate' type='text/html' href='http://ashakkhan.blogspot.com/2008/11/think-outside-box.html' title='Think Outside the Box'/><author><name>Ashak Ali Khan</name><uri>http://www.blogger.com/profile/02783946057420260374</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_1rApOiGy_ns/Sa0sDHWokDI/AAAAAAAAAXQ/fQut2UPtxgY/S220/Ashak_Khan.bmp'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6897144177599049811.post-737168470430971237</id><published>2008-10-25T02:19:00.001-07:00</published><updated>2009-03-03T05:33:53.699-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Oracle DB Administration'/><title type='text'>Rename datafile (file system to raw device AIX) ,database archivelog mode</title><content type='html'>1) Take the data file offline&lt;br /&gt;ALTER DATABASE DATAFILE '/oracle/pindb/arch/data/rpindb1_pinx112.dbf' OFFLINE;&lt;br /&gt;2) Copy the data file to new raw device&lt;br /&gt;dd if=/oracle/pindb/arch/data/rpindb1_pinx112.dbf  of=/dev/rpindb1_pinx113 bs=4096 seek=1&lt;br /&gt;3) rename file&lt;br /&gt;ALTER DATABASE RENAME FILE '/oracle/pindb/arch/data/rpindb1_pinx112.dbf' TO '/dev/rpindb1_pinx113';&lt;br /&gt;4) RECOVER DATAFILE '/dev/rpindb1_pinx113';&lt;br /&gt;5) ALTER DATABASE DATAFILE '/dev/rpindb1_pinx113' online;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6897144177599049811-737168470430971237?l=ashakkhan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ashakkhan.blogspot.com/feeds/737168470430971237/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6897144177599049811&amp;postID=737168470430971237' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/737168470430971237'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/737168470430971237'/><link rel='alternate' type='text/html' href='http://ashakkhan.blogspot.com/2008/10/rename-datafile-file-system-to-raw.html' title='Rename datafile (file system to raw device AIX) ,database archivelog mode'/><author><name>Ashak Ali Khan</name><uri>http://www.blogger.com/profile/02783946057420260374</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_1rApOiGy_ns/Sa0sDHWokDI/AAAAAAAAAXQ/fQut2UPtxgY/S220/Ashak_Khan.bmp'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6897144177599049811.post-287961288565253121</id><published>2008-10-21T23:59:00.000-07:00</published><updated>2009-03-03T05:30:34.338-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Management'/><title type='text'>13 Behaviors that are common to high trust leaders and people throughout the world.</title><content type='html'>Character-Based Behaviors&lt;br /&gt;&lt;br /&gt;Behavior #1: Talk Straight. Communicate clearly so that you cannot be misunderstood. Preface your discussions by declaring your intent, so you leave no doubt about what you are thinking. Counterfeit behaviors include withholding information, flattery and spin. Be honest and call things what they are. Don’t manipulate people, distort facts or leave false impressions.&lt;br /&gt;&lt;br /&gt;Behavior #2: Demonstrate Respect. This behavior is based on the principles of respect, fairness, kindness, love and civility. The opposite is commonly experienced as showing disrespect, which is a huge issue, both at work and at home. The counterfeit is to fake respect or concern, or, most insidious of all, to show respect and concern for only those who can do something for you.&lt;br /&gt;&lt;br /&gt;Behavior #3: Create Transparency. Be real and genuine and tell the truth in a way that people can verify. The opposite is to obscure, and the counterfeit is illusion or pretending things are different than they are. You can establish trust quickly by being open and authentic, erring on the side of disclosure and not having hidden agendas.&lt;br /&gt;&lt;br /&gt;Behavior #4: Right Wrongs. Make restitution instead of just apologizing. The opposite is to deny or justify wrongs because of ego and pride, and the counterfeit is to cover up mistakes. Apologize quickly, take action to make restitution when possible, and demonstrate personal humility to achieve this behavior.&lt;br /&gt;&lt;br /&gt;Behavior #5: Show Loyalty. Give credit to others and speak about people as though they are present. The opposite is to take credit or not represent people fairly. The counterfeit is to appear to share credit but then downplay others’ contribution when they are away. To exhibit a trustworthy character, give credit freely, don’t badmouth people behind their backs and don’t disclose others’ private information.&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;Competence-Based Behaviors&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;Behavior #6: Deliver Results. This is a way to convert cynics and establish trust in a new relationship. Because it is often difficult to measure results, take time to define results up front. By establishing a track record, making the right things happen, being on time and on budget, and not making excuses for not delivering, you quickly restore lost trust on the competence side.&lt;br /&gt;&lt;br /&gt;Behavior #7: Get Better. Continuously improve by learning, growing and renewing yourself. Others will develop confidence in your ability to succeed in a rapidly changing environment. The opposite is entropy and deterioration, while the counterfeit is the eternal student always learning, but never producing. Don’t be afraid to make mistakes but learn from them. Develop formal and informal feedback systems and respond to them.&lt;br /&gt;&lt;br /&gt;Behavior #8: Confront Reality. Take the tough issues head-on. This affects speed and cost by facilitating open interaction and fast achievement, and also allowing you to engage the creativity, capability and synergy of others in solving problems. When leaders use the opposite behavior by ignoring problems, they pay a huge tax when people feel they are being dishonest. It is far better to address the real issues and lead courageously in discussions of uncomfortable topics.&lt;br /&gt;&lt;br /&gt;Behavior #9: Clarify Expectations. Create shared vision and agreement up front. The opposite is to leave undefined expectations and the counterfeit is to be vague about specifics. Consider that most circumstances encompass three variables — quality, speed and cost  but you can only have two. Always discuss and reveal expectations, and never assume they are clear or shared. Renegotiate if necessary, but don’t violate expectations once they have been validated.&lt;br /&gt;&lt;br /&gt;Behavior #10: Practice Accountability. Hold yourself and others accountable. Leaders who generate trust do both. The opposite is not to take responsibility, and the counterfeit is to point fingers. Other people respond to accountability — particularly performers. They want to be held accountable. Don’t avoid or shirk responsibility, and be clear on how you’ll communicate progress.&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;Character &amp; Competence Behaviors&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;Behavior #11: Listen First. Genuinely understand another person’s thoughts and feelings, before trying to diagnose or advise. The opposite and counterfeit are to speak first and listen last, or not at all, and to pretend to listen while waiting for your own chance to speak. Listening teaches you which behaviors create dividends. Use your eyes and your gut to listen as well as your ears, and don’t presume you know what matters to others.&lt;br /&gt;&lt;br /&gt;Behavior #12: Keep Commitments. It is the quickest way to build trust in any relationship. The opposite is to break commitments and the counterfeit is to make vague, unreliable commitments, or never make them in the first place. Some cultures view commitments differently, and understanding the difference is key to getting dividends and avoiding trust taxes. People tend to see family commitments as more flexible than work commitments, but they are just as important. Make keeping all commitments the symbol of your honor.&lt;br /&gt;&lt;br /&gt;Behavior #13: Extend Trust. Shift trust from a noun to a verb. While the other Behaviors help you become a more trusted person or manager, this 13th Behavior helps you become a more trusting leader. Extending  trust leverages it to create reciprocity. The opposite is withholding trust. The counterfeit is extending false trust by giving people responsibility, but no authority or resources to complete a task. There is also fake trust that seems like trust until you follow-up behind people and micromanage. Based on the situation, extend conditionally to those who are earning your trust, but extend it abundantly to those who have earned it&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6897144177599049811-287961288565253121?l=ashakkhan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ashakkhan.blogspot.com/feeds/287961288565253121/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6897144177599049811&amp;postID=287961288565253121' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/287961288565253121'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/287961288565253121'/><link rel='alternate' type='text/html' href='http://ashakkhan.blogspot.com/2008/10/13-behaviors-that-are-common-to-high.html' title='13 Behaviors that are common to high trust leaders and people throughout the world.'/><author><name>Ashak Ali Khan</name><uri>http://www.blogger.com/profile/02783946057420260374</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_1rApOiGy_ns/Sa0sDHWokDI/AAAAAAAAAXQ/fQut2UPtxgY/S220/Ashak_Khan.bmp'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6897144177599049811.post-8953785429063494499</id><published>2008-08-26T06:40:00.000-07:00</published><updated>2009-03-03T05:33:05.859-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Oracle Dataguards'/><title type='text'>Oracle Dataguard Standby - recovery hunging</title><content type='html'>Problem in Oracle 9.2.0.8 dataguard Standby:&lt;br /&gt;&lt;br /&gt;ORA-00600: internal error code, arguments: [3020], [126207919], [1], [38584], [352663], [36], [], []&lt;br /&gt;ORA-10567: Redo is inconsistent with data block (file# 30, block# 378799)&lt;br /&gt;ORA-10564: tablespace INDEX01&lt;br /&gt;ORA-01110: data file 30: '/dev/rsprod_index11'&lt;br /&gt;ORA-10561: block type 'TRANSACTION MANAGED INDEX BLOCK', data object# 82018&lt;br /&gt;MRP0: Background Media Recovery process shutdown&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;Action Plan:&lt;br /&gt;&lt;br /&gt;Standby and production uses raw devices&lt;br /&gt;1) Make IMAGE copy of datafile 30 using rman on PRIMARY&lt;br /&gt;rman target /  catalog username/password@rman&lt;br /&gt;RMAN&gt;COPY DATAFILE 30 TO '/oracle/sprod1/arch/rsprod_index11';&lt;br /&gt;&lt;br /&gt;2) sftp  this image file  '/oracle/sprod1/arch/rsprod_index11' to STANDBY server location '/oracle/sprod1/arch/rsprod_index11'&lt;br /&gt;&lt;br /&gt;3) On standby, shutdown all instances and Copy '/oracle/sprod1/arch/rsprod_index11'  to raw device using DD command&lt;br /&gt;dd if=/oracle/sprod1/arch/sprod_index11  of=/dev/rsprod_index11 bs=4096 seek=1&lt;br /&gt;&lt;br /&gt;4) Start recovery.&lt;br /&gt;Note: FOR AIX use BS=4096  Metalink Note:178965.1&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6897144177599049811-8953785429063494499?l=ashakkhan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ashakkhan.blogspot.com/feeds/8953785429063494499/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6897144177599049811&amp;postID=8953785429063494499' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/8953785429063494499'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/8953785429063494499'/><link rel='alternate' type='text/html' href='http://ashakkhan.blogspot.com/2008/08/oracle-dataguard-standby-recovery-hunk.html' title='Oracle Dataguard Standby - recovery hunging'/><author><name>Ashak Ali Khan</name><uri>http://www.blogger.com/profile/02783946057420260374</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_1rApOiGy_ns/Sa0sDHWokDI/AAAAAAAAAXQ/fQut2UPtxgY/S220/Ashak_Khan.bmp'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6897144177599049811.post-5669051278897163411</id><published>2008-08-24T00:25:00.000-07:00</published><updated>2008-08-26T08:56:48.564-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='My home town - Goa'/><title type='text'>In my town - Goa</title><content type='html'>&lt;object width="320" height="266" class="BLOG_video_class" id="BLOG_video-b15ea6ed17b7555" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"&gt;&lt;param name="movie" value="http://www.youtube.com/get_player"&gt;&lt;param name="bgcolor" value="#FFFFFF"&gt;&lt;param name="allowfullscreen" value="true"&gt;&lt;param name="flashvars" value="flvurl=http://v12.nonxt5.googlevideo.com/videoplayback?id%3D0b15ea6ed17b7555%26itag%3D5%26app%3Dblogger%26ip%3D0.0.0.0%26ipbits%3D0%26expire%3D1331358293%26sparams%3Did,itag,ip,ipbits,expire%26signature%3D60F93B5F462A9AA90FCE2F22D167382A71329893.6DBBF59ED95BC64C15797B4CEE234A7E6D00DA93%26key%3Dck1&amp;amp;iurl=http://video.google.com/ThumbnailServer2?app%3Dblogger%26contentid%3Db15ea6ed17b7555%26offsetms%3D5000%26itag%3Dw160%26sigh%3Dm1VaMDWSvHkmWNqGjKAq39R2ESw&amp;amp;autoplay=0&amp;amp;ps=blogger"&gt;&lt;embed src="http://www.youtube.com/get_player" type="application/x-shockwave-flash"width="320" height="266" bgcolor="#FFFFFF"flashvars="flvurl=http://v12.nonxt5.googlevideo.com/videoplayback?id%3D0b15ea6ed17b7555%26itag%3D5%26app%3Dblogger%26ip%3D0.0.0.0%26ipbits%3D0%26expire%3D1331358293%26sparams%3Did,itag,ip,ipbits,expire%26signature%3D60F93B5F462A9AA90FCE2F22D167382A71329893.6DBBF59ED95BC64C15797B4CEE234A7E6D00DA93%26key%3Dck1&amp;iurl=http://video.google.com/ThumbnailServer2?app%3Dblogger%26contentid%3Db15ea6ed17b7555%26offsetms%3D5000%26itag%3Dw160%26sigh%3Dm1VaMDWSvHkmWNqGjKAq39R2ESw&amp;autoplay=0&amp;ps=blogger"allowFullScreen="true" /&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6897144177599049811-5669051278897163411?l=ashakkhan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='enclosure' type='video/mp4' href='http://www.blogger.com/video-play.mp4?contentId=b15ea6ed17b7555&amp;type=video%2Fmp4' length='0'/><link rel='replies' type='application/atom+xml' href='http://ashakkhan.blogspot.com/feeds/5669051278897163411/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6897144177599049811&amp;postID=5669051278897163411' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/5669051278897163411'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/5669051278897163411'/><link rel='alternate' type='text/html' href='http://ashakkhan.blogspot.com/2008/08/in-my-town-goa.html' title='In my town - Goa'/><author><name>Ashak Ali Khan</name><uri>http://www.blogger.com/profile/02783946057420260374</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_1rApOiGy_ns/Sa0sDHWokDI/AAAAAAAAAXQ/fQut2UPtxgY/S220/Ashak_Khan.bmp'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6897144177599049811.post-3061102656659470542</id><published>2008-08-23T07:14:00.000-07:00</published><updated>2009-03-03T05:32:04.476-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Management'/><title type='text'>The Seven Sins of Deadly Meetings</title><content type='html'>Sin #1: People don't take meetings seriously. They arrive late, leave early, and spend most of their time doodling.&lt;br /&gt;Salvation: Adopt Intel's mind-set that meetings are real work.&lt;br /&gt;&lt;br /&gt;Sin #2: Meetings are too long. They should accomplish twice as much in half the time.&lt;br /&gt;Salvation: Time is money. Track the cost of your meetings and use computer- enabled simultaneity to make them more productive.&lt;br /&gt;&lt;br /&gt;Sin #3: People wander off the topic. Participants spend more time digressing than discussing.&lt;br /&gt;Salvation: Get serious about agendas and store distractions in a "parking lot."&lt;br /&gt;&lt;br /&gt;Sin #4: Nothing happens once the meeting ends. People don't convert decisions into action.&lt;br /&gt;Salvation: Convert from "meeting" to "doing" and focus on common documents.&lt;br /&gt;&lt;br /&gt;Sin #5: People don't tell the truth. There's plenty of conversation, but not much candor.&lt;br /&gt;Salvation: Embrace anonymity.&lt;br /&gt;&lt;br /&gt;Sin #6: Meetings are always missing important information, so they postpone critical decisions.&lt;br /&gt;Salvation: Get data, not just furniture, into meeting rooms.&lt;br /&gt;&lt;br /&gt;Sin #7: Meetings never get better. People make the same mistakes.&lt;br /&gt;Salvation: Practice makes perfect. Monitor what works and what doesn't and hold people accountable&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6897144177599049811-3061102656659470542?l=ashakkhan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ashakkhan.blogspot.com/feeds/3061102656659470542/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6897144177599049811&amp;postID=3061102656659470542' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/3061102656659470542'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/3061102656659470542'/><link rel='alternate' type='text/html' href='http://ashakkhan.blogspot.com/2008/08/seven-sins-of-deadly-meetings.html' title='The Seven Sins of Deadly Meetings'/><author><name>Ashak Ali Khan</name><uri>http://www.blogger.com/profile/02783946057420260374</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_1rApOiGy_ns/Sa0sDHWokDI/AAAAAAAAAXQ/fQut2UPtxgY/S220/Ashak_Khan.bmp'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6897144177599049811.post-5285636426583327191</id><published>2008-08-23T07:11:00.000-07:00</published><updated>2009-03-03T05:29:51.605-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Management'/><title type='text'>Six Thinking Hats - Holding Effective Meetings</title><content type='html'>Using the concept of hats, Dr Edward de Bono, author of the book Six Thinking Hats, gives an effective and easy-to-practice method of drastically improving your thinking process, discussions and meetings.&lt;br /&gt;&lt;br /&gt;The Basics&lt;br /&gt;1) There are six different imaginary hats that you can put on or take off.&lt;br /&gt;2) Each hat is a different color and represents a different type or mode of thinking.&lt;br /&gt;3) We all wear the same hat (do the same type of thinking) at the same time.&lt;br /&gt;4) When we change hats - we change our thinking.&lt;br /&gt;&lt;br /&gt;White Hat&lt;br /&gt;With this thinking hat you focus on the data available. Look at the information you have, and see what you can learn from it. Look for gaps in your knowledge, and either try to fill them or take account of them. This is where you analyze past trends, and try to extrapolate from historical data. White Hat excludes Hunch, Intuition, Judgement based on past experience, Feeling, Impression and Opinion. In White Hat thinking, facts should NOT be used to support or suppress a point of view – they should be neutral.&lt;br /&gt;&lt;br /&gt;Green Hat&lt;br /&gt;The Green Hat stands for creativity. This is where you can develop creative solutions to a problem. It is a freewheeling way of thinking, in which there is little criticism of ideas.&lt;br /&gt;&lt;br /&gt;Yellow Hat&lt;br /&gt;The Yellow Hat helps you to think positively. It is the optimistic viewpoint that helps you to see all the benefits of the decision and the value in it. Yellow Hat thinking helps you to keep going when everything looks gloomy and difficult.&lt;br /&gt;&lt;br /&gt;Black Hat&lt;br /&gt;Becoming the Devil’s Advocate. Using Black Hat thinking, look at all the bad points of the decision. Try to see why it might not work. Black Hat thinking helps to make your plans 'tougher' and more resilient. It can also help you to spot fatal flaws and risks before you embark on a course of action.&lt;br /&gt;&lt;br /&gt;Red Hat&lt;br /&gt;'Wearing' the Red Hat, you look at problems using intuition, gut reaction, and emotion. Also try to think how other people will react emotionally. Try to understand the responses of people who do not fully know your reasoning. No need to justify or give reasons for the emotions Useful to do a Red Hat session at the beginning, and then at the end to see whether people now feel differently&lt;br /&gt;&lt;br /&gt;Blue Hat&lt;br /&gt;The Blue Hat stands for process control. This is the hat worn by people chairing meetings. When running into difficulties because ideas are running dry, they may direct activity into Green Hat thinking. When contingency plans are needed, they will ask for Black Hat thinking, etc.&lt;br /&gt;&lt;br /&gt;Sequencing the Hats&lt;br /&gt;No fixed rules, but can be used effectively to drive efficient meetings. An example sequence could be:&lt;br /&gt;1) Blue Hat: Decide Agenda and Sequence&lt;br /&gt;2) White Hat: State facts&lt;br /&gt;3) Green Hat: Brainstorm&lt;br /&gt;4) Yellow Hat: List Advantages&lt;br /&gt;5) Black Hat: List Pitfalls and Disadvantages&lt;br /&gt;6) Red Hat: See how people feel&lt;br /&gt;7) Blue Hat: Take a final decision and assign Action Items&lt;br /&gt;&lt;br /&gt;Facilitator's Role:&lt;br /&gt;1) Define the focus of your thinking&lt;br /&gt;2) Plan the sequence and timing of the thinking&lt;br /&gt;3) Ask for changes in the thinking if needed&lt;br /&gt;4) Handle requests from the group for changes in the thinking&lt;br /&gt;5) Form periodic or final summaries of the thinking for consideration by the team&lt;br /&gt;&lt;br /&gt;Participant's Role:&lt;br /&gt;1) Follow the lead of Six Thinking Hats facilitator&lt;br /&gt;2) Stick to the hat (type of thinking) that is in current use&lt;br /&gt;3) Try to work within the time limits&lt;br /&gt;4) Contribute honestly &amp; fully under each of the hats&lt;br /&gt;&lt;br /&gt;Rules of the Game!&lt;br /&gt;1) You have to follow the rules of the game!&lt;br /&gt;2) Hats describe direction to be followed, not people.&lt;br /&gt;3) Everyone has to wear the same color hat at any one time – you cannot have different people wearing different hats at the same time!&lt;br /&gt;4) Do not try to change personalities – if you are aggressive, you can continue to be so, as long as your aggression is in the correct direction required at that time!&lt;br /&gt;&lt;br /&gt;Let's think!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6897144177599049811-5285636426583327191?l=ashakkhan.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ashakkhan.blogspot.com/feeds/5285636426583327191/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6897144177599049811&amp;postID=5285636426583327191' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/5285636426583327191'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6897144177599049811/posts/default/5285636426583327191'/><link rel='alternate' type='text/html' href='http://ashakkhan.blogspot.com/2008/08/six-thinking-hats-holding-effective.html' title='Six Thinking Hats - Holding Effective Meetings'/><author><name>Ashak Ali Khan</name><uri>http://www.blogger.com/profile/02783946057420260374</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_1rApOiGy_ns/Sa0sDHWokDI/AAAAAAAAAXQ/fQut2UPtxgY/S220/Ashak_Khan.bmp'/></author><thr:total>0</thr:total></entry></feed>
