<?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-1478036687830627925</id><updated>2011-11-27T16:04:45.067-08:00</updated><title type='text'>Apps DBA Help</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://appsdbaexperts.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1478036687830627925/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://appsdbaexperts.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Vikram Singh</name><uri>http://www.blogger.com/profile/00122476821250599716</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>10</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-1478036687830627925.post-6262148370336463097</id><published>2010-12-09T22:42:00.000-08:00</published><updated>2010-12-09T22:42:39.959-08:00</updated><title type='text'>Upgrading R12.1.1 to 12.3.3</title><content type='html'>&lt;!--[if gte mso 9]&gt;&lt;xml&gt;  &lt;w:WordDocument&gt;   &lt;w:View&gt;Normal&lt;/w:View&gt;   &lt;w:Zoom&gt;0&lt;/w:Zoom&gt;   &lt;w:PunctuationKerning/&gt;   &lt;w:ValidateAgainstSchemas/&gt;   &lt;w:SaveIfXMLInvalid&gt;false&lt;/w:SaveIfXMLInvalid&gt;   &lt;w:IgnoreMixedContent&gt;false&lt;/w:IgnoreMixedContent&gt;   &lt;w:AlwaysShowPlaceholderText&gt;false&lt;/w:AlwaysShowPlaceholderText&gt;   &lt;w:Compatibility&gt;    &lt;w:BreakWrappedTables/&gt;    &lt;w:SnapToGridInCell/&gt;    &lt;w:WrapTextWithPunct/&gt;    &lt;w:UseAsianBreakRules/&gt;    &lt;w:DontGrowAutofit/&gt;   &lt;/w:Compatibility&gt;   &lt;w:BrowserLevel&gt;MicrosoftInternetExplorer4&lt;/w:BrowserLevel&gt;  &lt;/w:WordDocument&gt; &lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;  &lt;w:LatentStyles DefLockedState="false" LatentStyleCount="156"&gt;  &lt;/w:LatentStyles&gt; &lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 10]&gt; &lt;style&gt; /* Style Definitions */ table.MsoNormalTable {mso-style-name:"Table Normal"; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; mso-style-noshow:yes; mso-style-parent:""; mso-padding-alt:0in 5.4pt 0in 5.4pt; mso-para-margin:0in; mso-para-margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:10.0pt; font-family:"Times New Roman"; mso-ansi-language:#0400; mso-fareast-language:#0400; mso-bidi-language:#0400;}&lt;/style&gt; &lt;![endif]--&gt;  &lt;br /&gt;&lt;div class="MsoNormal"&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;  &lt;w:WordDocument&gt;   &lt;w:View&gt;Normal&lt;/w:View&gt;   &lt;w:Zoom&gt;0&lt;/w:Zoom&gt;   &lt;w:PunctuationKerning/&gt;   &lt;w:ValidateAgainstSchemas/&gt;   &lt;w:SaveIfXMLInvalid&gt;false&lt;/w:SaveIfXMLInvalid&gt;   &lt;w:IgnoreMixedContent&gt;false&lt;/w:IgnoreMixedContent&gt;   &lt;w:AlwaysShowPlaceholderText&gt;false&lt;/w:AlwaysShowPlaceholderText&gt;   &lt;w:Compatibility&gt;    &lt;w:BreakWrappedTables/&gt;    &lt;w:SnapToGridInCell/&gt;    &lt;w:WrapTextWithPunct/&gt;    &lt;w:UseAsianBreakRules/&gt;    &lt;w:DontGrowAutofit/&gt;   &lt;/w:Compatibility&gt;   &lt;w:BrowserLevel&gt;MicrosoftInternetExplorer4&lt;/w:BrowserLevel&gt;  &lt;/w:WordDocument&gt; &lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;  &lt;w:LatentStyles DefLockedState="false" LatentStyleCount="156"&gt;  &lt;/w:LatentStyles&gt; &lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 10]&gt; &lt;style&gt; /* Style Definitions */ table.MsoNormalTable {mso-style-name:"Table Normal"; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; mso-style-noshow:yes; mso-style-parent:""; mso-padding-alt:0in 5.4pt 0in 5.4pt; mso-para-margin:0in; mso-para-margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:10.0pt; font-family:"Times New Roman"; mso-ansi-language:#0400; mso-fareast-language:#0400; mso-bidi-language:#0400;}&lt;/style&gt; &lt;![endif]--&gt;  &lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-size: large;"&gt;&lt;b&gt;&lt;span style="font-family: Calibri;"&gt;To apply Oracle E-Business Suite Release 12.1.3, follow these steps:&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&gt;Download all the patches&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&gt;p9239095_R12_GENERIC.zip&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&gt;p9817770_R12.ATG_PF.B_R12_LINUX.zip&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&gt;p9239089_R12.AD.B_R12_LINUX.zip&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&gt;p9239090_R12_LINUX_1of6.zip&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&gt;p9239090_R12_LINUX_2of6.zip&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&gt;p9239090_R12_LINUX_3of6.zip&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&gt;p9239090_R12_LINUX_4of6.zip&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&gt;p9239090_R12_LINUX_5of6.zip&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&gt;p9239090_R12_LINUX_6of6.zip&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&gt;p9966055_R12.FND.B_R12_GENERIC.zip&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&gt;Unzip the patches&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&gt;9239089&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&gt;9239090&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&gt;9817770&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&gt;9966055&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&gt;9239095&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-size: small;"&gt;&lt;b&gt;&lt;span style="font-family: Calibri;"&gt;a) &lt;/span&gt;&lt;/b&gt;&lt;b&gt;&lt;span style="font-family: &amp;quot;Calibri,Bold&amp;quot;;"&gt;Enable maintenance mode&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;  &lt;w:WordDocument&gt;   &lt;w:View&gt;Normal&lt;/w:View&gt;   &lt;w:Zoom&gt;0&lt;/w:Zoom&gt;   &lt;w:PunctuationKerning/&gt;   &lt;w:ValidateAgainstSchemas/&gt;   &lt;w:SaveIfXMLInvalid&gt;false&lt;/w:SaveIfXMLInvalid&gt;   &lt;w:IgnoreMixedContent&gt;false&lt;/w:IgnoreMixedContent&gt;   &lt;w:AlwaysShowPlaceholderText&gt;false&lt;/w:AlwaysShowPlaceholderText&gt;   &lt;w:Compatibility&gt;    &lt;w:BreakWrappedTables/&gt;    &lt;w:SnapToGridInCell/&gt;    &lt;w:WrapTextWithPunct/&gt;    &lt;w:UseAsianBreakRules/&gt;    &lt;w:DontGrowAutofit/&gt;   &lt;/w:Compatibility&gt;   &lt;w:BrowserLevel&gt;MicrosoftInternetExplorer4&lt;/w:BrowserLevel&gt;  &lt;/w:WordDocument&gt; &lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;  &lt;w:LatentStyles DefLockedState="false" LatentStyleCount="156"&gt;  &lt;/w:LatentStyles&gt; &lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 10]&gt; &lt;style&gt; /* Style Definitions */ table.MsoNormalTable {mso-style-name:"Table Normal"; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; mso-style-noshow:yes; mso-style-parent:""; mso-padding-alt:0in 5.4pt 0in 5.4pt; mso-para-margin:0in; mso-para-margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:10.0pt; font-family:"Times New Roman"; mso-ansi-language:#0400; mso-fareast-language:#0400; mso-bidi-language:#0400;}&lt;/style&gt; &lt;![endif]--&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-size: small;"&gt;&lt;b&gt;&lt;span style="font-family: &amp;quot;Calibri,Bold&amp;quot;;"&gt;b) Stop all application Services&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;b&gt;&lt;span style="font-family: &amp;quot;Calibri,Bold&amp;quot;; font-size: 11pt;"&gt;1) &lt;/span&gt;&lt;/b&gt;&lt;span style="font-size: small;"&gt;&lt;u&gt;&lt;span style="font-family: Calibri;"&gt;Use AutoPatch to apply R12.AD.B.DELTA.3 Patch 9239089, before you complete any of the other steps in this section. Do not merge this patch with any other patch. R12.AD.B.Delta.3 must be applied separately.&lt;/span&gt;&lt;/u&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;  &lt;w:WordDocument&gt;   &lt;w:View&gt;Normal&lt;/w:View&gt;   &lt;w:Zoom&gt;0&lt;/w:Zoom&gt;   &lt;w:PunctuationKerning/&gt;   &lt;w:ValidateAgainstSchemas/&gt;   &lt;w:SaveIfXMLInvalid&gt;false&lt;/w:SaveIfXMLInvalid&gt;   &lt;w:IgnoreMixedContent&gt;false&lt;/w:IgnoreMixedContent&gt;   &lt;w:AlwaysShowPlaceholderText&gt;false&lt;/w:AlwaysShowPlaceholderText&gt;   &lt;w:Compatibility&gt;    &lt;w:BreakWrappedTables/&gt;    &lt;w:SnapToGridInCell/&gt;    &lt;w:WrapTextWithPunct/&gt;    &lt;w:UseAsianBreakRules/&gt;    &lt;w:DontGrowAutofit/&gt;   &lt;/w:Compatibility&gt;   &lt;w:BrowserLevel&gt;MicrosoftInternetExplorer4&lt;/w:BrowserLevel&gt;  &lt;/w:WordDocument&gt; &lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;  &lt;w:LatentStyles DefLockedState="false" LatentStyleCount="156"&gt;  &lt;/w:LatentStyles&gt; &lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 10]&gt; &lt;style&gt; /* Style Definitions */ table.MsoNormalTable {mso-style-name:"Table Normal"; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; mso-style-noshow:yes; mso-style-parent:""; mso-padding-alt:0in 5.4pt 0in 5.4pt; mso-para-margin:0in; mso-para-margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:10.0pt; font-family:"Times New Roman"; mso-ansi-language:#0400; mso-fareast-language:#0400; mso-bidi-language:#0400;}&lt;/style&gt; &lt;![endif]--&gt;  &lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&gt;-- Pre install steps&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;  &lt;w:WordDocument&gt;   &lt;w:View&gt;Normal&lt;/w:View&gt;   &lt;w:Zoom&gt;0&lt;/w:Zoom&gt;   &lt;w:PunctuationKerning/&gt;   &lt;w:ValidateAgainstSchemas/&gt;   &lt;w:SaveIfXMLInvalid&gt;false&lt;/w:SaveIfXMLInvalid&gt;   &lt;w:IgnoreMixedContent&gt;false&lt;/w:IgnoreMixedContent&gt;   &lt;w:AlwaysShowPlaceholderText&gt;false&lt;/w:AlwaysShowPlaceholderText&gt;   &lt;w:Compatibility&gt;    &lt;w:BreakWrappedTables/&gt;    &lt;w:SnapToGridInCell/&gt;    &lt;w:WrapTextWithPunct/&gt;    &lt;w:UseAsianBreakRules/&gt;    &lt;w:DontGrowAutofit/&gt;   &lt;/w:Compatibility&gt;   &lt;w:BrowserLevel&gt;MicrosoftInternetExplorer4&lt;/w:BrowserLevel&gt;  &lt;/w:WordDocument&gt; &lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;  &lt;w:LatentStyles DefLockedState="false" LatentStyleCount="156"&gt;  &lt;/w:LatentStyles&gt; &lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 10]&gt; &lt;style&gt; /* Style Definitions */ table.MsoNormalTable {mso-style-name:"Table Normal"; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; mso-style-noshow:yes; mso-style-parent:""; mso-padding-alt:0in 5.4pt 0in 5.4pt; mso-para-margin:0in; mso-para-margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:10.0pt; font-family:"Times New Roman"; mso-ansi-language:#0400; mso-fareast-language:#0400; mso-bidi-language:#0400;}&lt;/style&gt; &lt;![endif]--&gt;  &lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1. Create $ORACLE_HOME/appsutil/admin on the database server.&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&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;&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; mkdir -p $ORACLE_HOME/appsutil/admin&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2. Copy adgrants.sql (UNIX) from this patch directory to&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; $ORACLE_HOME/appsutil/admin.&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3. Set the environment to point to ORACLE_HOME on the database server.&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4. Use SQL*Plus to run the script:&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; UNIX:&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; $ sqlplus /nolog&lt;/span&gt;&lt;/div&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;&amp;nbsp;&amp;nbsp; &lt;span style="font-family: Calibri; font-size: 11pt;"&gt;SQL&amp;gt; @$ORACLE_HOME/appsutil/admin/adgrants.sql APPS&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;u&gt;Apply the Patch&lt;/u&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &lt;u&gt;No Post Installation Steps. &lt;/u&gt;&lt;/span&gt;&lt;br /&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&gt;&amp;nbsp;2)&amp;nbsp;&amp;nbsp; Use AutoPatch to apply Oracle E-Business Suite Release 12.1.3 Patch 9239090 and follow the&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; instructions in the patch readme file. &lt;/span&gt;&lt;/div&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&gt;Prereq patch - R12.AD.B.delta.3 (9239089)- already applied above.&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&gt;&amp;nbsp;3) &lt;/span&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;  &lt;w:WordDocument&gt;   &lt;w:View&gt;Normal&lt;/w:View&gt;   &lt;w:Zoom&gt;0&lt;/w:Zoom&gt;   &lt;w:PunctuationKerning/&gt;   &lt;w:ValidateAgainstSchemas/&gt;   &lt;w:SaveIfXMLInvalid&gt;false&lt;/w:SaveIfXMLInvalid&gt;   &lt;w:IgnoreMixedContent&gt;false&lt;/w:IgnoreMixedContent&gt;   &lt;w:AlwaysShowPlaceholderText&gt;false&lt;/w:AlwaysShowPlaceholderText&gt;   &lt;w:Compatibility&gt;    &lt;w:BreakWrappedTables/&gt;    &lt;w:SnapToGridInCell/&gt;    &lt;w:WrapTextWithPunct/&gt;    &lt;w:UseAsianBreakRules/&gt;    &lt;w:DontGrowAutofit/&gt;   &lt;/w:Compatibility&gt;   &lt;w:BrowserLevel&gt;MicrosoftInternetExplorer4&lt;/w:BrowserLevel&gt;  &lt;/w:WordDocument&gt; &lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;  &lt;w:LatentStyles DefLockedState="false" LatentStyleCount="156"&gt;  &lt;/w:LatentStyles&gt; &lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 10]&gt; &lt;style&gt; /* Style Definitions */ table.MsoNormalTable {mso-style-name:"Table Normal"; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; mso-style-noshow:yes; mso-style-parent:""; mso-padding-alt:0in 5.4pt 0in 5.4pt; mso-para-margin:0in; mso-para-margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:10.0pt; font-family:"Times New Roman"; mso-ansi-language:#0400; mso-fareast-language:#0400; mso-bidi-language:#0400;}&lt;/style&gt; &lt;![endif]--&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&gt;&amp;nbsp; Use AutoPatch to apply the latest consolidated online help Patch 9239095 and follow the instructions in&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; the patch readme file.&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;  &lt;w:WordDocument&gt;   &lt;w:View&gt;Normal&lt;/w:View&gt;   &lt;w:Zoom&gt;0&lt;/w:Zoom&gt;   &lt;w:PunctuationKerning/&gt;   &lt;w:ValidateAgainstSchemas/&gt;   &lt;w:SaveIfXMLInvalid&gt;false&lt;/w:SaveIfXMLInvalid&gt;   &lt;w:IgnoreMixedContent&gt;false&lt;/w:IgnoreMixedContent&gt;   &lt;w:AlwaysShowPlaceholderText&gt;false&lt;/w:AlwaysShowPlaceholderText&gt;   &lt;w:Compatibility&gt;    &lt;w:BreakWrappedTables/&gt;    &lt;w:SnapToGridInCell/&gt;    &lt;w:WrapTextWithPunct/&gt;    &lt;w:UseAsianBreakRules/&gt;    &lt;w:DontGrowAutofit/&gt;   &lt;/w:Compatibility&gt;   &lt;w:BrowserLevel&gt;MicrosoftInternetExplorer4&lt;/w:BrowserLevel&gt;  &lt;/w:WordDocument&gt; &lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;  &lt;w:LatentStyles DefLockedState="false" LatentStyleCount="156"&gt;  &lt;/w:LatentStyles&gt; &lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 10]&gt; &lt;style&gt; /* Style Definitions */ table.MsoNormalTable {mso-style-name:"Table Normal"; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; mso-style-noshow:yes; mso-style-parent:""; mso-padding-alt:0in 5.4pt 0in 5.4pt; mso-para-margin:0in; mso-para-margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:10.0pt; font-family:"Times New Roman"; mso-ansi-language:#0400; mso-fareast-language:#0400; mso-bidi-language:#0400;}&lt;/style&gt; &lt;![endif]--&gt;  &lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-size: small;"&gt;&lt;b&gt;&lt;span style="font-family: Calibri;"&gt;Post-Update Steps:-&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&gt;Apply post-install Oracle E-Business Suite Applications Technology patches. (Required)&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&gt;Apply mandatory Patch 9817770 (9817770:R12.ATG_PF.B [POST-R12.ATG_PF.B.DELTA.3 CONSOLIDATED PATCH].)&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&gt;Apply mandatory Patch 9966055 (9966055:R12.FND.B [TRANSLATED VERSION OF FNDSCSGN NOT LAUNCHED].)&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;  &lt;w:WordDocument&gt;   &lt;w:View&gt;Normal&lt;/w:View&gt;   &lt;w:Zoom&gt;0&lt;/w:Zoom&gt;   &lt;w:PunctuationKerning/&gt;   &lt;w:ValidateAgainstSchemas/&gt;   &lt;w:SaveIfXMLInvalid&gt;false&lt;/w:SaveIfXMLInvalid&gt;   &lt;w:IgnoreMixedContent&gt;false&lt;/w:IgnoreMixedContent&gt;   &lt;w:AlwaysShowPlaceholderText&gt;false&lt;/w:AlwaysShowPlaceholderText&gt;   &lt;w:Compatibility&gt;    &lt;w:BreakWrappedTables/&gt;    &lt;w:SnapToGridInCell/&gt;    &lt;w:WrapTextWithPunct/&gt;    &lt;w:UseAsianBreakRules/&gt;    &lt;w:DontGrowAutofit/&gt;   &lt;/w:Compatibility&gt;   &lt;w:BrowserLevel&gt;MicrosoftInternetExplorer4&lt;/w:BrowserLevel&gt;  &lt;/w:WordDocument&gt; &lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;  &lt;w:LatentStyles DefLockedState="false" LatentStyleCount="156"&gt;  &lt;/w:LatentStyles&gt; &lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 10]&gt; &lt;style&gt; /* Style Definitions */ table.MsoNormalTable {mso-style-name:"Table Normal"; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; mso-style-noshow:yes; mso-style-parent:""; mso-padding-alt:0in 5.4pt 0in 5.4pt; mso-para-margin:0in; mso-para-margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:10.0pt; font-family:"Times New Roman"; mso-ansi-language:#0400; mso-fareast-language:#0400; mso-bidi-language:#0400;}&lt;/style&gt; &lt;![endif]--&gt;  &lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-size: large;"&gt;&lt;b&gt;&lt;span style="font-family: Calibri;"&gt;Update database tier nodes with the Oracle E-Business Suite Release 12.1.3 code level.&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-size: large;"&gt;&lt;b&gt;&lt;span style="font-family: Calibri;"&gt;After you have upgraded to Oracle E-Business Suite Release 12.1.3, perform the following post-update&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&gt;&amp;nbsp;&lt;/span&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;  &lt;w:WordDocument&gt;   &lt;w:View&gt;Normal&lt;/w:View&gt;   &lt;w:Zoom&gt;0&lt;/w:Zoom&gt;   &lt;w:PunctuationKerning/&gt;   &lt;w:ValidateAgainstSchemas/&gt;   &lt;w:SaveIfXMLInvalid&gt;false&lt;/w:SaveIfXMLInvalid&gt;   &lt;w:IgnoreMixedContent&gt;false&lt;/w:IgnoreMixedContent&gt;   &lt;w:AlwaysShowPlaceholderText&gt;false&lt;/w:AlwaysShowPlaceholderText&gt;   &lt;w:Compatibility&gt;    &lt;w:BreakWrappedTables/&gt;    &lt;w:SnapToGridInCell/&gt;    &lt;w:WrapTextWithPunct/&gt;    &lt;w:UseAsianBreakRules/&gt;    &lt;w:DontGrowAutofit/&gt;   &lt;/w:Compatibility&gt;   &lt;w:BrowserLevel&gt;MicrosoftInternetExplorer4&lt;/w:BrowserLevel&gt;  &lt;/w:WordDocument&gt; &lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;  &lt;w:LatentStyles DefLockedState="false" LatentStyleCount="156"&gt;  &lt;/w:LatentStyles&gt; &lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 10]&gt; &lt;style&gt; /* Style Definitions */ table.MsoNormalTable {mso-style-name:"Table Normal"; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; mso-style-noshow:yes; mso-style-parent:""; mso-padding-alt:0in 5.4pt 0in 5.4pt; mso-para-margin:0in; mso-para-margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:10.0pt; font-family:"Times New Roman"; mso-ansi-language:#0400; mso-fareast-language:#0400; mso-bidi-language:#0400;}&lt;/style&gt; &lt;![endif]--&gt;  &lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-size: small;"&gt;&lt;b&gt;&lt;u&gt;&lt;span style="font-family: Calibri;"&gt;Steps to update all database tier nodes with the code level, provided by Oracle E-Business Suite Release 12.1.3:&lt;/span&gt;&lt;/u&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&gt;&lt;b&gt;Application tier&lt;/b&gt;:&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; • As the APPLMGR user, run the environment (UNIX) or the command (WINDOWS) file for the&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; current APPL_TOP.&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&gt;&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; UNIX&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; . ./$APPL_TOP/APPS CONTEXT_NAME.env&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&gt;&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; • Run AutoConfig on the APPL_TOP.&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&gt; &lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&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; • Run the admkappsutil.pl utility to create the file appsutil.zip in the &lt;inst_top&gt;/admin/out&amp;nbsp;&lt;/inst_top&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&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; directory.&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&gt; &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;&amp;nbsp; perl $AD_TOP/bin/admkappsutil.pl&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&gt;&lt;span style="font-size: small;"&gt;&lt;b&gt;Database tier:&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&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; • As the ORACLE user, run the environment (UNIX) or the command (WINDOWS) file for the current&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&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; ORACLE_HOME.&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&gt;&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; UNIX&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; cd $RDBMS ORACLE_HOME&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; . ./$RDBMS ORACLE_HOME/CONTEXT_NAME.env&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&gt;&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; • Copy or FTP the appsutil.zip file to the RDBMS ORACLE_HOME.&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&gt;&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; • Uncompress appsutil.zip under the RDBMS ORACLE_HOME. &lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&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; cd $ORACLE_HOME&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; unzip -o appsutil.zip&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&gt;&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; • Run AutoConfig on the $RDBMS ORACLE_HOME.&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&gt;&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; perl $ORACLE_HOME/appsutil/bin/adbldxml.pl&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; cd $ORACLE_HOME/appsutil/bin/&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; sh adconfig.sh&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&gt; &lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&gt; &lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&gt; &lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&gt;&lt;span style="font-size: small;"&gt;&lt;b&gt;Database tier and application tier:&lt;/b&gt;&lt;/span&gt;&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; • Re-run adpreclone.pl on the database tier and the application tier. Since updates included in&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;&amp;nbsp;&amp;nbsp; Oracle E-Business Suite Release 12.1.3 were applied to the system, adpreclone must be run&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;&amp;nbsp;&amp;nbsp; again to apply the updates to the clone directory structures that were used during cloning.&lt;br /&gt;&amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&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;&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; perl adpreclone.pl dbTier&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;&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; perl adpreclone.pl appsTier&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-size: large;"&gt;&lt;b&gt;&lt;span style="font-family: Calibri;"&gt;c) Disable Maintenance Mode&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-size: large;"&gt;&lt;span style="font-family: Calibri;"&gt;&lt;b&gt;d) Start all Application Services&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&gt;&lt;span style="font-size: small;"&gt;SQL&amp;gt; select release_name from fnd_product_groups;&lt;br /&gt;RELEASE_NAME&lt;br /&gt;--------------------------------------------------&lt;br /&gt;12.1.3&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&gt;&lt;span style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&gt;&lt;span style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&gt;&lt;span style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&gt;&lt;span style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&gt;&lt;span style="font-size: small;"&gt;***********************************************************************************&lt;/span&gt;&lt;/span&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;  &lt;w:WordDocument&gt;   &lt;w:View&gt;Normal&lt;/w:View&gt;   &lt;w:Zoom&gt;0&lt;/w:Zoom&gt;   &lt;w:PunctuationKerning/&gt;   &lt;w:ValidateAgainstSchemas/&gt;   &lt;w:SaveIfXMLInvalid&gt;false&lt;/w:SaveIfXMLInvalid&gt;   &lt;w:IgnoreMixedContent&gt;false&lt;/w:IgnoreMixedContent&gt;   &lt;w:AlwaysShowPlaceholderText&gt;false&lt;/w:AlwaysShowPlaceholderText&gt;   &lt;w:Compatibility&gt;    &lt;w:BreakWrappedTables/&gt;    &lt;w:SnapToGridInCell/&gt;    &lt;w:WrapTextWithPunct/&gt;    &lt;w:UseAsianBreakRules/&gt;    &lt;w:DontGrowAutofit/&gt;   &lt;/w:Compatibility&gt;   &lt;w:BrowserLevel&gt;MicrosoftInternetExplorer4&lt;/w:BrowserLevel&gt;  &lt;/w:WordDocument&gt; &lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;  &lt;w:LatentStyles DefLockedState="false" LatentStyleCount="156"&gt;  &lt;/w:LatentStyles&gt; &lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 10]&gt; &lt;style&gt; /* Style Definitions */ table.MsoNormalTable {mso-style-name:"Table Normal"; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; mso-style-noshow:yes; mso-style-parent:""; mso-padding-alt:0in 5.4pt 0in 5.4pt; mso-para-margin:0in; mso-para-margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:10.0pt; font-family:"Times New Roman"; mso-ansi-language:#0400; mso-fareast-language:#0400; mso-bidi-language:#0400;}&lt;/style&gt; &lt;![endif]--&gt;  &lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&gt;For instructions on applying Oracle E-Business Suite 12.1.3 Release Update Pack (12.1.3), features and other information, please refer to My Oracle Support Knowledge Document - 1080973.1&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&gt;*********************************************************************************************** &lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&gt;&lt;span style="font-size: small;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: Calibri; font-size: 11pt;"&gt; &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/1478036687830627925-6262148370336463097?l=appsdbaexperts.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://appsdbaexperts.blogspot.com/feeds/6262148370336463097/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://appsdbaexperts.blogspot.com/2010/12/upgrading-r1211-to-1233.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1478036687830627925/posts/default/6262148370336463097'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1478036687830627925/posts/default/6262148370336463097'/><link rel='alternate' type='text/html' href='http://appsdbaexperts.blogspot.com/2010/12/upgrading-r1211-to-1233.html' title='Upgrading R12.1.1 to 12.3.3'/><author><name>Vikram Singh</name><uri>http://www.blogger.com/profile/00122476821250599716</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1478036687830627925.post-8508426888292435559</id><published>2010-09-07T06:32:00.000-07:00</published><updated>2010-09-07T06:32:23.149-07:00</updated><title type='text'>Concurrent Processing Tuning</title><content type='html'>&lt;strong&gt;Definition of Concurrent Processing&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;A user’s interaction with Oracle Applications can be broadly divided into two categories: online transactions and batch processing. The batch job processing mechanism, known as Concurrent Processing, allows application users to schedule frequently used, long running, data intensive jobs in the background while the user interacts with online data entry applications. &lt;br /&gt;&lt;br /&gt;The concurrent processing function is performed by concurrent managers that act as a distributed job scheduling / execution system with sophisticated scheduling rules, including a rules engine that tracks known incompatibilities between jobs. It is common for a system to have multiple Concurrent Managers for improved throughput and conflict avoidance. When a user submits a report to be run as a concurrent request, the job enters a request queue. Concurrent Managers continuously read requests from this master queue and run requests based on the request’s schedule, priority and incompatible rules.&lt;br /&gt;&lt;br /&gt;The end users perception of how well concurrent processing is functioning is paramount. When they submit work, they expect it to enter a queue and wait for the smallest amount of time possible before being processed quickly, efficiently and accurately by the concurrent managers. Since the end users usual interaction with the system is through its high performance online transaction processing front end, they often have high expectations of processing time in the batch processing environment. It is the task of the system administrator to manage the system to get optimum performance from the system resources in order to deliver the best possible service to the end users. Concurrent managers are central to the concurrent processing function and are one of the most important and often the most feared process within Oracle's Applications. When a system administrator can not get a concurrent manager up and all of their production or testing is backing up, this is a very stressful time. &lt;br /&gt;&lt;br /&gt;&amp;nbsp; &lt;br /&gt;&lt;strong&gt;Concurrent Processing Overview&lt;/strong&gt; &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Oracle Applications Concurrent Processing is designed to act as an intermediary between Oracle Applications and the operating system. It is built on job processing facilities available on the operating system and is a technique to execute non-interactive, data-dependent programs simultaneously in the background (batch processing) thereby allowing users of Oracle Applications to submit jobs from within the application. Without the concurrent processing function, end users would have to leave the application to execute non- Oracle Forms programs such as Oracle Reports and probabilistic programs.&lt;br /&gt;&lt;br /&gt;Concurrent processing also allows the system administrator to control the volume and type of background tasks that are processed and provides the flexibility required to set up concurrent processing to fit the needs of individual sites and their users. It allows the administrator to custom design the processing schedule to meet the business’s daily and weekly processing load by allowing control over the number of active workers at all times. &lt;br /&gt;&lt;br /&gt;Because concurrent processing uses background processes that are not attached to any terminals, the processes continue to run even if all users sign off from the application. The advantage of this feature is to allow users of applications to submit jobs (usually CPU intensive ones) that start after hours when the load on the system is light.&lt;br /&gt;&lt;br /&gt;Parallel concurrent processing is an extension of concurrent processing that is sometimes used to provide resilience to concurrent processing and to provide a method of load balancing for an application server by allowing CPU to be shared across multiple servers. Because of the dependence on the availability of the database server, true resilience to all types of failure is hard to achieve unless parallel concurrent processing is combined with the Oracle Parallel Server to ensure that the database is not the single point of failure. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-size: large;"&gt;Components of Concurrent Processing&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-size: large;"&gt;&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;There are three key components in concurrent processing. These are &lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; • Concurrent Managers&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; • Concurrent Programs&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; • Concurrent Program Libraries&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Concurrent Managers&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Concurrent processing consists of a number of concurrent managers which act as administrators of job processing in Oracle Applications and employ workers at the operating system to process application user requests by running concurrent programs. Each manager can run any program or be specialised to run only certain programs.&lt;br /&gt;&lt;br /&gt;Users of Oracle Applications submit their requests to execute jobs to the concurrent managers. The concurrent managers will then take over and issue the commands necessary to execute the jobs at the operating system. Part of the concurrent manager definition is how many operating system processes (workers) it can devote to reading requests. This number is referred to as the manager's number of target processes.&lt;br /&gt;&lt;br /&gt;Concurrent managers operate during the time and days defined by a work shift. The number of target processes is defined for each work shift, or time definition of when the manager is enabled. For each target process, a manager can start one concurrent program. For example, if a manager is defined to have five target processes, it can run up to five jobs concurrently. The maximum number of target processes for each manager is user defined and depends on available system resources.&lt;br /&gt;&lt;br /&gt;The system administrator can define different work shifts so a manager runs a different number of processes, hence, runs a different number of concurrent programs concurrently, according to the day, time of day, and even specific dates.&lt;br /&gt;&lt;br /&gt;When users submit a request to the concurrent managers (for example, by running a report from the Run Reports form) the request will be uniquely identified by a request ID and will be inserted into a database table (FND_CONCURRENT_REQUESTS) which acts as a queue. The concurrent managers check this queue for new requests. A concurrent manager will read from this table only those requests allowed by the manager’s specialisation rules.&lt;br /&gt;&lt;br /&gt;You can define as many concurrent managers as you want. When you define a concurrent manager, you:&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;• Name, and if you wish, enter a description of your manager.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;•&amp;nbsp;Assign a predefined concurrent program library to your manager.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; • Assign work shifts to your manager, which determines what days and times the manager will work.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; • Define the maximum number of jobs (Target Processes) your manager can run concurrently per work&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;shift.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; • Specialise your manager to read only certain kinds of requests.&lt;br /&gt;&lt;br /&gt;From Oracle Applications Release 10.7 onwards, Oracle Applications consists of several types of concurrent managers. Key managers include the Internal Concurrent Manager (ICM), the Conflict Resolution Manager (CRM), ‘Product’ Concurrent Managers comprised of concurrent managers that let you execute application programs asynchronously and Transaction Managers that support asynchronous request processing from client machines. &lt;br /&gt;&lt;br /&gt;The Internal Concurrent Manager (ICM) is the administrator of concurrent processing, its function is to control other managers. The ICM starts up, verifies the status of, resets, and shuts down the individual managers. With the exception of the parallel concurrent processing options for the primary node, the basic definition of the ICM may not be altered, though it is possible to set the values used for sleep time, pmon cycle and queue size when the ICM is started.&lt;br /&gt;&lt;br /&gt;The Conflict Resolution Manager (CRM) performs the function of enforcing incompatibility rules. The basic definition of the Conflict Resolution Manager may not be altered apart from setting the CRM sleep time for each work shift and configuring parallel concurrent processing options if required. From Release 11i, another concurrent manager process called the Scheduler may also be used. The Scheduler is another single process, like the ICM and CRM that resolves complex scheduling problems&lt;br /&gt;&lt;br /&gt;Product Concurrent Managers (e.g. Standard, Inventory, MRP, PA, and any user defined managers) are the Concurrent Managers that run your jobs. They run concurrent requests, reports and processes. The Standard Manager shipped with Oracle Applications accepts any and all requests as it has no specialisation rulesand is active all the time that the application is available. To best use the features of manager specialisation, you should exclude (disallow) jobs from the Standard Manager only when you have ensured that they can be run by a different manager. If you alter the definition of the Standard Manager and you have not defined additional managers to accept your requests, some programs may not run. &lt;br /&gt;&lt;br /&gt;Transaction managers enable concurrent processing to support synchronous request processing. This approach was developed for the release 10 SmartClient architecture as an alternative to embedding user exits, implemented in C, in the Oracle Forms executable which would have resulted in an excessive load on the network and growth in the size of the Oracle Forms executable for every routine linked to it which, in turn, would have impacted client processing performance. In a web based configuration, from Release 11 onwards, they serve a similar purpose for the Forms Server and give a way for PL/SQL to call out to server side C packages like Vertax.&lt;br /&gt;&lt;br /&gt;With this approach Oracle Applications can run synchronous processes on the concurrent processing server: a request from a client session to run a program makes a transaction manager run it immediately (synchronously) and then returns a status to the client program.&lt;br /&gt;&lt;br /&gt;Transaction programs are coded as a special type of immediate concurrent program. Transaction managers are built as concurrent program libraries that contain these special immediate concurrent programs. The Internal Concurrent Manager starts these managers at run time. Rather than polling the FND_CONCURRENT_REQUESTS table, these managers wait to be signalled from the client FND_TRANSACTION package.&lt;br /&gt;&lt;br /&gt;The execution of the requested transaction program takes place on the server, transparent to the client and with minimal time delay. At the end of program execution, the client program is notified of the outcome by a completion message and a set of return values.&lt;br /&gt;&lt;br /&gt;The transaction manager mechanism does not establish an ongoing connection between the client and the transaction manager processes. Instead, a small pool of server side transaction manager processes service a large number of clients with real-time response. &lt;br /&gt;&lt;br /&gt;Each transaction manager can process only the programs contained in its program library. Transaction programs and executables are defined using the Concurrent Programs form and the Concurrent Program Executable form respectively. Programs are written in C or Pro*C and are executed as immediate concurrent programs. &lt;br /&gt;&lt;br /&gt;Each transaction manager is owned by an application and is associated with a particular data group. When a transaction request is made, the requested program’s applications and the current responsibility’s data group are used to select the transaction manager to service the request. The transaction manager uses its data group to determine how to connect to the database, connecting to the appropriate schema at startup and remaining connected until the manager process exits. Each transaction manager can only process those requests submitted from responsibilities associated with its data group. All transaction programs run by a given transaction manager process are run in the same database session.&lt;br /&gt;&lt;br /&gt;Note: The creation of custom transaction programs is not supported. &lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;u&gt;Parallel concurrent processing and concurrent managers&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;With parallel concurrent processing, one or more managers can run on one or more nodes (where a node consists of one or more processors (CPUs) and it’s associated memory that is not shared with other nodes and where each node operates independently of other nodes except when sharing resources). You can run multiple managers on multiple nodes using parallel concurrent processing, and you can provide fault tolerance for concurrent managers by using secondary nodes. &lt;br /&gt;&lt;br /&gt;The location of concurrent managers is defined during system configuration. By setting the specialisation rules of the concurrent managers on a given node, the system administrator can determine which concurrent programs will run on that node. Each node with concurrent managers may or may not be running an Oracle instance. On a node that is not running Oracle, the concurrent managers connect using SQL*Net to a node that is running Oracle.&lt;br /&gt;&lt;br /&gt;A primary and a secondary node are assigned to each concurrent manager. Each concurrent manager is started initially on its primary node. In case of node or Oracle instance failure, the concurrent manager migrates to its secondary node, migrating back to its primary node once that node again becomes available. During the migration, the processes of a single concurrent manager may be spread across both its primary and secondary nodes.&lt;br /&gt;&lt;br /&gt;The high fault tolerance that is required within this distributed environment to keep the Internal Concurrent Manager active is provided through Internal Monitor Processes. The sole job of an Internal Monitor process is to monitor the Internal Concurrent Manager and to restart that manager if it fails. The first Internal Monitor Process to detect the failure of the Internal Concurrent Manager restarts the Internal Concurrent Manager on its own node. The system administrator decides which nodes have an Internal Monitor Process when the system is configured. Each Internal Monitor Process may also be assigned a primary and secondary node to ensure its protection. Internal Monitor Processes, like concurrent managers, can have assigned work shifts and are activated and deactivated by the Internal Concurrent Manager.&lt;br /&gt;&lt;br /&gt;The same form is used to define a parallel manager that is used to define a regular concurrent manager. The fields in the Parallel Concurrent Processing Details region specify the node and other parallel processing information. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Parallel concurrent processing may be used across multiple nodes in a cluster, massively parallel, or homogeneous networked environment:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;• In a cluster environment, parallel concurrent processing enables full use of processing resources and increases throughput in multinode environments. Multiple computers each representing a single node share a common pool of disks. Typical cluster environments include IBM HACMP, VAX Cluster, or a cluster of Sequent servers. In this environment, a single Oracle database resides in the common disk pool while multiple instances of Oracle Parallel Server run simultaneously on multiple nodes in the cluster. Multiple concurrent managers can be distributed across the nodes in a cluster. &lt;br /&gt;&lt;br /&gt;• In a massively parallel environment, multiple nodes are housed in a single computer with all nodes sharing access to a common pool of disks. For example, the IBM SP/2 is a massively parallel computer. In this environment, separate Oracle Parallel Server (OPS) instances run simultaneously on multiple nodes. Multiple concurrent managers can be distributed across the nodes in a massively parallel computer. &lt;br /&gt;&lt;br /&gt;• In a homogeneous networked environment, multiple computers of the same type may be connected using a local area network (LAN) to a single database server or to a cluster of database servers. Alternatively, each node could have its own OPS instance.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Concurrent Programs&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Concurrent Programs are programs that run concurrently with other programs as background processes while you continue to work at your terminal. They may be written in Oracle Tools: PL/SQL, SQL*Loader, SQL*Plus, Pro*C and Oracle Reports or the host scripting language.&lt;br /&gt;&lt;br /&gt;Concurrent managers can only take requests to execute concurrent programs. Once a request is picked up by a manager, the manager needs to know some information about the job in order for it to execute, for example information such as program name, execution method (Pro*C, Oracle Reports, etc.) and arguments. The information required for concurrent managers to execute the program is stored in database tables when the program is defined as a concurrent program or modified through the Application Object Library product. A concurrent program that runs in the same process as the concurrent manager that starts it is known as an immediate program, a concurrent manager initiates or spawns another operating system process for a program that is spawned.&lt;br /&gt;&lt;br /&gt;When defining a concurrent program the application developer needs to configure how the program is invoked and run. &lt;br /&gt;&lt;br /&gt;This process includes the following:&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; • Selecting an executable file to run the program.&lt;br /&gt;&amp;nbsp;&amp;nbsp; •&amp;nbsp;Choosing the execution method for the program (when defining your executable in Define Concurrent&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;Program Executable).&lt;br /&gt;&amp;nbsp;&amp;nbsp; • Defining parameters for the program, if any.&lt;br /&gt;&amp;nbsp;&amp;nbsp; • Defining printing information.&lt;br /&gt;&amp;nbsp;&amp;nbsp; • Specifying any incompatible programs that must not run while the program runs&lt;br /&gt;&amp;nbsp;&amp;nbsp; • Choosing whether to allow users to run this report from the Run Reports form or from within a form. If &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; the latter option is chosen, the form from which you want to kick-off your program needs to be modified. &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If the first option is chosen, the program needs to be added to a report security group.&lt;br /&gt;&lt;br /&gt;*****The appropriate Oracle documentation includes a full description of the steps required for this.****&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Concurrent Program Libraries&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;A program library contains programs that can be called by the manager when concurrent managers are in operation. The workers (the OS background processes) of concurrent managers are the running instances of these program library executables.&lt;br /&gt;&lt;br /&gt;Each concurrent manager can only run immediate concurrent programs from its own program library. In addition to this, it can run any spawned or Oracle Tool concurrent programs as spawned processes.&lt;br /&gt;&lt;br /&gt;The system administrator may create a concurrent program library and assign it to a manager, or link in bespoke immediate program(s) to one of the existing program libraries. The advantage of linking in programs to a program library is, the assigned manager does not have to spawn another process to execute your job, hence, it will be faster to process&lt;br /&gt;&lt;br /&gt;To create a new concurrent program library, the application developer / system administrator needs to perform various steps including:&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; • Creating the immediate programs&lt;br /&gt;&amp;nbsp;&amp;nbsp; • Defining the concurrent program executable&lt;br /&gt;&amp;nbsp;&amp;nbsp; • Defining the concurrent programs&lt;br /&gt;&amp;nbsp;&amp;nbsp; • Defining the concurrent program library&lt;br /&gt;&amp;nbsp;&amp;nbsp; • Assigning the program library to a manager&lt;br /&gt;&lt;br /&gt;****The appropriate Oracle documentation includes a full description of the steps required for this. ****&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-size: large;"&gt;Concurrent Processing Life Cycles&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Concurrent Processing Life Cycles&lt;/strong&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; To understand the internal workings of concurrent processing, it is important to be familiar with the life cycle of the concurrent managers from their startup to shutdown and the life cycle of a concurrent request in terms of the way that requests are processed by managers.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;The Concurrent Manager Life Cycle&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;The concurrent Manager Life Cycle begins when the Concurrent Manager is initiated and finished when the concurrent manager is shutdown.&lt;br /&gt;&lt;br /&gt;Starting Concurrent Managers&lt;br /&gt;&lt;br /&gt;The system administrator activates individual concurrent managers using the Administer Concurrent Managers form. The Internal concurrent manager must be active for an individual manager to be activated.&lt;br /&gt;&lt;br /&gt;When the Internal concurrent manager is activated, it starts up all concurrent managers other than those that have been “deactivated” through use of the Administer Concurrent Manager screen. It can be activated from the Administer Concurrent Managers form in character mode, from the operating system or, from Release 11 onwards, via the Oracle Enterprise Manager and the Oracle Applications Manager. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;When activating the ICM from the Administer Concurrent Managers form or from the operating system, the program that starts the managers is "startmgr" (located in FND_TOP/bin). &lt;br /&gt;&lt;br /&gt;The startmgr script inherits the variables that are set in the environment where it was started and does not invoke the applications environment file. It is therefore important to ensure that the correct environment variables are set when the startmgr command is invoked. Once the concurrent manager is running, it is possible to use the FNDPRNEV concurrent program that is included in the Oracle Applications software set to check the variables that the concurrent manager is using. The variables in use are listed in the output from the program. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;The startmgr script changes to the directory required to create the manager log files then calls batchmgr.&lt;br /&gt;&lt;br /&gt;The batchmgr script starts up a shell process (the parent of all concurrent manager processes if parallel concurrent processing is not in use) then starts the Internal Concurrent Manager process FNDLIBR FND CPMGR FNDCPMBR where FNDLIBR is the command and FND, CPMGR, and FNDCPMBR are the arguments. It then creates manager log files (std.mgr and W files) in the $APPLLOG directory in $APPLCSF or $FND_TOP dependent on whether $APPLCSF is set.&lt;br /&gt;&lt;br /&gt;On&amp;nbsp;NT, the concurrent processing is implemented as a service. To start the concurrent manager, Enter the Control Panel, click on the Services icon, find the concurrent manager service, select it, and then click start. As the concurrent manager service starts, it invokes a batch file with a name in the format cm_SID.cmd in the FND_TOP/bin directory. This file sets all the required variables such as log file destinations, and values for pmon, sleep and quesiz. The Oracle Applications Installation manual for NT covers this in more detail. &lt;br /&gt;&lt;br /&gt;Once ICM is started, it starts up the Conflict Resolution Manager (CRM), then starts other managers based on their work shift. The ICM reads from FND_CONCURRENT_QUEUES and FND_CONCURRENT_QUEUE_SIZE to get information about defined concurrent managers and their work shift. For every concurrent manager, the ICM starts as many OS processes as defined in MAX_PROCESSES field in the FND_CONCURRENT_QUEUES table. The maximum number of requests a manager can run at a time depends on its work shift. The number of processes started is the target processes. &lt;br /&gt;&lt;br /&gt;When the concurrent managers are running, they create a program library process on the concurrent processing server(s). One FNDLIBR process appears for the ICM and each of the generic ‘Standard’ concurrent manager processes. The CRM process appears as FNDCRM, the inventory manager appears as INVLIBR and the manufacturing manager appears as MFGLIBR. On Unix, you can locate the FNDLIBR processes by running the ps – ef | grep FNDLIBR command. On NT, you can check the task manager under the process tab to see the FNDLIBR processes.&lt;br /&gt;&lt;br /&gt;The ICM inserts a row into FND_CONCURRENT_PROCESSES for every process started at the operating system, as well as one for itself. The ICM then updates the RUNNING_PROCESSES column to reflect the actual running processes in FND_CONCURRENT_QUEUES. When all managers are running, RUNNING_PROCESSES (actual) will match MAX_PROCESSES (target). For all of the managers that are successfully started the ICM changes the CONTROL_CODE column from A:Activate to null in FND_CONCURRENT QUEUES and sets the PROCESS_STATUS_CODE in FND_CONCURRENT_PROCESSES to A:Active. Each entry in FND_CONCURRENT_PROCESSES identifies the OS process id (PID), the Oracle process id and the process status code. A shadow process is created on the database server for each concurrent manager process. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;If parallel concurrent processing is in use, you can activate parallel managers by issuing an activate command against the Internal Concurrent Manager from the Administer Concurrent Managers form in character mode, invoking the startmgr command from the operating system prompt or, from Release 11 onwards, by using the Oracle Enterprise Manager and the Oracle Applications Manager. The ICM starts up on its assigned node (assuming that you operate from a node whose platform supports remote process start-up) regardless of the node from which you activate it. The Internal Concurrent Manager then starts up all the Internal Monitor Processes required to ensure that each of the nodes in use are operational and uses dcpstart and dcpbatch to start the concurrent managers on each of the remote nodes.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;u&gt;Shutting Down Concurrent Managers&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;u&gt;&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;Individual concurrent managers can be deactivated using the Administer Concurrent Managers form.&lt;br /&gt;&lt;br /&gt;All the concurrent managers (and internal monitor processes in a distributed environment) will be deactivated when the ICM shuts down. The ICM can be deactivated from either the Administer Concurrent Managers form (in character mode only) or from the operating system using the CONCSUB utility which returns to the operating system before or after the request completes depending upon the value of the token WAIT. Example syntax is as follows:&lt;br /&gt;&lt;br /&gt;$CONCSUB username/password SYSADMIN ‘System Administrator’ SYSADMIN WAIT=Y CONCURRENT FND ABORT&lt;br /&gt;&lt;br /&gt;When shutting down the ICM, you can deactivate the concurrent manager to invoke a normal shutdown or you can terminate requests and deactivate the manager to invoke a shutdown abort. If you perform a normal shutdown using deactivate, the ICM will wait for running processes to complete. It sets the max_processes column of FND_CONCURRENT_QUEUES to 0 for each manager so that they see that they should exit, then it updates FND_CONCURRENT_PROCESSES and FND_CONCURRENT_QUEUES.&lt;br /&gt;&lt;br /&gt;If you use terminate to perform a shutdown abort, the ICM will terminate running processes then perform the same steps as before. &lt;br /&gt;&lt;br /&gt;On NT, the concurrent manager is shutdown using the Administer Concurrent Managers form or by entering the Control Panel, clicking on the Services icon, finding the concurrent manager service, selecting it, then clicking stop. As the service closes it invokes a batch file in the FND_TOP/bin directory with a name in the format cs_SID.cmd and terminates any running requests&lt;br /&gt;Once all the managers are down all concurrent OS processes are exited including shadow processes.&lt;br /&gt;&lt;br /&gt;The PROCESS_STATUS_CODE in FND_CONCURRENT_PROCESSES is set to "S" to denote a normal shutdown or “K” to denote a shutdown abort and RUNNING_PROCESSES in FND_CONCURRENT_QUEUES is set to 0&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;u&gt;The Concurrent Process Life Cycle&lt;/u&gt;&lt;/strong&gt; &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Each concurrent request has a life cycle, proceeding through three, possibly four, stages or phases:&lt;br /&gt;&lt;br /&gt;• Pending&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;&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; The request is waiting to be run&lt;br /&gt;&lt;br /&gt;• Running&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;&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; The request is running&lt;br /&gt;&lt;br /&gt;• Completed&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;&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; The request has finished&lt;br /&gt;&lt;br /&gt;• Inactive&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;&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; The request cannot be run&lt;br /&gt;&lt;br /&gt;&amp;nbsp; &lt;br /&gt;*** Check the Oracle Documentation for detailed discription of each phase **** &lt;br /&gt;&amp;nbsp; &lt;br /&gt;&lt;strong&gt;&lt;u&gt;How requests are processed by the managers&lt;/u&gt;&lt;/strong&gt; &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Normal concurrent programs (programs with no constraints, QUEUE_METHOD_CODE set to ‘I’ in FND_CONCURRENT_PROGRAMS) are submitted with a status of ‘Pending Normal’ and are picked up by individual managers with no involvement from the Conflict Resolution Manager.&lt;br /&gt;&lt;br /&gt;The number of requests that each concurrent manager process can remember when reading form the concurrent request queue is determined by the managers request cache, sometimes referred to as a buffer. The purpose of this cache is to reduce the number of hits on the concurrent requests table and reduce the probability of a manager being put to sleep because of row locks on the concurrent requests table or races with another manager to start the same request. &lt;br /&gt;&lt;br /&gt;Each manager performs a cycle of work as follows:&lt;br /&gt;&lt;br /&gt;1. The manager checks to see if it should shut itself down&lt;br /&gt;2. If necessary, the manager shuts itself down, then exits&lt;br /&gt;3. The manager reads theApplication user requests from the FND_CONCURRENT_REQUESTS table &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; and checks the application_id etc. to find the highest priority Pending / Normal requests that satisfy the &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; managers specialization rules and fills its cache as much as possible. When the manager process caches a &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; request, it does not lock the request, nor does it remove it from the queue. Pending requests that are &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; cached are still available to other managers. &lt;br /&gt;4. The manager attempts to process requests in its cache serially, skipping any that have become locked, &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; running or completed since they were selected. For each request that it runs, the manager reads the &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; requests program definition and parameters (FND_CONCURRENT_PROGRAMS) and initiates the &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; commands necessary to execute the requested program.&lt;br /&gt;5. If the manager is not able to run any requests during its cycle, it will sleep for the full amount of specified &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; sleep time then return to step 1 above.&lt;br /&gt;6. If the manager is able to run one or more requests in the cycle then it will skip the sleep period for that &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; cycle and immediately return to step 1 above.&lt;br /&gt;&lt;br /&gt;&amp;nbsp; &lt;br /&gt;&lt;strong&gt;&lt;u&gt;Performance Problems&lt;/u&gt;&lt;/strong&gt; &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Users perception of performance is key. If a job is not progressing and there are no visible warnings or errors in the log files, then the immediate reaction of the end user is to assume that the application is running slow again and that performance is bad. In the eyes of the end user, poor performance is synonymous with work not being completed within the bounds of their expectations.&lt;br /&gt;&lt;br /&gt;The task of the system administrator is to proactively manage the environment to prevent conditions arising that would create a performance degradation and monitor and resolve exceptions that could lead to problems while work is on-going.&lt;br /&gt;&lt;br /&gt;If users perceive that performance is poor, the system administrator should work with them reactively to identify the scope of the problem in terms of its business impact, frequency, extent and precise nature. When defining the problem in this way, the system administrator should ensure that the problem definition is accurate and complete. A problem that is initially reported as a performance problem with one individual report could relate to that report alone, the Oracle Reports tool and the way that all such reports are handled, missing indexes in the database, network access to the database in a distributed environment, or poor performance of the database itself or nodes running either the database or concurrent processing. Use of the performance methodology guidelines should assist with definition of the key problem areas and identify areas for initial investigation.&lt;br /&gt;&lt;br /&gt;In the area of concurrent processing, it is wise to take a broad view of the potential problem areas first then narrow the areas for investigation by using the evidence of the problem to dismiss those that are not causing concern. &lt;br /&gt;&lt;br /&gt;Upon receipt of a report of poor performance within concurrent processing, the system administrator should satisfy himself that the problem is not symptomatic of a general performance problem in terms of a degradation of all work that that is either accessing the database or running on specific individual machine nodes. The first of these would indicate that the database, network and server stacks should be used collectively to ensure that database traffic is being dealt with in the optimum way. The second would indicate that the server stack should be used initially to investigate the machine performance with subsequent investigation of the load placed on the machine by the concurrent manager if the node in question was used by concurrent processing.&lt;br /&gt;&lt;br /&gt;Once the system administrator has ensured that the problem is related to concurrent processing, it is important to identify whether all types and phases of concurrent processing are affected or whether the type of concurrent problem can be categorised by the concurrent processing phase in which the problem manifests itself. For the purposes of categorisation, four distinct phases may be identified:&lt;br /&gt;&lt;br /&gt;• Delays may occur during the job submission phase that is after the user has submitted the request, while it is&lt;br /&gt;&amp;nbsp;&amp;nbsp;waiting to be executed by a concurrent manager.&lt;br /&gt;&lt;br /&gt;• Once a concurrent manager has picked up a request and started to run it, requests may experience &lt;br /&gt;&amp;nbsp;&amp;nbsp; problems while they are ‘running’. These requests may be referred to as low performance jobs.&lt;br /&gt;&lt;br /&gt;• If the request fails, users may experience delays in the time taken for the concurrent managers to identify &lt;br /&gt;&amp;nbsp; that a problem has occurred and process the error resulting in delays in termination of the request or job.&lt;br /&gt;&lt;br /&gt;• Whether requests complete successfully or not, users may find that the amount of time that it takes to view &lt;br /&gt;&amp;nbsp;&amp;nbsp; any associated output or log files is unreasonably long, causing problems in ‘output retrieval’.&lt;br /&gt;&lt;br /&gt;If the system administrator finds that users are reporting problems simultaneously in all the phases that have been identified, the problem should be initially investigated in terms of the configuration that is in use. If parallel concurrent processing is in use with problems being experienced on concurrent processing nodes that are remote from the database server the network stack should initially be used to investigate the connection between the processing nodes and the database server. Subsequent investigation of the database and server stacks may also be worthwhile to investigate the database performance. If the database server is being used for concurrent processing and problems are experienced on this server, the database connection method should be checked to ensure that access to the database is direct. After that, the database and server stacks should be used for further investigation, including investigation of the load placed on the machine by the concurrent processing itself.&lt;br /&gt;&lt;br /&gt;&amp;nbsp; &lt;br /&gt;&lt;strong&gt;&lt;u&gt;Identifying and Managing Delays in Job Submission&lt;/u&gt;&lt;/strong&gt; &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;If users report delays in the job submission process, it is important to first ascertain that all the concurrent managers are available and running correctly. To do this, the system administrator should ensure that the managers are running by checking that the values for target and actual processes in the Administer Concurrent Managers form are equal to each other and greater than zero or by running the afimchk.sql script that is supplied with Oracle Applications in the sql directory of the FND directory tree. From Release 11 onwards, the process monitor method used for concurrent processing must be LOCK, in this case the form which uses the lock package will be more accurate than the afimchk.sql script which uses the v$tables to find the manager status. The log files for each of the concurrent managers including the ICM and CRM should also be checked to ensure that there are no operational problems. If any of the concurrent managers have failed appropriate remedial action should be taken.&lt;br /&gt;&lt;br /&gt;Once the system administrator has ascertained that all managers are functioning correctly, the administrator should then ensure that the concurrent processing options that have been set do not prevent the request from running.&lt;br /&gt;&lt;br /&gt;The users request may not run if:&lt;br /&gt;&lt;br /&gt;• The requested start is set at a future date and time.&lt;br /&gt;• The request is on hold.&lt;br /&gt;• The request has a lower priority than other jobs with the same start date and time.&lt;br /&gt;• The concurrent program that is requested is not enabled &lt;br /&gt;• No concurrent manager is defined to run the request.&lt;br /&gt;• The concurrent manager defined to run the request is not available in the current work shift.&lt;br /&gt;• The Concurrent Active Request Limit profile option available from release 11 onwards has been set to limit &lt;br /&gt;&amp;nbsp;&amp;nbsp; the number of active concurrent requests.&lt;br /&gt;• The Concurrent Sequential Requests profile option has been set to ensure that requests are run serially.&lt;br /&gt;• A concurrent manager is already running a request that is run alone or incompatible within the same conflict &lt;br /&gt;&amp;nbsp; domain as the users request.&lt;br /&gt;• The request is run alone and other requests are still running.&lt;br /&gt;• The request is part of a report set where earlier stages have not completed successfully or incompatible &lt;br /&gt;&amp;nbsp;&amp;nbsp; programs are delaying the request within the same conflict domain.&lt;br /&gt;&lt;br /&gt;If the system administrator can not identify any reason why an individual job should not run and concurrent managers are running requests from other users, but have just not attempted to process the users request, there are various options available to the system administrator. These range from altering the position of individual jobs in the queue to improve the users perception of the amount of time that a request is queuing to increasing the number of manager processes that are running to increase potential concurrent processing capacity subject to the performance of the concurrent processing nodes. There are also various ways in which the system administrator can improve the throughput of existing concurrent managers.&lt;br /&gt;&lt;br /&gt;The system administrator can reprioritise requests that are in the queue by using the form for reviewing concurrent requests. Changing the priority of the request by lowering the value of the priority assigned to it will alter the requests position in the job queue causing it to run sooner, but will not enable the job to get more resources when it runs. This type of task should therefore only be seen as a reactive measure to deal with ad hoc jobs that are not being processed by the concurrent managers as soon as individual users would like. Before proceeding with any reprioritisations, the system administrator should ensure that there is a business case for allowing the request to be escalated in the queue. If escalation is justifiable, the afcmcreq.sql script that is shipped with Oracle Applications in the FND_TOP/sql directory should be used to identify managers that would run the request and the system administrator should then ensure that they are available to run the job.&lt;br /&gt;&lt;br /&gt;Repeated, justifiable requests from end users to alter the priorities of particular types of work should be taken as an indication that the overall workload of the concurrent processing servers should be the subject of a detailed investigation to ascertain whether an alternative strategy of concurrent manager balancing or queue specialisation should be implemented.&lt;br /&gt;&lt;br /&gt;One disadvantage of using the mechanism of reprioritisation to appease users is that in some cases the concurrent manager may run a lower priority request before a request that has been reprioritised to start earlier. The number of requests that a concurrent manager remembers each time it reads from its queue of waiting concurrent requests is defined by the concurrent managers buffer size or cache. If a user reprioritises a request after a concurrent manager has looked at its queue, that new request must wait until the concurrent manager, or another concurrent manager, processes all the requests in its buffer. Once a concurrent manager completes all the requests in its buffer, it returns to look for the next set of waiting requests. Decreasing the buffer size assigned to the manager using the Define Concurrent Managers form and resetting the concurrent manager to ensure that the change takes effect ensures that the concurrent manager finds and starts priority requests sooner. The disadvantage of this is that the concurrent manager will spend slightly more time reading its queue instead of running requests. &lt;br /&gt;&lt;br /&gt;If investigations suggest that delays in job submissions are related to the rate at which individual managers are able to select new work from the queue in the FND_CONCURRENT_REQUESTS table, it is tempting to try to increase the rate of throughput per concurrent manager. Dependent on the nature of the requests that are queuing in the table, the manager may be prevented from entering a sleep cycle by increasing the buffer size from the default value of 1 to ensure that it always find work in its buffer. Alternatively, the buffer size may be left at its default value and the number of seconds allocated to sleep time may be reduced thereby reducing the sleep time incurred when the manager finds on work to perform in its buffer. Both these changes could increase the throughput of the concurrent manager, at the cost of putting more workload on the concurrent processing server and increasing the likelihood of the concurrent managers locking each other out. Before implementing any changes that increase the work rate of individual managers in this way, the system administrator should be sure that the concurrent processing node is capable of performing the additional workload and that the volume and mix of the concurrent request workload warrants the change. For example, if the work rate of a concurrent manager is increased by eliminating or reducing the time that it sleeps between searching for requests in the request queue when there are no suitable requests waiting to be processed, the concurrent manager will place additional load on the server just by continuously scanning the queue in an attempt to find work.&lt;br /&gt;&lt;br /&gt;As a rule of thumb, the default buffer size of 1 should be used so that reprioritisations can be noticed and requests run accordingly unless you have a manager that needs to service many short running (less than a minute) requests. (In release 10, the buffer size field was eliminated from the concurrent manager's definition screen by mistake however, the value may be changed in the database using the cache_size value in the FND_CONCURRENT_QUEUES table).&lt;br /&gt;&lt;br /&gt;For a mixed workload, the sleep time for managers should never be less than the sleep value set for the CRM (or ICM if it is used) so that they do not run faster than the CRM. However, if the majority of requests on the system are submitted as ‘Pending Normal’ rather than ‘Pending Standby’, it might be best to set the managers with a smaller sleep time than the CRM.&lt;br /&gt;&lt;br /&gt;If investigations show that there are simply not enough concurrent managers to handle the concurrent processing workload, it is possible to run more requests simultaneously by using the Define Concurrent Manager form to add more concurrent managers or increase the number of requests that your existing concurrent managers can run. These changes take effect after you reset the concurrent managers. Although increasing these two options can decrease the time that you wait for pending requests to start, they can also increase your system workload thereby increasing the amount of time each request takes to complete and degrading overall performance. Such amendments should be made in a controlled fashion after fully investigating the impact on the machine and considering aspects of concurrent manager balancing and queue specialisation that are discussed later. &lt;br /&gt;&lt;br /&gt;&amp;nbsp; &lt;br /&gt;&lt;strong&gt;&lt;u&gt;Identifying, Managing and Resolving Low Performance Jobs&lt;/u&gt;&lt;/strong&gt; &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;If users report poor performance in requests that seem to be running, it is important to first ensure that there are no errors in the log files and that requests have not been wrongly left in a ‘Running’ status by a dead (abnormally exited) manager process that has not (yet) been detected by the ICM. When the ICM is operating correctly, it checks for the heartbeat of active manager processes during its pmon cycle and looks for abnormally terminated concurrent managers. If the pmon cycle is set too high, there may be a delay in finding dead manager processes. If the ICM fails, requests may be wrongly left in a ‘Running’ status after the manager has failed. Check that the ICM is active running by reviewing the Administer Concurrent Managers form and checking that the actual and target processes are both set to 1 or by running the afimchk.sql script in the FND_TOP/sql directory. Also ensure that the pmon cycle time is set at a reasonable level to detect problems in a timely fashion.&lt;br /&gt;&lt;br /&gt;A request may also be suspended in a running state if:&lt;br /&gt;&lt;br /&gt;• The request requires a row or table that is locked by another user&lt;br /&gt;• The temp directory is full&lt;br /&gt;• The request has become a runaway request where Oracle or Unix has lost track of the request.&lt;br /&gt;&lt;br /&gt;If the request genuinely seems to be running more slowly than would normally be expected, check the parameters that users entered to ensure that they are not inadvertently running open-ended reports that provide more information than they intend to retrieve. Review any timings in the request log file to see if they seem reasonable. &lt;br /&gt;&lt;br /&gt;If the request log file indicates that there are some parts of the request that seem to run particularly slowly, try to identify problematic SQL using trace to reproduce the problem if possible. If you can identify individual statements that are causing problems, use the SQL Tuning stack to investigate them further.&lt;br /&gt;&lt;br /&gt;If the whole request seems to be slow, investigate whether this is part of a general trend. Determine whether there are other requests that are performing badly and identify any characteristics that they have in common. &lt;br /&gt;&lt;br /&gt;Consider whether performance problems are timebound or related to individual work shifts. If there are peaks and troughs in performance throughout the working day, review the workload on the machines at key times. Review the concurrent processing workload and any other work that the machine performs at key times. Investigate the possibility of balancing online and concurrent processing workload through techniques of concurrent manager balancing and queue specialisation described in detail below.&lt;br /&gt;&lt;br /&gt;If the problem seems to be associated with requests that are being processed through the transaction managers, use the network stack to investigate the network between the forms server and the concurrent processing server. Ensure that network traffic between these two points is being dealt with in the optimum way.&lt;br /&gt;&lt;br /&gt;If the problem is restricted to individual users or responsibilities and you are using Oracle Applications Release 11i, check your use of the cost based optimiser to ensure that you are following best practices.&lt;br /&gt;&lt;br /&gt;If the problem seems related to individual tools or standard reports, check for known performance problems through Oracle Support Services. Report any performance problems with standard requests to Oracle Support Services and investigate problems with custom code in-house. &lt;br /&gt;&amp;nbsp; &lt;br /&gt;&lt;strong&gt;Identifying and Managing Delays in Job Termination&lt;/strong&gt; &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;As with problems involving poor performing requests, it is important to ensure that the ICM is operational to resolve any issues with requests that have failed and need to terminate. On receiving reports of requests taking a long time to terminate, the system administrator should ensure that the ICM is active running and that the pmon cycle time is set at a reasonable level to detect problems in a timely fashion.&lt;br /&gt;&lt;br /&gt;Once the concurrent job has indicated an intention to rollback, the database server takes over and controls the rollback. Performance problems in this area will therefore be related to the rollback activity itself in terms of rollback configuration or general database performance. Performance of the network is not an issue as the rollback activity is contained on the database server. There is therefore no need to investigate the nodes that are running the request or network performance. &lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;u&gt;Identifying and Resolving Delays in Output Retrieval&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;The System Administrator and Oracle Alert Manager responsibilities have a 'privileged' version of the View Concurrent Requests form or window that allows them to view the status of, and log files for, all concurrent requests, including those that have completed unsuccessfully, and to perform various administrative tasks on concurrent requests. Other responsibilities can manage and view their own report output online, but they cannot view report output from other users' requests.&lt;br /&gt;&lt;br /&gt;You display the Requests window by choosing View Requests from the Help menu. This window lists all your concurrent requests. Pressing the Diagnostics button displays the Request Diagnostics window, which presents summary information about an individual request in a Cause and Action format.&lt;br /&gt;&lt;br /&gt;If you are working in a SmartClient environment and you saved the output file for your concurrent request, you can view your completed report online, reprint it and copy it to the client machine. From release 10.7 onwards, the recommended method is to use the Report Review Agent.&lt;br /&gt;&lt;br /&gt;When you generate a report, the report output file is saved to the server’s file system. You can output to a printer directly attached to the server and avoid any network traffic. Or, you can take advantage of Report Review Agent, the Remote Procedure Call - based online report viewer, which takes advantage of RPC functionality which is available with Oracle7 Server 7.3.2 onwards and is designed to be lighter on network traffic. &lt;br /&gt;&lt;br /&gt;The RPC-based viewer supports both character and Postscript formatted reports. You issue a request to run a concurrent request on the 10SC client. This request is picked up by the standard concurrent processing facility and run. The request writes a log file and, where appropriate, a report file to the application server's disk. When you invoke the online report viewer, Oracle Applications makes a remote procedure call (RPC) to initiate a report review agent on the server. The report review agent on the server checks the report to determine whether it is a character or a Postscript report. &lt;br /&gt;&lt;br /&gt;If it is a character report, the report review agent opens the report output or log file you have asked to see and transmits the first page across the network to the client-side viewer. You can then request the next, first or last page, or any page number you want to view, and the report review agent will locate and transmit only that page across the network. You can request to have the entire file downloaded to your PC client, subject to size restrictions set by your system administrator through a profile option, saving it to a file name of your choosing. &lt;br /&gt;&lt;br /&gt;If the report is Postscript, the review agent downloads the entire file to your PC and invokes whatever editor is defined in the postscript editor profile option. &lt;br /&gt;&lt;br /&gt;Once a report is downloaded to your PC client, you can choose to view it with a desktop tool such as Word or Excel, or to print it to a local printer.&lt;br /&gt;&lt;br /&gt;&amp;nbsp;It is possible to set up custom editors to specify a desktop product such as Word or Excel as your default viewer by setting some user profile options, but this causes an automatic download of the entire report to a temporary directory on your PC before you can view it with your desktop product and thus produces more network traffic than viewing a page at a time with the RPC-based viewer.&lt;br /&gt;&lt;br /&gt;All file transfers are subject to restrictions imposed by the System Administrator on file transfer size.&lt;br /&gt;&lt;br /&gt;This 10SC report viewing technology enforces the same security as the standard Release 10 report viewer. You can view only those reports that you submitted, or, if your system administrator allows, you can view all the reports submitted by users sharing your responsibility.&lt;br /&gt;&lt;br /&gt;The appropriate Oracle documentation includes a full description of the tasks that need to be performed in order to use the Report Review Agent. Primarily, these are:&lt;br /&gt;&lt;br /&gt;1. Install the Oracle Network Manager so that you can generate the files needed by the Report Review &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Agent.&lt;br /&gt;2. Configure the Report Review Agent using the Oracle Network Manager, then copy the configuration files &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; that Oracle Network Manager generates to the client and to the server.&lt;br /&gt;3. When using a custom editor to view concurrent output or log file, the Report Review Agent will make a &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; temporary copy of the file on the client. Set the File Server:Delete Temporary Files profile option to Yes &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; to automatically delete files when the user exits Oracle Applications.&lt;br /&gt;4. Set the File Server:Maximum Transfer Size profile option to specify in bytes the maximum allowable size &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; of files transferred by the Report Review Agent, including those downloaded by a user with the Copy File &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; menu option in the Oracle Applications Report File Viewer and those ‘temporary’ files that are &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; automatically downloaded by custom editors. Null means no file size limit.&lt;br /&gt;5. When the Report Review Agent is configured, the SQL*Net listener will spawn a process that serves files &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; to the client. The operating system account used to start the TNS listener, usually the Oracle account, &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; must have file permissions to read the log and report output files for all products and to read and execute &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; the FNDFS executable in the FND product bin directory.&lt;br /&gt;&lt;br /&gt;In an internet computing environment, the forms servers communicate directly with the concurrent processing servers when reports are retrieved for on-line viewing. In Release 11, this is done by using Net8 to issue a Remote Procedure Call to the concurrent processing server. The concurrent processing server runs a Net8 Listener which responds to the request by invoking an Oracle Applications executable then returning the results via Net8. Network Latency between the concurrent processing server and the forms server may result in Applications data being returned more slowly to Applications users.&lt;br /&gt;&lt;br /&gt;To configure and set up the Web Report Review Agent, the Report Review Agent should be set up and configured as for the Smart Client environment as outlined above substituting the Forms Server for the PC client. Once this is done, it should be possible to view files using the Applications Report Viewer (appsviewer). When using certain features, such as context sensitive help and Web Report Review, the Appletviewer launches a browser to view files. To configure this, the initial HTML file should be edited to add the name of the browser that you wish to use to view help, attachments and reports and each client path should include the directory that contains the browser. Details of other variables that need to be set are provided in configuration guides for the Web Review Agent.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Whether working in a SmartClient or internet computing environment, it is good practice to limit the size of the maximum allowable size of files transferred by the Report Review Agent. This includes files downloaded by the user with the 'Copy File' menu option in the Oracle Applications ReportFile Viewer and 'temporary' files that are automatically downloaded by custom editors. Set the RRA:Maximum Transfer Size to specify the maximum file transfer size in bytes. This ensures that the network is not flooded with data and ensures that it is available for all types of transactions with no major degradation resulting from output retrieval. Apart from maintaining the integrity of the network, there is little else that can be done to improve the rate at which output is retrieved or viewed.&lt;br /&gt;&lt;br /&gt;In a distributed environment, you can review log and output files from any node, regardless of which node the concurrent process runs on. You do not need to log onto a node to view the log and output files from requests run on that node. The concurrent log and output files from requests that run on any node are accessible online from any other node. This capability relies on set-up steps taken at install time. For more information, refer to the installation documentation for your platform. &lt;br /&gt;&lt;br /&gt;&amp;nbsp; &lt;br /&gt;&lt;strong&gt;&lt;u&gt;Improving the Performance of Concurrent Processing&lt;/u&gt;&lt;/strong&gt; &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;The key to good performance and smooth system administration is to proactively resolve problems before they turn into crises. As an on-going practice, it is important to ensure that you obtain best results from the machine and processing resources that you have. &lt;br /&gt;&lt;br /&gt;• Educate users and encourage them to schedule long-running, non-critical requests outside core hours.&lt;br /&gt;• Monitor parameters that users enter to ensure that they are not inadvertently running open-ended reports &lt;br /&gt;&amp;nbsp;&amp;nbsp;that provide more information than they intended to see.&lt;br /&gt;• Monitor for locks on tables to ensure that users are not locking each other out of tables for an extended &lt;br /&gt;&amp;nbsp;&amp;nbsp; period of time.&lt;br /&gt;• Watch for runaway requests where a requests take a long time to run, showing increasing CPU clock time &lt;br /&gt;&amp;nbsp;&amp;nbsp; with a process id of 1 on Unix with no other Unix processes referencing them. These are ones where &lt;br /&gt;&amp;nbsp;&amp;nbsp; Oracle or Unix has lost track of the request. If this is the case, the processes may not be cleaned up &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; automatically by Oracle. On Unix, the kill command may be used to terminate them. Runaway processes&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;from any other source should also be monitored and dealt with.&lt;br /&gt;• Monitor for failures of the ICM or CRM that could result in delays in processing jobs with incompatibilities &lt;br /&gt;&amp;nbsp; or delays in detecting other manager problems that would result in a queue backlog building up.&lt;br /&gt;• Report performance problems with standard reports to Oracle Support Services, investigate problems with &lt;br /&gt;&amp;nbsp;&amp;nbsp;custom reports in-house. &lt;br /&gt;&lt;br /&gt;In the longer term, you can really only achieve better processing throughput and performance by adjusting concurrent manager assignments and request scheduling. Use historical information in AOL tables to gather information, subject to data purge policies of the system administrator.&lt;br /&gt;&lt;br /&gt;After analysis of concurrent processing workload, it may be appropriate to customise the available concurrent managers to optimise the use of concurrent processing by balancing the flow of processing. Work shifts and specialisation rules can be used to achieve this by customising existing manager definitions or adding new ones. &lt;br /&gt;&lt;br /&gt;Long running, expensive jobs may be isolated and forced to run serially in their own concurrent managers, possibly even outside regular office hours to avoid too much of a drain for other types of work in a normal high level transaction processing environment.&lt;br /&gt;&lt;br /&gt;Jobs with a similar profile may be grouped together and processed by the same concurrent manager to enable each manager to be defined in a custom way to increase efficiency. For example, running all unconstrained jobs through a manager with a low sleep value reduces the likelihood that it will ever be unable to run work and thereby causes it to run continuously without invoking its sleep parameter.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Concurrent Manager Balancing&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;Determine which concurrent manager and program combinations are potential bottlenecks by identifying which concurrent managers run which programs. Use data in the AOL tables to identify requests that would be suitable candidates for rescheduling to distribute load more evenly.&lt;br /&gt;&lt;br /&gt;Identify time periods with the greatest wait times and examine requests that were run and that were waiting during this time. Conversely, identify time periods when concurrent managers had excess capacity by comparing jobs that were run by each concurrent manager against its total capacity to determine capacity utilisation. &lt;br /&gt;&lt;br /&gt;To reduce wait time and balance queue usage, consider rescheduling a program to run when the concurrent managers have excess capacity. Alternatively consider designating certain concurrent managers to process either short or long running programs to help mitigate queue backup.&lt;br /&gt;&lt;br /&gt;If all queues are running at or near maximum capacity, it may be necessary to add more queues. You can define as many concurrent managers as analysis of your workload requires and as the power of your server allows. However, you should exercise caution to ensure that the CPU of the machine is not overloaded through the use of excessive manger definitions or processes assigned to each manager definition.&lt;br /&gt;&lt;br /&gt;If all system resources are also fully utilised, it may be necessary to add additional hardware to support processing demands or consider using (or extending) a parallel concurrent processing environment. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Queue Specialisation&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;Measure elapsed run time of requests to identify jobs that consistently take a long time to run and those that consistently complete in a short time. Compare the running time of fast requests to the time that they regularly spend queuing. Ensure that your findings are consistent over a period of time by querying the fastest and slowest times that each request took to run the longest and shortest times that they waited and the total number of times that each job was executed. Use the information gathered to decide how to assign programs to queues and choose candidates for further tuning.&lt;br /&gt;&lt;br /&gt;Designating a concurrent manager to process consistently short running jobs can help prevent such jobs getting stuck behind long running jobs in the queue. If many short running, but long waiting requests are identified, consider creating a concurrent manager that specialises in short running requests. This may increase the throughput of these requests.&lt;br /&gt;&lt;br /&gt;Look at long running requests to determine if any of these requests should be associated with a queue that will handle long running jobs. Consider defining a separate concurrent manager to process consistently long-running, non-business critical requests outside core business hours to segregate jobs that are prone to cause bottlenecks in processing away from other business functions.&lt;br /&gt;&lt;br /&gt;Identify business critical jobs with the users to ensure that these are treated as special cases irrespective of their running time. Allow any other programs that vary in running time to run in the default Standard queue unless there is some other business reason why they should be handled differently from other core business processing. &lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;u&gt;Defining and Tuning Individual Concurrent Managers&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;Various options are available for defining and tuning each manager.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Internal Concurrent Manager &lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;There are three parameters that affect the performance of the ICM which may be set during startup of the ICM. These parameters are:&lt;br /&gt;&lt;br /&gt;Sleep time - the number of seconds that the internal concurrent manager waits between times it looks for new concurrent requests if the profile option Use ICM is set to yes. Use default setting of 60 seconds.&lt;br /&gt;&lt;br /&gt;Pmon cycle - the number of sleep cycles the ICM waits between time it checks for failed concurrent managers. This can be set lower than the default setting of 20 sleep cycles since the resources consumed by PMON do not justify such a large delay now that the CRM is used in place of the ICM to process constraints.&lt;br /&gt;&lt;br /&gt;Queue size - the number of PMON cycles that the ICM waits between times it checks for new or disabled concurrent managers. Use the default setting of 1 pmon cycle.&lt;br /&gt;&lt;br /&gt;Note that amendments may be made to the values for pmon and queue size on the fly by updating the settings and using the ‘Verify’ option on the Administer Concurrent Managers form to reset the values used by the ICM. &lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Conflict Resolution Manager&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Sleep time is the only parameter that may be reconfigured for the conflict resolution manager. It is wisest to set the CRM sleep time for a given shift in the Define Concurrent Manager form rather than to hard code values. Use the default setting of 60 seconds.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Product Managers&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;Sleep time - the number of seconds that the manager waits between checking the list of pending concurrent requests. By default, the sleep time for the product managers is set to 60 seconds but it may be modified in the 'Work Shifts' zone of the 'Define Concurrent Manager' screen. \Nav Con Man Def. As a rule of thumb the sleep time for managers should never be less than 60 seconds with a mixed workload so that they do not run faster than the Conflict Resolution Manager. However, if the majority of requests on your system are submitted as ‘Pending Normal’ rather than ‘Pending Standby’ it might be best to set the managers with a smaller sleep time than the CRM&lt;br /&gt;&lt;br /&gt;Buffer (Cache) Size - the number of concurrent requests that the manager picks up from the FND_CONCURRENT_REQUST table when the manager wakes up. For customer defined managers the Cache Size is either blank or set to 0 which is interpreted as a value of 1 when the manager is started. Use the default buffer size of 1 so that reprioritisations can be noticed and run accordingly unless you have a manager that needs to service many short running (less than a minute) requests. If this is the case, consider setting the buffer size to equal at least twice the number of target processes. For example, if the manager has three target processes it could run three jobs. But if it only picks up one job every 60 seconds then you are losing valuable processing time. If it picks up six jobs then the managers will continuously be processing. If reprioritisations are not important to your business, this rule may also be applied to other processing to increase the throughput of the concurrent managers by attempting to avoid any sleep time.&lt;br /&gt;&lt;br /&gt;Target processes – Define concurrent managers with a minimum of two target processes to reduce the possibility that work will stack up behind one long-running job, unless the queue has been specifically configured to run long-running tasks sequentially to reduce overall load on the system. Reasonable rule of thumb is to limit the number of concurrent requests that can run during core business hours to a maximum of 20. &lt;br /&gt;&lt;br /&gt;Work shifts – Define work shifts that map on to business events, for example, during core business hours, minimise the number of concurrent requests in favour of on-line users, when on-line users go home define out of hours work shifts that give concurrent requests priority over other processing. Consider placing a different emphasis on job mix at weekends or during any month end processing to complement the work that the users are trying to complete. &lt;br /&gt;&lt;br /&gt;If you use online backups, there are no additional restrictions on how you should manage your workshifts. However, if you use cold backups, you should try to define workshifts that complement your backup recovery strategy. When you shut the database down for cold backups, you will need to manage workshifts leading up to the time when the database is brought down and consider how to re-process any terminated requests after the backup, before core business hours commence. &lt;br /&gt;&lt;br /&gt;It is possible to command the concurrent manager to wait for all running work to be processed before shutting itself down. In this scenario, it is not possible to predict when or whether the concurrent manager will shutdown if there are long-running tasks that are running or runaway processes that are still attached to the concurrent manager that prevent it from shutting down. An alternative method is to command the concurrent manager to shutdown immediately without waiting for requests to finish to ensure that backups are started and completed within the available database down time. Since the ICM only restarts requests in cases of complete system failure (either node or database failure), any aborted requests will need to be identified, fixed and reran. In this latter scenario, it is wise to try to eliminate long-running jobs from the work shifts running immediately before the backups to reduce the impact on the system of reprocessing terminated work when the concurrent managers are started up again after the backups.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1478036687830627925-8508426888292435559?l=appsdbaexperts.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://appsdbaexperts.blogspot.com/feeds/8508426888292435559/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://appsdbaexperts.blogspot.com/2010/09/concurrent-processing-tuning.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1478036687830627925/posts/default/8508426888292435559'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1478036687830627925/posts/default/8508426888292435559'/><link rel='alternate' type='text/html' href='http://appsdbaexperts.blogspot.com/2010/09/concurrent-processing-tuning.html' title='Concurrent Processing Tuning'/><author><name>Vikram Singh</name><uri>http://www.blogger.com/profile/00122476821250599716</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1478036687830627925.post-7048599987265687565</id><published>2010-08-19T01:46:00.000-07:00</published><updated>2010-09-07T03:49:55.888-07:00</updated><title type='text'>R12 Upgrade Best Practice and Few Known Issues</title><content type='html'>Overview of upgrade to R12 &lt;br /&gt;&lt;br /&gt;Upgrading an application from 11i to R12 involves, upgrading the database side, upgrading the middleware techstack and upgrading the application side.&lt;br /&gt;Supported upgrade path for application side upgrade is as given below.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_OTo3OeVR_kU/TIYVl0_uNoI/AAAAAAAACPo/XN08cq6VHD0/s1600/0.jpg" imageanchor="1" style="clear: right; cssfloat: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" height="321" ox="true" src="http://2.bp.blogspot.com/_OTo3OeVR_kU/TIYVl0_uNoI/AAAAAAAACPo/XN08cq6VHD0/s400/0.jpg" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_OTo3OeVR_kU/TIYWAfBEG7I/AAAAAAAACPw/6Vd54VFz1xA/s1600/0.jpg" imageanchor="1" style="cssfloat: left; margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="247" ox="true" src="http://2.bp.blogspot.com/_OTo3OeVR_kU/TIYWAfBEG7I/AAAAAAAACPw/6Vd54VFz1xA/s400/0.jpg" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_OTo3OeVR_kU/TIYWSI-jOWI/AAAAAAAACP4/UfWnRaMrgYk/s1600/0.jpg" imageanchor="1" style="cssfloat: left; margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="252" ox="true" src="http://4.bp.blogspot.com/_OTo3OeVR_kU/TIYWSI-jOWI/AAAAAAAACP4/UfWnRaMrgYk/s400/0.jpg" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_OTo3OeVR_kU/TIYWiwGMKVI/AAAAAAAACQA/zwLoGItEI8A/s1600/0.jpg" imageanchor="1" style="cssfloat: left; margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="266" ox="true" src="http://4.bp.blogspot.com/_OTo3OeVR_kU/TIYWiwGMKVI/AAAAAAAACQA/zwLoGItEI8A/s400/0.jpg" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_OTo3OeVR_kU/TIYW8o-wEaI/AAAAAAAACQI/znJu0_7GrLA/s1600/0.jpg" imageanchor="1" style="cssfloat: left; margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="248" ox="true" src="http://3.bp.blogspot.com/_OTo3OeVR_kU/TIYW8o-wEaI/AAAAAAAACQI/znJu0_7GrLA/s400/0.jpg" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-size: large;"&gt;Upgrade Steps in brief&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Here are the 4 simple steps, briefly presented below for upgrade. These steps are at very high level of abstraction.&amp;nbsp;Detailed each steps are further down.&lt;br /&gt;&lt;br /&gt;1) Understand installed components, system sizing information, NLS considerations&lt;br /&gt;&lt;br /&gt;2) Prepare for upgrade using Upgrade Manual Script(TUMS).&lt;br /&gt;&lt;br /&gt;3) Upgrading to R12. This includes upgrading the database and applying the required patches through AutoPatch.&lt;br /&gt;&lt;br /&gt;4) Post-Upgrade process. Complete the upgrade process by applying the latest RUP patches to keep the system most current.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-size: large;"&gt;Upgrade steps in detail&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;1) Understanding installed components&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;Technology Stack Components&lt;br /&gt;&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; Rapid Install automatically installs and configures the required technology stack components for both the database tier and the application tier.&lt;br /&gt;&lt;br /&gt;The database tier technology stack for both a new installation and for a system upgrade is based on Oracle10g Release 2.&lt;br /&gt;&lt;br /&gt;The technology stack installed on the application tier includes, among other components:&lt;br /&gt;&lt;br /&gt;- Oracle 10g Application Server (AS) 10.1.2&lt;br /&gt;&lt;br /&gt;- Oracle 10g Application Server (AS) 10.1.3&lt;br /&gt;&lt;br /&gt;- Oracle Developer 10g (includes Oracle Forms)&lt;br /&gt;&lt;br /&gt;- Java (J2SE) native plug-in 1.5.0_08&lt;br /&gt;&lt;br /&gt;- Java Developer Kit (JDK) 5.0&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Memory Requirements&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; To calculate the memory requirements for an upgrade, consider the following:&lt;br /&gt;&lt;br /&gt;- Number of concurrent users&lt;br /&gt;&lt;br /&gt;- Infrastructure requirements for multi-tiered architecture&lt;br /&gt;&lt;br /&gt;For example:&lt;br /&gt;&lt;br /&gt;A test upgrade of the largest Oracle production system (oraprod) used the following:&lt;br /&gt;&lt;br /&gt;- Database tier machine – 48 GB of memory&lt;br /&gt;&lt;br /&gt;- Application tier machine – 12 GB of memory&lt;br /&gt;&lt;br /&gt;A test upgrade of the Vision database and application tier machine used 6 GB of memory.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Database Size&lt;/strong&gt;&lt;br /&gt;&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; To estimate the increase in required disk space for upgrading, consider the products, the number of languages being installed, and changes in the data model.&lt;br /&gt;&lt;br /&gt;For example:&lt;br /&gt;&lt;br /&gt;In a test upgrade of the largest Oracle production system (oraprod), the database increased 10-20 percent. In a test upgrade, the Vision database increased 5 percent. For guidelines based on an upgrade of the Oracle production system (oraprod), see E-Business Suite Release 12 Upgrade Sizing and Best Practices (Doc ID: 399362.1).&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;u&gt;Database Backup&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;***&amp;nbsp;Its highly recommended that you back up your entire system before you begin the upgrade. ***&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;u&gt;Database Initialization Parameters&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;Initialization parameters required at each stage of the upgrade may vary depending on when you upgrade your database. Review the requirements for these parameters before you begin. Refer to metalink note ID 396009.1 for initialization parameters.&lt;br /&gt;&lt;br /&gt;Change the following initialization parameters as specified below for upgrade process. Once the upgrade process completes, reset the parameters back.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;db_file_multiblock_read_count – Remove this parameter. (this is not required). &lt;br /&gt;&lt;br /&gt;_db_file_optimizer_read_count = 8 (default setting is 8. Keep default setting). &lt;br /&gt;&lt;br /&gt;job_queue_processes (set the value of this parameters equal to number of CPUs). &lt;br /&gt;&lt;br /&gt;parallel_max_servers (set the value of this parameters equal to twice the number of CPUs). &lt;br /&gt;&lt;br /&gt;pga_aggregate_target (refer to metalink note ID 396009.1 for recommended value). &lt;br /&gt;&lt;br /&gt;Make sure that the temporary tablespace you have is locally managed and not dictionary managed. You can check this information using below query.&lt;br /&gt;&lt;br /&gt;select CONTENTS,EXTENT_MANAGEMENT,ALLOCATION_TYPE from dba_tablespaces where tablespace_name=’TEMP’;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;CONTENTS&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; EXTENT_MANAGEMENT&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ALLOCATION_TYPE&lt;br /&gt;&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;&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;—————&lt;br /&gt;&lt;br /&gt;TEMPORARY&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LOCAL&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; UNIFORM&lt;br /&gt;&lt;br /&gt;Else if the extent management is not local, you can drop and recreate temp tablespace.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;NLS Upgrade Considerations&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; For NLS considerations, please refer to Applications upgrade docs&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Character Sets&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; You have to be careful while selecting the character set for APPL_TOP. Depending on whether your Applications system connects to the database during the upgrade process, you may be able to select a new character set for the Release 12 APPL_TOP on the Rapid Install wizard upgrade screens. However, if you do, the new set must be either identical to, or compatible with, the existing database character set. If you change the character set in the APPL_TOP to one that is not compatible with the current database character set, the upgraded system will be corrupted.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;SQL&amp;gt; create TEMPORARY tablespace TEMP tempfile ’ts_p_temp1.dbf’ size 2048M EXTENT MANAGEMENT LOCAL UNIFORM SIZE 1M;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;2) Prepare for upgrade using Upgrade Manual Script(TUMS) and upgrading database&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; R12 upgrade process involve replacing 11i Tech stack (9iAS &amp;amp; 806) to Fusion Middleware (10g Application Server) &lt;br /&gt;&lt;br /&gt;Basic upgrade process involves Rapid Install &amp;amp; Autopatch &lt;br /&gt;&lt;br /&gt;Rapid Install involves installing new R12 tech stack as mentioned in first point &lt;br /&gt;&lt;br /&gt;Auto patch process involves upgrading E-Business Suite database compatible to R12 (Data Model) &lt;br /&gt;&lt;br /&gt;Final upgrade process is of updating data model using enhanced version of AutoPatch &lt;br /&gt;&lt;br /&gt;Minimum version from which you can upgrade to R12 is 11.5.7 and higher &lt;br /&gt;&lt;br /&gt;Minimum database version from which you can upgrade to R12 is 9i &lt;br /&gt;&lt;br /&gt;As per Oracle R12 Upgrade Documentation, Apps 11i Instance is classified in Two Categories based on Apps &amp;amp; DB Version&lt;br /&gt;&lt;br /&gt;Category 1 – 11.5.7, 11.5.8, 11.5.9 (CU1), 11.5.10 (CU1)&lt;br /&gt;&lt;br /&gt;Category 2 – 11.5.9 (CU2), 11.5.10 (CU2) or 11.5.10.2&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Why we cannot upgrade database to 10.2.0.2 before for category 1 ?&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;This is because there is no Interoperability patch for above release &amp;amp; 10.2.0.2 was supported for 11.5.9 (CU2) &amp;amp; 11.5.10(CU2) only.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;What are advantages of Upgrading database to 10.2.0.2 before R12 upgrade ?&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;Downtime can be broken down to two small downtimes (one for Database upgrade another one for R12 upgrade) and can be achieved during weekends or long weekends (depending on your system &amp;amp; resources)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp; &lt;br /&gt;&lt;strong&gt;&lt;span style="font-size: large;"&gt;Best Practices - Pre Upgrade&lt;/span&gt;&lt;/strong&gt; &lt;br /&gt;&lt;strong&gt;&lt;span style="font-size: large;"&gt;&lt;/span&gt;&lt;/strong&gt;&amp;nbsp; &lt;br /&gt;&lt;ul&gt;&lt;li&gt;Use TUMS to eliminate the tasks that are not relevant for your system.&lt;/li&gt;&lt;li&gt;Use Shared File System for Multi-Nodes&lt;/li&gt;&lt;li&gt;Use Distributed AD for Multi-Node.&lt;/li&gt;&lt;li&gt;Estimate Tablespaces size (Note # 399362.1)&lt;/li&gt;&lt;li&gt;Modify Database Parameters which are discribed above, that will help in performance of upgade scripts.&lt;/li&gt;&lt;li&gt;&amp;nbsp;Perform these tasks in advance to&amp;nbsp;reduce downtime&amp;nbsp;in Upgrade ( Convert to Multi Org, Convert to OATM, Upgrade Database to 10.2.0.3)&lt;/li&gt;&lt;li&gt;Gather Statistics before upgrade.&lt;/li&gt;&lt;li&gt;Record timing for each step during Test Upgrade.&lt;/li&gt;&lt;li&gt;Add PL/SQL no compile option in R12 upgrade driver to save time during upgrade&lt;/li&gt;&lt;li&gt;Choose proper Batchsize and Workers for Autopatch ( e.g. for a 24 CPU DB Server Batchsize=10000 and workers=30)&lt;/li&gt;&lt;li&gt;Make sure you reset the Database parameters which were modified earlier.&lt;/li&gt;&lt;li&gt;Merge All NLS patches and apply them as single merged patch.&lt;/li&gt;&lt;li&gt;Merging all Post 12.0.4 upgrade patches (including the 12.0.6 R12 &lt;br /&gt;RUP6 Patch) in which, we applied the rule of thumb of merging both "non-AD" and "non-FND"&lt;br /&gt;patches together and thereafter, to individually apply AD, FND and online-Help patches. Merging&lt;br /&gt;the patches did save a lot of time, both in limiting the number of adpatch runs, and also in limiting&lt;br /&gt;the number of times the actual adpatch maintenance steps were executed (i.e. compiling Apps&lt;br /&gt;schema, compiling jtf files, etc.).&lt;/li&gt;&lt;li&gt;Isolate post upgrade concurrent programs to a separate manager queue ( Note # 399362.1)&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-size: large;"&gt;Few Known Issues&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;• Purging Non-Required Data From the "GL_INTERFACE" Table Dramatically Reduced &lt;br /&gt;Overall Patch Runtime&lt;br /&gt;&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; In reviewing the patch runtime worker jobs, we've clearly noticed that script "jaiglintfsrcmig.sql" was taking roughly 4 hrs 55 mins to complete. After carefully reviewing the script's SQL path, we noticed that the script was actually doing several updates on the "GL_INTERFACE" table. And this was occurring on an implementation where table "GL_INTERFACE" is (was) not being purged after data loads. We then proceeded to ask the client's Development team to identify the non required data from the "GL_INTERFACE" table, which was then purged prior to engaging the Apps upgrade. Purging the non-required data from the "GL_INTERFACE" table, turned out to save approximately 4 1/2 hours of upgrade time.&lt;br /&gt;&lt;br /&gt;• Apache Lock File Issues&lt;br /&gt;&lt;br /&gt;&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; In setting a second and third Mid-Tier nodes, we've successfully completed the configuration of a shared APPL_TOP and shared Tech Stack. Redhat GFS was used for the shared filesystem. The only issue faced with the shared filesystem, was that Apache would fail to startup due to the "adapcctl.sh" startup script timing out. After carefully diagnosing the issue (using the "strace" command to see where the "httpd" processes were hanging), we identified that the issue resulted in Apache trying to lock files on the GFS mountpoints. This appeared to be a generic issue with most shared filesystem when locking files take place (which is in fact an Apache requirement). The issue was fixed by configuring Apache parameters "s_lock_pid_dir", "s_pids_dir" and "s_web_pid_file" (in the context xml file) to point to local mount point "/var/tmp" (instead of pointing to shared mountpoints). These changes were made to all context xml files&lt;br /&gt;for all nodes in the cluster.&lt;br /&gt;&lt;br /&gt;• R12 Login Page not Working After Applying the 12.0.4 Patch&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; After applying the 12.0.4 patch, for some reason, the R12 login page stopped working properly, more specifically, the R12 login page would loop between "/OA_HTML/AppsLogin" and "/OA_HTML/RF.jsp?" and consequently, the login page would not come up at all. After thorough troubleshooting, we determined that the FND tables and WF tables were not completely synchronized, thus making the "RF.jsp" go back to the AppsLogin page as user "GUEST" which in fact, does not have necessary responsibilities against WF tables. The problem was then fixed by running the "WF_LOCAL_SYNCH.VALIDATEUSERROLES" procedure.&lt;br /&gt;&lt;br /&gt;• Intermittent Issues&lt;br /&gt;&lt;br /&gt;&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; At one point, we were faced with two types of intermittent issues. The first was with respect to a report customization where the "Payables Open Interface Import" program used to fail intermittently with error "REP-0069: Internal error, REP-50002: Server is shutting down". After researching this issue, we've identified patch 6116405 from Metalink Note 549910.1 "Error REP-0069 and REP-50002 while Generating Reports through Concurrent Managers", which in the end, fixed the issue.&lt;br /&gt;&lt;br /&gt;The other intermittent issue dealt with Apache producing errors of the form "404 not found in OA Framework pages". After carefully researching and diagnosing the issue, we narrowed it down to OC4J not behaving correctly and further more, identified that the error would occur only when OC4J oacore jvms were increased from 1 to 3. We then tracked down Metalink Note 731115.1, specifying to apply patch 7311892 to the 10.1.3 Oracle Home and also to add set context file parameter "s_oacore_jvm_start_options" to "-Doracle.ons.numprocs=&lt;n&gt;", and of course to also run Autoconfig to propgagate all changes. This fixed the Apache errors of the form "404 not found in OA Framework pages".&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Let me know if I missed anything or wants me add anything.... Take Care all.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1478036687830627925-7048599987265687565?l=appsdbaexperts.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://appsdbaexperts.blogspot.com/feeds/7048599987265687565/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://appsdbaexperts.blogspot.com/2010/08/r12-upgrade-best-practice-and-few-known.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1478036687830627925/posts/default/7048599987265687565'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1478036687830627925/posts/default/7048599987265687565'/><link rel='alternate' type='text/html' href='http://appsdbaexperts.blogspot.com/2010/08/r12-upgrade-best-practice-and-few-known.html' title='R12 Upgrade Best Practice and Few Known Issues'/><author><name>Vikram Singh</name><uri>http://www.blogger.com/profile/00122476821250599716</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_OTo3OeVR_kU/TIYVl0_uNoI/AAAAAAAACPo/XN08cq6VHD0/s72-c/0.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1478036687830627925.post-8154277041688992428</id><published>2010-04-21T09:27:00.001-07:00</published><updated>2010-08-25T03:00:21.074-07:00</updated><title type='text'>How to Register EBS with SSO</title><content type='html'>1) Start the EBS environment&lt;br /&gt;&lt;br /&gt;2) Start the SSO Environment&lt;br /&gt;&lt;br /&gt;3) Check you can login into SSO&lt;br /&gt;&lt;br /&gt;http://&lt;host_name&gt;.&lt;domain&gt;:&lt;infrastructure http="" number="" port=""&gt;/oiddas&lt;br /&gt;&lt;br /&gt;• Log in using the orcladmin userid&lt;br /&gt;&lt;br /&gt;• Navigate to Directory &amp;gt; Create.&lt;br /&gt;&lt;br /&gt;• Create a test userid (test/welcome123), supplying a password and other user information. Click Submit.&lt;br /&gt;&lt;br /&gt;• Log out.&lt;br /&gt;&lt;br /&gt;• Log into Oracle Internet Directory Delegated Administration Services using the newly created test userid.&lt;br /&gt;&lt;br /&gt;• Ensure the Directory Integration and Provisioning Platform Server is running. The command ps -ef &lt;br /&gt;grep odi should show a process called $ORACLE_HOME/bin/odisrv running.&lt;br /&gt;&lt;br /&gt;4) Check you can login into the EBS database and R12 Environment &lt;br /&gt;&lt;br /&gt;a. Log into the database - sqlplus &lt;apps user=""&gt;/&lt;apps password=""&gt;@$TWO_TASK&lt;br /&gt;&lt;br /&gt;b. Log into the Env - http://&lt;host_name&gt;.&lt;domain&gt;:&lt;http number="" port=""&gt;/OA_HTML/AppsLocalLogin.jsp&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;5) Create a parameter checklist: -&lt;br /&gt;&lt;br /&gt;Parameter Checklist:&lt;br /&gt;&lt;br /&gt;Sr. No Parameter Description Example Comments&lt;br /&gt;&lt;br /&gt;1 Hostname of Oracle Application Server Infrastructure database {mandatory} Ibmaix30.server.com Fully qualified name recommended, e.g. alpha.company.com rather than just alpha &lt;br /&gt;&lt;br /&gt;2 LDAP port of Oracle Internet Directory{mandatory} 13061 Check for LDAP port number in $ORACLE_HOME/install/portlist.ini &lt;br /&gt;&lt;br /&gt;3 LDAP SSL port of Oracle Internet Directory {mandatory} 636 Check for LDAP port number in $ORACLE_HOME/install/portlist.ini&lt;br /&gt;&lt;br /&gt;4 Password of Oracle E-Business Suite database user, "APPS" {mandatory} APPS APPS user password.&lt;br /&gt;&lt;br /&gt;5 Password of Oracle Internet Directory admin user, "orcladmin {mandatory} Welcome123 No comment needed.&lt;br /&gt;&lt;br /&gt;6 Password to register E-Business Suite instance with Oracle Internet Directory {mandatory} Welcome123 No comment needed.&lt;br /&gt;&lt;br /&gt;7 Oracle Internet Directory administration user name. orcladmin OID superuser name. Default value is "cn=orcladmin".&lt;br /&gt;&lt;br /&gt;8 apps name s_contextname This instance will be registered with OID Server with this appname. Default value of appname s_contextname.&lt;br /&gt;&lt;br /&gt;9 svcname s_contextname This instance will be registered with OID Server with this svcname. Default value of appname s_contextname.&lt;br /&gt;&lt;br /&gt;11 Provisiontype 2 It specifies provisioning type between instance and OID Server. Allowed values are 1,2,3,4. This are for 1. Bidirectional, 2.Instance to OID Server, 3.OID Server to Instance, 4.Bidirectional no creation. Default value is 1.&lt;br /&gt;&lt;br /&gt;12 ldaphost beta.company.com For Non-Colocated Infrastructure, i.e. if ldaphost is different from infradbhost, pass value of ldaphost for this parameter in command line. Default value of ldaphost is infradbhost.&lt;br /&gt;&lt;br /&gt;12 dbldapauthlevel 0 authentication level between E-Business database and OID Server for provisioning purpose. Values are, 0 - Non-SSL Communication, 1 - SSL with no authentication, 2 - SSL with server authentication, 3 - SSL with Client and Server authentication.&lt;br /&gt;&lt;br /&gt;13 dbwalletdir FND_DB_WALLET_DIR E-Business database wallet directory. This is must if dbldapauthlevel &amp;gt; 1. Default dbwalletdir is the value of site level profile FND_DB_WALLET_DIR&lt;br /&gt;&lt;br /&gt;14 dbwalletpass &lt;password&gt;E-Business database wallet password. This is must if dbldapauthlevel &amp;gt; 1&lt;br /&gt;&lt;br /&gt;15 rdbmsdn RDBMS DN of this E-Business database instance that is registered with OID Server e.g. cn=OracleContext&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;5) As the owner of the application-tier file system, source the file $APPL_TOP/APPS&lt;context_name&gt;.env to set the environment correctly. Once done On the EBS apps tier run the SSO registration script: -&lt;br /&gt;&lt;br /&gt;a. cd $FND_TOP/bin/&lt;br /&gt;&lt;br /&gt;b. txkrun.pl -script=SetSSOReg -provisiontype=2&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Parameter Prompts:&lt;br /&gt;&lt;br /&gt;The registration script will prompt for several parameters. Use the parameter values from the parameter checklist. The script will prompt for the parameters in the following order:&lt;br /&gt;&lt;br /&gt;• Enter the host name where Oracle iAS Infrastructure database is installed? Ibmaix30.server.com&lt;br /&gt;&lt;br /&gt;• Enter the LDAP Port on Oracle Internet Directory server ? 389&lt;br /&gt;&lt;br /&gt;• Enter SSL LDAP Port on Oracle Internet Directory server ? 636&lt;br /&gt;&lt;br /&gt;• Enter the Oracle Internet Directory Administrator (orcladmin) Bind password ? welcome123&lt;br /&gt;&lt;br /&gt;• Enter the instance password that you would like to register this application instance with ? welcome123&lt;br /&gt;&lt;br /&gt;• Enter Oracle E-Business apps database user password ? APPS&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;6) When the registration script completes successfully, it will print the following line:-&lt;br /&gt;&lt;br /&gt;End of &lt;fnd_top&gt;/patch/115/bin/txkSetSSOReg.pl : No Errors encountered&lt;br /&gt;&lt;br /&gt;If you do not see this confirmation, examine the following file to investigate the problem: $APPLRGF/TXK/txkSetSSOReg_[timestamp].xml&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;7) If the registration is successful then bounce the EBS application tier.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;8) Validate that Single Sign-On is Working Correctly by following these steps: -&lt;br /&gt;&lt;br /&gt;i) Run the Diagnostic Utility: -&lt;br /&gt;&lt;br /&gt;• Login as sysadmin locally (http[s]://&lt;server&gt;[:port]/OA_HTML/AppsLocalLogin.jsp)&lt;br /&gt;&lt;br /&gt;• Select the responsibility "CRM HTML Administration" from the Navigator's left pane&lt;br /&gt;&lt;br /&gt;• Select the function "Diagnostics" from the Navigator's right pane. This will launch a new window. If you do not see a new window, make sure any browser pop-up blockers are disabled.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Run SSO Diagnostics&lt;br /&gt;&lt;br /&gt;• Click on the "Basic" tab&lt;br /&gt;&lt;br /&gt;• Choose "Application Object Library" from the Applications drop down&lt;br /&gt;&lt;br /&gt;• Click on "SSO Setup Tests" - Click on "Run Without Pre-Requisite"&lt;br /&gt;&lt;br /&gt;• All the tests should complete successfully&lt;br /&gt;&lt;br /&gt;• Click on the "Report" icon for each test and verify the results&lt;br /&gt;&lt;br /&gt;Run OID Diagnostics&lt;br /&gt;&lt;br /&gt;• Click on "OID Setup" - Click on "Run Without Pre-Requisite"&lt;br /&gt;&lt;br /&gt;• All the tests should complete successfully&lt;br /&gt;&lt;br /&gt;• Click on the "Report" icon for each test and verify the results&lt;br /&gt;&lt;br /&gt;ii) Verify SSO Integration with Oracle E-Business Suite&lt;br /&gt;&lt;br /&gt;• Create a user in the EBS environment locally. (Local URL = (http://&lt;server&gt;[:port]/OA_HTML/AppsLocalLogin.jsp)&lt;br /&gt;&lt;br /&gt;• Check that user can login to the EBS environment through the SSO login&lt;br /&gt;&lt;br /&gt;o Enter EBS login URL = http://[EBS_server]:[port]/OA_HTML/AppsLogin&lt;br /&gt;&lt;br /&gt;o This should redirect to the SSO login screen.&lt;br /&gt;&lt;br /&gt;o Enter user and password created above, which log you into the EBS env. &lt;br /&gt;&lt;br /&gt;• Check you can login to SSO OIM with the same user/password through URL: - http://&lt;sso_host_name&gt;.&lt;domain&gt;:&lt;infrastructure http="" number="" port=""&gt;/oiddas&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;How to Deregister SSO with EBS&lt;br /&gt;&lt;br /&gt;1) SSO-OID Deregistration can be done using a single command, which does the following: -&lt;br /&gt;&lt;br /&gt;• OID Deregistration&lt;br /&gt;&lt;br /&gt;• SSO Deregistration&lt;br /&gt;&lt;br /&gt;• Instance Deregistration&lt;br /&gt;&lt;br /&gt;To deregister run the following command, which starts the interactive mode deregistration: -&lt;br /&gt;&lt;br /&gt;$FND_TOP/bin/txkrun.pl -script=SetSSOReg -deregister=yes&lt;br /&gt;&lt;br /&gt;The above command will prompt for the following: -&lt;br /&gt;&lt;br /&gt;• Enter Oracle E-Business apps database user password ? APPS&lt;br /&gt;&lt;br /&gt;• Enter the Oracle Internet Directory Administrator (orcladmin) Bind password ? welcome123&lt;br /&gt;&lt;br /&gt;2) SSO-OID Registration stores a set of preferences on E-Business Database. If E-Business Instance is cloned from SSO/OID Registered E-Business Instance, cloned environment has same preferences as the source environment and throws errors while SSO/OID Registration. So following command should be called in post cloning phase or before proceeding for SSO/OID Registration to remove all the preferences or settings from cloned environments.&lt;br /&gt;&lt;br /&gt;NOTE – ONLY NEEDS TO BE DONE IF EBS HAS BEEN SSO REGISTERED PREVIOUSLY &lt;br /&gt;&lt;br /&gt;To remove the references in EBS run the following command:-&lt;br /&gt;&lt;br /&gt;$FND_TOP/bin/txkrun.pl -script=SetSSOReg -removereferences=Yes&lt;br /&gt;&lt;br /&gt;The above command will prompt for the following: -&lt;br /&gt;&lt;br /&gt;• Enter Oracle E-Business apps database user password? ******&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;3) Bounce the EBS environment and test login: -&lt;br /&gt;&lt;br /&gt;http://[EBS_server]:[port]/OA_HTML/AppsLogin&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1478036687830627925-8154277041688992428?l=appsdbaexperts.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://appsdbaexperts.blogspot.com/feeds/8154277041688992428/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://appsdbaexperts.blogspot.com/2010/04/how-to-register-ebs-with-sso.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1478036687830627925/posts/default/8154277041688992428'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1478036687830627925/posts/default/8154277041688992428'/><link rel='alternate' type='text/html' href='http://appsdbaexperts.blogspot.com/2010/04/how-to-register-ebs-with-sso.html' title='How to Register EBS with SSO'/><author><name>Vikram Singh</name><uri>http://www.blogger.com/profile/00122476821250599716</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1478036687830627925.post-4574042128525227417</id><published>2009-09-10T08:52:00.000-07:00</published><updated>2009-09-10T09:16:29.539-07:00</updated><title type='text'>Oracle RAC Questions</title><content type='html'>What is RAC?&lt;br /&gt;RAC stands for Real Application &lt;a class="kLink" oncontextmenu="return false;" id="KonaLink0" onmouseover="adlinkMouseOver(event,this,0);" style="POSITION: static; TEXT-DECORATION: underline! important" onclick="adlinkMouseClick(event,this,0);" onmouseout="adlinkMouseOut(event,this,0);" href="http://hubpages.com/hub/Oracle-RACReal-Application-Cluster-DBA-Interview-Questions#" target="_top"&gt;cluster&lt;/a&gt;. It is a clustering solution from Oracle Corporation that ensures high availability of databases by providing instance failover, media failover features.&lt;br /&gt;&lt;br /&gt;Mention the Oracle RAC software components:-&lt;br /&gt;&lt;br /&gt;Oracle RAC is composed of two or more database instances. They are composed of Memory structures and background processes same as the single instance database.Oracle RAC instances use two processes GES(Global Enqueue Service), GCS(Global Cache Service) that enable cache fusion.&lt;br /&gt;Oracle RAC instances are composed of following background processes:&lt;br /&gt;ACMS—Atomic Controlfile to Memory Service (ACMS)&lt;br /&gt;GTX0-j—Global Transaction Process&lt;br /&gt;LMON—Global Enqueue &lt;a class="kLink" oncontextmenu="return false;" id="KonaLink1" onmouseover="adlinkMouseOver(event,this,1);" style="POSITION: static; TEXT-DECORATION: underline! important" onclick="adlinkMouseClick(event,this,1);" onmouseout="adlinkMouseOut(event,this,1);" href="http://hubpages.com/hub/Oracle-RACReal-Application-Cluster-DBA-Interview-Questions#" target="_top"&gt;Service Monitor&lt;/a&gt;&lt;br /&gt;LMD—Global Enqueue Service Daemon&lt;br /&gt;&lt;a class="kLink" oncontextmenu="return false;" id="KonaLink2" onmouseover="adlinkMouseOver(event,this,2);" style="POSITION: static; TEXT-DECORATION: underline! important" onclick="adlinkMouseClick(event,this,2);" onmouseout="adlinkMouseOut(event,this,2);" href="http://hubpages.com/hub/Oracle-RACReal-Application-Cluster-DBA-Interview-Questions#" target="_top"&gt;LMS&lt;/a&gt;—Global Cache Service Process&lt;br /&gt;LCK0—Instance Enqueue Process&lt;br /&gt;RMSn—Oracle RAC Management Processes (RMSn)&lt;br /&gt;RSMN—Remote Slave Monitor&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;What is GRD?&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;GRD stands for Global Resource Directory. The GES and GCS maintains records of the statuses of each datafile and each cahed block using global resource directory.This process is referred to as cache fusion and helps in data integrity.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Details on Cache Fusion:-&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;Oracle RAC is composed of two or more instances. When a block of data is read from datafile by an instance within the cluster and another instance is in need of the same block,it is easy to get the block image from the insatnce which has the block in its SGA rather than reading from the disk. To enable inter instance communication Oracle RAC makes use of interconnects. The Global Enqueue Service(GES) monitors and Instance enqueue process manages the cahce fusion.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Details on ACMS:-&lt;/strong&gt;&lt;br /&gt;ACMS stands for Atomic Controlfile Memory Service.In an Oracle RAC environment ACMS is an agent that ensures a distributed SGA memory update(ie)SGA updates are globally committed on success or globally aborted in event of a failure.&lt;br /&gt;&lt;strong&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;Details on GTX0-j :-&lt;/strong&gt;&lt;br /&gt;The process provides transparent support for XA global transactions in a RAC environment.The database autotunes the number of these processes based on the workload of XA global transactions.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Details on LMON:-&lt;/strong&gt;&lt;br /&gt;This process monitors global enques and resources across the cluster and performs global enqueue recovery operations.This is called as Global Enqueue Service Monitor.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Details on LMD:-&lt;/strong&gt;&lt;br /&gt;This process is called as global enqueue service daemon. This process  manages incoming remote resource requests within each instance.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Details on LMS:-&lt;/strong&gt;&lt;br /&gt;This process is called as Global Cache service process.This process maintains statuses of datafiles and each cahed block by recording information in a Global Resource Dectory(GRD).This process also controls the flow of messages to remote instances and manages global data block access and transmits block images between the buffer caches of different instances.This processing is a part of cache fusion feature.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Details on LCK0:-&lt;/strong&gt;&lt;br /&gt;This process is called as Instance enqueue process.This process manages non-cache fusion resource requests such as libry and row cache requests.Give details on RMSn:-This process is called as Oracle RAC management process.These pocesses perform managability tasks for Oracle RAC.Tasks include creation of resources related Oracle RAC when new instances are added to the cluster.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Details on RSMN:-&lt;/strong&gt;&lt;br /&gt;This process is called as Remote Slave Monitor.This process manages background slave process creation andd communication on remote instances. This is a background slave process.This process performs tasks on behalf of a co-ordinating process running in another instance.&lt;br /&gt;&lt;br /&gt;What components in RAC must reside in shared storage?&lt;br /&gt;All datafiles, controlfiles, SPFIles, redo log files must reside on cluster-aware shared storage.&lt;br /&gt;&lt;br /&gt;What is the significance of using  cluster-aware shared storage in an Oracle RAC environment?All instances of an Oracle RAC can access all the datafiles,control files, SPFILE's, redolog files when these files are hosted out of cluster-aware shared storage which are group of shared disks.&lt;br /&gt;&lt;br /&gt;Few examples for solutions that support cluster storage:-&lt;br /&gt;ASM(automatic storage management),raw disk devices,network file system(NFS), OCFS2 and OCFS(Oracle Cluster Fie systems).&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;What is an interconnect network?&lt;/strong&gt;&lt;br /&gt;An interconnect network is a private network that connects all of the servers in a cluster. The interconnect network uses a switch/multiple switches that only the nodes in the cluster can access.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;How can we configure the cluster interconnect?&lt;/strong&gt;&lt;br /&gt;Configure User Datagram Protocol(UDP) on  Gigabit ethernet for cluster interconnect.On unia and &lt;a class="kLink" oncontextmenu="return false;" id="KonaLink3" onmouseover="adlinkMouseOver(event,this,3);" style="POSITION: static; TEXT-DECORATION: underline! important" onclick="adlinkMouseClick(event,this,3);" onmouseout="adlinkMouseOut(event,this,3);" href="http://hubpages.com/hub/Oracle-RACReal-Application-Cluster-DBA-Interview-Questions#" target="_top"&gt;linux systems&lt;/a&gt; we use UDP and RDS(Reliable data socket) protocols to be used by Oracle Clusterware.Windows clusters use the &lt;a class="kLink" oncontextmenu="return false;" id="KonaLink4" onmouseover="adlinkMouseOver(event,this,4);" style="POSITION: static; TEXT-DECORATION: underline! important" onclick="adlinkMouseClick(event,this,4);" onmouseout="adlinkMouseOut(event,this,4);" href="http://hubpages.com/hub/Oracle-RACReal-Application-Cluster-DBA-Interview-Questions#" target="_top"&gt;TCP&lt;/a&gt; protocol.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Can we use crossover cables with Oracle Clusterware interconnects?&lt;/strong&gt;&lt;br /&gt;No, crossover cables are not supported with Oracle Clusterware intercnects.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;What is the use of cluster interconnect?&lt;/strong&gt;&lt;br /&gt;Cluster interconnect is used by the Cache fusion for inter instance communication.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;How do users connect to database in an Oracle RAC environment?&lt;/strong&gt;&lt;br /&gt;Users can access a RAC database using a client/server configuration or through one or more middle tiers ,with or without connection pooling.Users can use oracle services feature to connect to database.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;What is the use of a service in Oracle RAC environemnt?&lt;/strong&gt;&lt;br /&gt;Applications should use the services feature to connect to the Oracle database.Services enable us to define rules and characteristics to control how users and applications connect to database instances.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;What are the characteriscs controlled by Oracle services feature?&lt;/strong&gt;&lt;br /&gt;The charateristics include a unique name, workload balancing and failover options,and high availability characteristics.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Which enable the  load balancing of applications in RAC?&lt;/strong&gt;&lt;br /&gt;Oracle Net Services enable the load balancing of application connections across all of the instances in an Oracle RAC database.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;What is a virtual IP address or VIP?&lt;/strong&gt;&lt;br /&gt;A virtl IP address or VIP is an alternate IP address that the client connectins use instead of the standard public IP address. To configureVIP address, we need to reserve a spare IP address for each node, and the IP addresses must use the same subnet as the public network.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;What is the use of VIP?&lt;/strong&gt;&lt;br /&gt;If a node fails, then the node's VIP address fails over to another node on which the VIP address can accept TCP connections but it cannot accept Oracle connections.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Situations under which VIP address failover happens:-&lt;/strong&gt;&lt;br /&gt;VIP addresses failover happens when the node on which the VIP address runs fails, all interfaces for the VIP address fails, all interfaces for the VIP address are disconnected from the network.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;What is the significance of VIP address failover?&lt;/strong&gt;&lt;br /&gt;When a VIP address failover happens, Clients that attempt to connect to the VIP address receive a rapid connection refused error .They don't have to wait for TCP connection timeout messages.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;What are the administrative tools used for Oracle RAC environments?&lt;/strong&gt;&lt;br /&gt;Oracle RAC cluster can be administered as a single image using OEM(Enterprise Manager),SQL*PLUS,Servercontrol(SRVCTL),clusterverificationutility(cvu),DBCA,NETCA&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;How do we verify that RAC instances are running?&lt;/strong&gt;&lt;br /&gt;Issue the following query from any one node connecting through SQL*PLUS.&lt;br /&gt;$connect sys/sys as sysdba&lt;br /&gt;SQL&gt;select * from V$ACTIVE_INSTANCES;&lt;br /&gt;The query gives the instance number under INST_NUMBER column,host_:instancename under INST_NAME column.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;What is FAN?&lt;/strong&gt;&lt;br /&gt;Fast application Notification as it abbreviates to FAN relates to the events related to instances,services and nodes.This is a notification mechanism that Oracle RAc uses to notify other processes about the configuration and service level information that includes service status changes such as,UP or DOWN events.Applications can respond to FAN events and take immediate action.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Where can we apply FAN UP and DOWN events?&lt;/strong&gt;&lt;br /&gt;FAN UP and FAN DOWN events can be applied to instances,services and nodes.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Use of FAN events in case of a cluster configuration change?&lt;/strong&gt;&lt;br /&gt;During times of cluster configuration changes,Oracle RAC high availability framework publishes a FAN event immediately when a state change occurs in the cluster.So applications can receive FAN events and react immediately.This prevents applications from polling database and detecting a problem after such a state change.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Why should we have seperate homes for ASm instance?&lt;/strong&gt;&lt;br /&gt;It is a good practice to have ASM home seperate from the database hom(ORACLE_HOME).This helps in upgrading and patching ASM and the Oracle database software independent of each other.Also,we can deinstall the Oracle database software independent of the ASM instance.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;What is the advantage of using ASM?&lt;/strong&gt;&lt;br /&gt;Having ASM is the Oracle recommended storage option for RAC databases as the ASM maximizes performance by managing the storage configuration across the disks.ASM does this by distributing the database file across all of the available storage within our cluster database environment.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;What is rolling &lt;/strong&gt;&lt;a class="kLink" oncontextmenu="return false;" id="KonaLink5" onmouseover="adlinkMouseOver(event,this,5);" style="POSITION: static; TEXT-DECORATION: underline! important" onclick="adlinkMouseClick(event,this,5);" onmouseout="adlinkMouseOut(event,this,5);" href="http://hubpages.com/hub/Oracle-RACReal-Application-Cluster-DBA-Interview-Questions#" target="_top"&gt;&lt;strong&gt;upgrade&lt;/strong&gt;&lt;/a&gt;&lt;strong&gt;?&lt;/strong&gt;&lt;br /&gt;It is a new ASM feature from Database 11g.ASM instances in Oracle database 11g release(from 11.1) can be upgraded or patched using rolling upgrade feature. This enables us to patch or upgrade ASM nodes in a clustered environment without affecting database availability.During a rolling upgrade we can maintain a functional cluster while one or more of the nodes in the cluster are running in different software versions.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Can rolling upgrade be used to upgrade from 10g to 11g database?&lt;/strong&gt;&lt;br /&gt;No,it can be used only for Oracle database 11g releases(from 11.1).&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Initialization parameters that must have same value for every instance in an Oracle RAC database:-&lt;/strong&gt;&lt;br /&gt;Some initialization parameters are critical at the database creation time and must have same values.Their value must be specified in SPFILE or PFILE for every instance.The list of parameters that must be identical on every instance are given below:ACTIVE_INSTANCE_COUNT&lt;br /&gt;ARCHIVE_LAG_TARGET&lt;br /&gt;COMPATIBLE&lt;br /&gt;CLUSTER_DATABASE&lt;br /&gt;CLUSTER_DATABASE_INSTANCE&lt;br /&gt;CONTROL_FILES&lt;br /&gt;DB_BLOCK_SIZE&lt;br /&gt;DB_&lt;a class="kLink" oncontextmenu="return false;" id="KonaLink6" onmouseover="adlinkMouseOver(event,this,6);" style="POSITION: static; TEXT-DECORATION: underline! important" onclick="adlinkMouseClick(event,this,6);" onmouseout="adlinkMouseOut(event,this,6);" href="http://hubpages.com/hub/Oracle-RACReal-Application-Cluster-DBA-Interview-Questions#" target="_top"&gt;DOMAIN&lt;/a&gt;&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;INSTANCE_TYPE (RDBMS or ASM)PARALLEL_MAX_SERVERS&lt;br /&gt;REMOTE_LOGIN_PASSWORD_FILE&lt;br /&gt;UNDO_MANAGEMENT&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Can the DML_LOCKS and RESULT_CACHE_MAX_SIZE be identical on all instances?&lt;/strong&gt;&lt;br /&gt;These parameters can be identical on all instances only if these parameter values are set to zero.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;What two parameters must be set at the time of starting up an ASM instance in a RAC environment?&lt;/strong&gt;&lt;br /&gt;The parameters CLUSTER_DATABASE and INSTANCE_TYPE must be set.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Mention the components of Oracle clusterware:-&lt;/strong&gt;&lt;br /&gt;Oracle clusterware is made up of components like voting disk and Oracle Cluster Registry(OCR).&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;What is a CRS resource?&lt;/strong&gt;&lt;br /&gt;Oracle clusterware is used to manage high-availability operations in a cluster.Anything that Oracle Clusterware manages is known as a CRS resource.Some examples of CRS resources are database,an instance,a service,a listener,a VIP address,an application process etc.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;What is the use of OCR?&lt;/strong&gt;&lt;br /&gt;Oracle clusterware manages CRS resources based on the configuration information of CRS resources stored in OCR(Oracle Cluster Registry).&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;How does a Oracle Clusterware manage CRS resources?&lt;/strong&gt;&lt;br /&gt;Oracle clusterware manages CRS resources based on the configuration information of CRS resources stored in OCR(Oracle Cluster Registry).&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Some Oracle clusterware tools and their uses?&lt;/strong&gt;&lt;br /&gt;OIFCFG - allocating and deallocating &lt;a class="kLink" oncontextmenu="return false;" id="KonaLink7" onmouseover="adlinkMouseOver(event,this,7);" style="POSITION: static; TEXT-DECORATION: underline! important" onclick="adlinkMouseClick(event,this,7);" onmouseout="adlinkMouseOut(event,this,7);" href="http://hubpages.com/hub/Oracle-RACReal-Application-Cluster-DBA-Interview-Questions#" target="_top"&gt;network interfaces&lt;/a&gt;&lt;br /&gt;OCRCONFIG - Command-line tool for managing Oracle Cluster Registry&lt;br /&gt;OCRDUMP - Identify the interconnect being used&lt;br /&gt;CVU - Cluster verification utility to get status of CRS resources&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;What are the modes of deleting instances from ORacle Real Application cluster Databases?&lt;/strong&gt;&lt;br /&gt;We can delete instances using silent mode or interactive mode using DBCA(Database Configuration Assistant).&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;How do we remove ASM from a Oracle RAC environment?&lt;/strong&gt;&lt;br /&gt;We need to stop and delete the instance in the node first in interactive or silent mode.After that asm can be removed using srvctl tool as follows:&lt;br /&gt;srvctl stop asm -n node_namesrvctl remove asm -n node_name&lt;br /&gt;We can verify if ASM has been removed by issuing the following command:&lt;br /&gt;srvctl config asm -n node_name&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;How do we verify that an instance has been removed from OCR after deleting an instance?&lt;/strong&gt;&lt;br /&gt;Issue the following srvctl command:&lt;br /&gt;srvctl config database -d database_namecd CRS_HOME/bin./crs_stat&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;How do we verify an existing current backup of OCR?&lt;/strong&gt;&lt;br /&gt;We can verify the current backup of OCR using the following command :&lt;br /&gt;ocrconfig -showbackup&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;What are the performance views in an Oracle RAC environment?&lt;/strong&gt;&lt;br /&gt;We have v$ views that are instance specific. In addition we have GV$ views called as global views that has an INST_ID column of numeric data type.GV$ views obtain information from individual V$ views.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;What are the types of connection load-balancing?&lt;/strong&gt;&lt;br /&gt;There are two types of connection load-balancing:server-side load balancing and client-side load balancing.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;What is the differnece between server-side and client-side connection load balancing?&lt;/strong&gt;&lt;br /&gt;Client-side balancing happens at client side where load balancing is done using listener.In case of server-side load balancing listener uses a load-balancing advisory to redirect connections to the instance providing best service.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Give the usage of srvctl:-&lt;/strong&gt;&lt;br /&gt;srvctl start instance -d db_name -i "inst_name_list" [-o start_options]&lt;br /&gt;srvctl stop instance -d name -i "inst_name_list" [-o stop_options]&lt;br /&gt;srvctl stop instance -d orcl -i "orcl3,orcl4" -o immediate&lt;br /&gt;srvctl start database -d name [-o start_options]&lt;br /&gt;srvctl stop database -d name [-o stop_options]&lt;br /&gt;srvctl start database -d orcl -o mount&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1478036687830627925-4574042128525227417?l=appsdbaexperts.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://appsdbaexperts.blogspot.com/feeds/4574042128525227417/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://appsdbaexperts.blogspot.com/2009/09/oracle-rac-questions.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1478036687830627925/posts/default/4574042128525227417'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1478036687830627925/posts/default/4574042128525227417'/><link rel='alternate' type='text/html' href='http://appsdbaexperts.blogspot.com/2009/09/oracle-rac-questions.html' title='Oracle RAC Questions'/><author><name>Vikram Singh</name><uri>http://www.blogger.com/profile/00122476821250599716</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1478036687830627925.post-8379092233992149924</id><published>2009-05-05T19:04:00.000-07:00</published><updated>2010-12-15T23:27:48.148-08:00</updated><title type='text'>Configure Parallel Concurrent Processing R12</title><content type='html'>Configure Parallel Concurrent Processing&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Set Up PCP&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;1. Execute AutoConfig by running $INST_TOP/admin/scripts/adautocfg.sh on all concurrent nodes.&lt;br /&gt;&lt;br /&gt;2. Source the application environment.&lt;br /&gt;&lt;br /&gt;3. Check the configuration files tnsnames.ora and listener.ora located at $INST_TOP/ora/10.1.2/network/admin. Ensure that you have information of all the other concurrent nodes for FNDSM and FNDFS entries.&lt;br /&gt;&lt;br /&gt;4. Restart the application listener process on each application tier node.&lt;br /&gt;&lt;br /&gt;5. Log on to Oracle E-Business Suite Release 12 as SYSADMIN, and choose the System Administrator Responsibility. Navigate to Install &amp;gt; Nodes screen and ensure that each node in the cluster is registered.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;6. Verify whether the Internal Monitor for each node is defined properly with correct primary and secondary node specification and work shift details. Also ensure the Internal Monitor manager is activated by going to Concurrent -&amp;gt; Manager -&amp;gt; Administrator and activating the manager. (For example, Internal Monitor: Host2 must have primary node as host2 and secondary node as host3).&lt;br /&gt;&lt;br /&gt;The secondary nodes for Internal Monitor: host2 and Internal Monitor: host3 were not defined.&lt;br /&gt;Also the workshifts were not present. Set them as 24 hrs and the processes was set to 1.&lt;br /&gt;&lt;br /&gt;Went to the concurrent - &amp;gt; manager - &amp;gt; administrator screen and activated the above 2 managers.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;7. Set the $APPLCSF environment variable on all the CP nodes pointing to a log directory on a shared file system.&lt;br /&gt;&lt;br /&gt;Change to be made in the context file. Initially it was :&lt;br /&gt;&lt;br /&gt;$ORACLE_SID $&amp;gt;  grep -i applcsf $CONTEXT_FILE&lt;br /&gt;&lt;applcsf oa_var="s_applcsf"&gt;/ORACLE_HOME/inst/apps/SID_HOST/logs/appl/conc&lt;/applcsf&gt;&lt;br /&gt;&lt;br /&gt;Changed it to :&lt;br /&gt;&lt;br /&gt;$ORACLE_SID $ &amp;gt; grep -i applcsf $CONTEXT_FILE&lt;br /&gt;&lt;applcsf oa_var="s_applcsf"&gt;/ORACLE_HOME/inst/apps/$ORACLE_SID /logs/appl/conc&lt;/applcsf&gt;&lt;br /&gt;&lt;br /&gt;Do not run autoconfig yet, you have to make more changes in the below step. We will run autoconfig after that.&lt;br /&gt;&lt;br /&gt;These changes need to be on just the conc manager tiers.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;8. Set the $APPLPTMP environment variable on all the CP nodes to the value of the UTL_FILE_DIR entry in init.ora on the database nodes. This value should be pointing to a directory on a shared file system.&lt;br /&gt;&lt;br /&gt;Initially, APPLTMP was set as ‘/usr/tmp’.&lt;br /&gt;&lt;br /&gt;We need this to be on a file system, that is shared across all the CM nodes and is also writable by the owner of the oracle db.&lt;br /&gt;&lt;br /&gt;Now we will need this to be the first entry in the “utl_file_dir” parameter in the db.&lt;br /&gt;&lt;br /&gt;Use grid to have this change done, to the “utl_file_dir” parameter for database. This would need a bounce of db.&lt;br /&gt;&lt;br /&gt;Also, modify the CONTEXT FILE on all the apps tier , to have APPLPTMP and APPLTMP point to shared mount point  and run autoconfig.&lt;br /&gt;&lt;br /&gt;$ORACLE_SID $&amp;gt; grep -i s_applptmp $CONTEXT_FILE&lt;br /&gt;&lt;applptmp oa_var="s_applptmp" osd="UNIX"&gt;/usr/tmp&lt;/applptmp&gt;&lt;br /&gt;&lt;br /&gt;$ORACLE_SID $&amp;gt;  grep -i s_appltmp $CONTEXT_FILE&lt;br /&gt;&lt;appltmp oa_var="s_appltmp"&gt;/ORACLE_HOME/inst/apps/$ORACLE_SID /appltmp&lt;/appltmp&gt;&lt;br /&gt;&lt;br /&gt;Both of the above were changed to&lt;br /&gt;&lt;br /&gt;$ORACLE_SID $&amp;gt;  grep -i s_applptmp $CONTEXT_FILE&lt;br /&gt;&lt;applptmp oa_var="s_applptmp" osd="UNIX"&gt;/ORACLE_HOME/inst/apps/temp&lt;/applptmp&gt;&lt;br /&gt;&lt;br /&gt;$ORACLE_SID $ &amp;gt;  grep -i s_appltmp $CONTEXT_FILE&lt;br /&gt;&lt;appltmp oa_var="s_appltmp"&gt;/ORACLE_HOME/inst/apps/temp&lt;/appltmp&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;These changes need to be on just the conc manager tiers.&lt;br /&gt;&lt;br /&gt;9. Set profile option ' Concurrent: PCP Instance Check' to OFF if database instance-sensitive failover is not required. By setting it to 'ON', Concurrent Managers will fail over to a secondary Application tier node if the database instance they are connected to fails.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Set Up Transaction Managers&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;1. Shut down the application services (servers) on all nodes.&lt;br /&gt;&lt;br /&gt;2. In the Oracle RAC environment, shut down all the database instances cleanly with the command:&lt;br /&gt;SQL&amp;gt;shutdown immediate;&lt;br /&gt;&lt;br /&gt;3. Edit $ORACLE_HOME/dbs/&lt;context_name&gt;_ifile.ora. Add the following parameters:&lt;br /&gt;&lt;br /&gt;_lm_global_posts=TRUE&lt;br /&gt;_immediate_commit_propagation=TRUE&lt;br /&gt;&lt;br /&gt;4. Start the instances on all database nodes, one by one.&lt;br /&gt;&lt;br /&gt;5. Start up the application services (servers) on all nodes.&lt;br /&gt;&lt;br /&gt;6. Log on to Oracle E-Business Suite Release 12 using SYSADMIN login and System Administrator Responsibility.&lt;br /&gt;Navigate to Profile &amp;gt; System and change the profile option ‘Concurrent: TM Transport Type' to ‘QUEUE' and verify the transaction manager works across the RAC instance.&lt;br /&gt;&lt;br /&gt;7. Navigate to Concurrent &amp;gt; Manager &amp;gt; Define screen, and set up the primary and secondary node names for transaction managers.&lt;br /&gt;&lt;br /&gt;8. Restart the concurrent managers.&lt;br /&gt;&lt;br /&gt;9. If any of the transaction managers have a deactivated status, activate them using Concurrent &amp;gt; Manager &amp;gt; Administrator.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Set Up Load Balancing on Concurrent Processing Nodes&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;1. Edit the applications context file through Oracle Applications Manager interface and set the value of Concurrent Manager TWO_TASK (s_cp_twotask) to load balancing alias (&lt;service_name&gt;_balance&amp;gt;).&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Change need to be made in CONTEXT_FILE.&lt;br /&gt;&lt;br /&gt;Initially it was:&lt;br /&gt;$ORACLE_SID $ &amp;gt;  grep -i s_cp_twotask $CONTEXT_FILE&lt;br /&gt;&lt;cp_twotask oa_var="s_cp_twotask"&gt;$ORACLE_SID &lt;/cp_twotask&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;It was changed to :&lt;br /&gt;&lt;br /&gt;$ORACLE_SID $&amp;gt;  grep -i s_cp_twotask $CONTEXT_FILE&lt;br /&gt;&lt;cp_twotask oa_var="s_cp_twotask"&gt;$ORACLE_SID _TWO TASK&lt;/cp_twotask&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;These changes need to be on just the conc manager tiers ( host2 and host3).&lt;br /&gt;2. Execute AutoConfig by running $INST_TOP/admin/scripts/adautocfg.sh on all concurrent nodes.&lt;/service_name&gt;&lt;/context_name&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1478036687830627925-8379092233992149924?l=appsdbaexperts.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://appsdbaexperts.blogspot.com/feeds/8379092233992149924/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://appsdbaexperts.blogspot.com/2009/05/configure-parallel-concurrent.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1478036687830627925/posts/default/8379092233992149924'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1478036687830627925/posts/default/8379092233992149924'/><link rel='alternate' type='text/html' href='http://appsdbaexperts.blogspot.com/2009/05/configure-parallel-concurrent.html' title='Configure Parallel Concurrent Processing R12'/><author><name>Vikram Singh</name><uri>http://www.blogger.com/profile/00122476821250599716</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1478036687830627925.post-5221736818134824130</id><published>2009-01-21T12:31:00.000-08:00</published><updated>2010-04-13T21:09:05.722-07:00</updated><title type='text'></title><content type='html'>This configuration has been successfully tested on Oracle 10g (Release 2). We will set up this configuration on the following machines. &lt;br /&gt;Contents:&lt;br /&gt;&lt;br /&gt;1 PRIMARY SITE: (Information)&lt;br /&gt;2 STANDBY SITE: (Information)&lt;br /&gt;3 CONFIGURATION ON PRIMARY&lt;br /&gt;4 CONFIGURATION ON STANDBY&lt;br /&gt;5 LOG SHIPPING&lt;br /&gt;6 START PHYSICAL LOG APPLY SERVICE.&lt;br /&gt;7 ROLE TRANSITION :&lt;br /&gt;8 Manual Switchover:&lt;br /&gt;9 DATAGUARD BROKER :&lt;br /&gt;10 BROKER CONFIGURATION:&lt;br /&gt;11 Switchover:&lt;br /&gt;12 DATAGUARD OBSERVER :&lt;br /&gt;13 OBSERVER CONFIGURATION:&lt;br /&gt;14 OBSERVER SITE: (Information)&lt;br /&gt;15 Step 1:&lt;br /&gt;16 Step 2:&lt;br /&gt;17 Step 3:&lt;br /&gt;18 Step 4:&lt;br /&gt;19 Step 5:&lt;br /&gt;20 Data Guard With Real Time&lt;br /&gt;21 Real Time Apply – Benefits&lt;br /&gt;22 Note&lt;br /&gt;23 Converting To Real time&lt;br /&gt;24 Enable Real Time&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;PRIMARY SITE: (Information)&lt;/strong&gt;Database name (db_name): ORCL&lt;br /&gt;Database Unique Name (db_unique_name): primary&lt;br /&gt;TNS Service Name: to_standby (Through this service, the primary machine will be connected to STANDBY machine) &lt;br /&gt;&lt;br /&gt;&lt;a href="" name="STANDBY_SITE:_.28Information.29"&gt;&lt;/a&gt;&lt;strong&gt;STANDBY SITE: (Information)&lt;/strong&gt;&lt;br /&gt;Database name (db_name): ORCL&lt;br /&gt;Database Unique Name (db_unique_name): standby&lt;br /&gt;TNS Service Name: to_primary (Through this service, the standby machine will be connected to PRIMARY machine) &lt;br /&gt;&lt;br /&gt;&lt;a href="" name="CONFIGURATION_ON_PRIMARY"&gt;&lt;/a&gt;&lt;strong&gt;CONFIGURATION ON PRIMARY &lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;/strong&gt;Create pfile from spfile on the primary database:&lt;br /&gt;SQL&amp;gt; Create pfile from spfile=’C:\oracle\product\10.2.0\db_1\dbs\spfilePrimary.ora’;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Then make/add following settings in the initPrimary.ora file on the PRIMARY Machine. &lt;br /&gt;&lt;br /&gt;db_unique_name=’PRIMARY’FAL_Client=’to_primary’FAL_Server=’to_standby’Log_archive_config=’DG_CONFIG=(primary,standby)’Log_archive_dest_1=’Location=c:\oracle\backupVALID_FOR=(ALL_LOGFILES,ALL_ROLES)db_unique_name=primary’Log_archive_dest_2=’Service=to_standby lgwr asyncVALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE)db_unique_name=standby’Log_archive_dest_state_1=ENABLE&lt;br /&gt;Log_archive_dest_state_2=DEFER&lt;br /&gt;Service_names=’primary’&lt;br /&gt;Standby_File_Management=’AUTO’&lt;br /&gt;&lt;strong&gt;Create password file using ‘cmd’.&lt;/strong&gt;&lt;br /&gt;C:\&amp;gt; orapwd file=C:\oracle\product\10.2.0\db_1\database\PWDOrcl.ora password=oracle entries=5 [force=y].&lt;br /&gt;Force option is used to replace an existing password file. &lt;br /&gt;&lt;strong&gt;Now startup the PRIMARY database to MOUNT stage.&lt;/strong&gt;&lt;br /&gt;• SQL&amp;gt; startup mount;&lt;br /&gt;&lt;br /&gt;Make the following changes: Take the database to Archive Mode. &lt;br /&gt;&lt;br /&gt;• SQL&amp;gt; Alter database ArchiveLog;&lt;br /&gt;&lt;br /&gt;Enable Force Logging. &lt;br /&gt;&lt;br /&gt;• SQL&amp;gt; Alter database Force Logging;&lt;br /&gt;&lt;br /&gt;On the PRIMARY site, also create standby redo logfile for the Standby database. This standby redo logfile will be used for Dataguard Observer later on. If you don’t want to use DG broker (observer), then there is no need to create standby redo logfile. &lt;br /&gt;&lt;br /&gt;• SQL&amp;gt;Alter database add standby logfile (‘C:\oracle\product\10.2.0oradata\ORCL\StandbyRedo.log’) size 150m;&lt;br /&gt;&lt;br /&gt;Now shutdown the primary database. &lt;br /&gt;&lt;br /&gt;• SQL&amp;gt; shutdown immediate;&lt;br /&gt;&lt;br /&gt;Copy all the Datafiles and standby redo logfile from PRIMARY site to the same location on the STANDBY site. Then again startup the PRIMARY database to mount stage.&lt;br /&gt;• SQL&amp;gt; startup mount;&lt;br /&gt;Now create a standby controlfile on the PRIMARY site.• &lt;br /&gt;SQL&amp;gt; Alter database create standby controlfile as ‘c:\oracle\backup\standcontrol.ctl’;&lt;br /&gt;&lt;br /&gt;Now copy this new created standby control file to the standby site where other database file like datafiles, logfiles and control files are located. Rename this file to Control01.ctl, Control02.ctl and Control03.ctl. &lt;br /&gt;&lt;br /&gt;Create spFile from pfile. &lt;br /&gt;&lt;br /&gt;• SQL&amp;gt; Create spfile from pfile;&lt;br /&gt;&lt;br /&gt;Restart the primary database.&lt;br /&gt;Now on PRIMARY site create a service in TNSnames.ora file through which the PRIMARY site will be connected to the Standby machine. &lt;br /&gt;&lt;br /&gt;TO_STANDBY = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.12.196)(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = standby) ) )&lt;br /&gt;&lt;br /&gt;Also check the connectivity from the SQL Prompt. &lt;br /&gt;&lt;br /&gt;• SQL&amp;gt; connect sys/oracle@to_standby as sysdbaConnected.&lt;br /&gt;&lt;br /&gt;Service can also be created through Net Manager utility available with Oracle Server. Connectivity can also be checked there. Register the Primary Database in the Listener.ora file. &lt;br /&gt;Then stop and start the listener in the ‘cmd’.&lt;br /&gt;&amp;gt; Lsnrctl stop&amp;gt; Lsnrctl start&lt;br /&gt;&lt;br /&gt;Query the DATABASE_ROLE column from V$DATABASE to view the role of primary database. It should return ‘PRIMARY’. &lt;br /&gt;&lt;br /&gt;&lt;a href="" name="CONFIGURATION_ON_STANDBY"&gt;&lt;/a&gt;CONFIGURATION ON STANDBY &lt;br /&gt;&lt;br /&gt;Check the mode of Archiving by following command:&lt;br /&gt;• SQL&amp;gt; Archive Log List&lt;br /&gt;&lt;br /&gt;Then create pfile from spfile on the standby database: &lt;br /&gt;&lt;br /&gt;SQL&amp;gt; Create pfile from spfile=’C:\oracle\product\10.2.0\db_1\dbs\spfileStandby.ora’;&lt;br /&gt;&lt;br /&gt;Then make/add following settings in the initStandby.ora file on the STANDBY Machine. &lt;br /&gt;&lt;br /&gt;db_unique_name=’STANDBY’&lt;br /&gt;FAL_Client=’to_standby’&lt;br /&gt;FAL_Server=’to_primary’&lt;br /&gt;Log_archive_config=’DG_CONFIG=(primary,standby)’Log_archive_dest_1=’Location=c:\oracle\backupVALID_FOR=(ALL_LOGFILES,ALL_ROLES)&lt;br /&gt;db_unique_name=standby’Log_archive_dest_2=’Service=to_primaryVALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE)&lt;br /&gt;db_unique_name=primary’&lt;br /&gt;Log_archive_dest_state_1=ENABLE&lt;br /&gt;Log_archive_dest_state_2=ENABLE&lt;br /&gt;Service_names=’STANDBY’&lt;br /&gt;Standby_File_Management=’AUTO’&lt;br /&gt;db_file_name_convert='/home/u001/primary/','/home/u001/standby/'log_file_name_convert='/home/u001/primary/','/home/u001/standby/'lock_name_space=standby&lt;br /&gt;Create password file using ‘cmd’.&lt;br /&gt;C:\&amp;gt; orapwd file=C:\oracle\product\10.2.0\db_1\database\PWDOrcl.ora password=oracle entries=5 [force=y].&lt;br /&gt;Force option is used to replace an existing password file.&lt;br /&gt;&lt;br /&gt;Now on STANDBY site create a service in TNSnames.ora file through which the STANDBY site will be connected to the PRIMARY machine. &lt;br /&gt;&lt;br /&gt;TO_PRIMARY = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.12.146)(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = primary) ) )&lt;br /&gt;&lt;br /&gt;Check the connectivity from the SQL Prompt.&lt;br /&gt;• SQL&amp;gt; connect sys/oracle@to_primary as sysdba Connected.&lt;br /&gt;&lt;br /&gt;Service can also be created through Net Manager utility available with Oracle Server. Connectivity can also be checked there. Register the Standby Database in the Listener.ora file. Then stop and start the listener in the ‘cmd’. &lt;br /&gt;&lt;br /&gt;&amp;gt; Lsnrctl stop&amp;gt; Lsnrctl start&lt;br /&gt;&lt;br /&gt;Create spfile from pfile.&lt;br /&gt;• SQL&amp;gt; Create spfile from pfile;&lt;br /&gt;Restart the database. Now startup the STANDBY database to mount stage.&lt;br /&gt;• SQL&amp;gt; startup mount&lt;br /&gt;Enable Force Logging.&lt;br /&gt;• SQL&amp;gt; Alter database Force Logging;&lt;br /&gt;&lt;br /&gt;Query the column DATABASE_ROLE from V$DATABASE to view the role of standby database. It should return ‘PHYSICAL STANDBY’. &lt;br /&gt;&lt;br /&gt;&lt;a href="" name="LOG_SHIPPING"&gt;&lt;/a&gt;LOG SHIPPING &lt;br /&gt;&lt;br /&gt;On PRIMARY site enable Log_archive_dest_state_2 to start shipping archived redo logs.&lt;br /&gt;• SQL&amp;gt; Alter system set Log_archive_dest_state_2=ENABLE scope=both;&lt;br /&gt;System Altered.&lt;br /&gt;&lt;br /&gt;Check the sequence # and the archiving mode by executing following command.&lt;br /&gt;• SQL&amp;gt; Archive Log List&lt;br /&gt;&lt;br /&gt;Then switch the logfile.&lt;br /&gt;• SQL&amp;gt; Alter system switch logfile;System Altered.&lt;br /&gt;&lt;br /&gt;Now on the PRIMARY site check the status of Standby Archiving destination.&lt;br /&gt;• SQL&amp;gt; Select Status, Error from v$Archive_dest where dest_id=2;&lt;br /&gt;&lt;br /&gt;The STATUS should return – VALID. If it returns Error, then check the connectivity between the Primary and Standby machines. &lt;br /&gt;&lt;br /&gt;&lt;a href="" name="START_PHYSICAL_LOG_APPLY_SERVICE."&gt;&lt;/a&gt;START PHYSICAL LOG APPLY SERVICE. &lt;br /&gt;&lt;br /&gt;On the STANDBY database execute the following command to start Managed Recovery Process (MRP). This command is executed on Mount stage. &lt;br /&gt;&lt;br /&gt;• SQL&amp;gt; Alter Database Recover Managed Standby Database;&lt;br /&gt;Database Altered. &lt;br /&gt;&lt;br /&gt;By executing the above command the current session will become hanged because MRP is a foreground recovery process. It waits for the logs to come and apply them. To avoid this hanging, you can execute the following command with DISCONNECT option. &lt;br /&gt;&lt;br /&gt;• SQL&amp;gt; Alter Database Recover Managed Standby Database Disconnect;&lt;br /&gt;Database Altered.&lt;br /&gt;&lt;br /&gt;Now the session will be available to you and MRP will work as a background process and apply the redo logs. &lt;br /&gt;&lt;br /&gt;You can check whether the log is applied or not by querying V$ARCHIVED_LOG.&lt;br /&gt;• SQL&amp;gt; Select Name, Applied, Archived from v$Archived_log;&lt;br /&gt;&lt;br /&gt;This query will return the name of archived files and their status of being archived and applied.&lt;br /&gt;&lt;a href="" name="ROLE_TRANSITION_:"&gt;&lt;/a&gt;ROLE TRANSITION : &lt;br /&gt;&lt;br /&gt;In Dataguard configuration, two roles are defined; Primary and Standby. Primary database is the production database which is used by the users. For high availability purpose, the dataguard provides a standby database which remains available side by side to the primary database. &lt;br /&gt;Standby databases can be more than one and can be at remote locations as well.&lt;br /&gt;Oracle Data Guard supports two role transition operations: &lt;br /&gt;&lt;br /&gt;Switchover:&lt;br /&gt;Switchover allows the primary database to switch roles with one of its standby databases. There is no data loss during a switchover. After a switchover, each database continues to participate in the Data Guard configuration with its new role. &lt;br /&gt;&lt;br /&gt;Failover:&lt;br /&gt;Failover transitions a standby database to the primary role in response to a primary database failure. If the primary database was not operating in either maximum protection mode or maximum availability mode before the failure, some data loss may occur. After a failover, the failed database no longer participates in the Data Guard configuration. It needs to be reinstated to become an active part of Data Guard configuration. &lt;br /&gt;&lt;br /&gt;&lt;a href="" name="Manual_Switchover:"&gt;&lt;/a&gt;Manual Switchover: &lt;br /&gt;&lt;br /&gt;On the PRIMARY Database: (Open stage) &lt;br /&gt;&lt;br /&gt;Query V$DATABASE to check the role of Primary Database.&lt;br /&gt;• SQL&amp;gt; Select Database_rolefrom v$Database;&lt;br /&gt;It will return “PRIMARY”, &lt;br /&gt;&lt;br /&gt;Now check the Switchover Status of the Primary Database. &lt;br /&gt;&lt;br /&gt;• SQL&amp;gt; Select switchover_statusfrom v$Database;&lt;br /&gt;&lt;br /&gt;It will return “SESSIONS ACTIVE”. &lt;br /&gt;&lt;br /&gt;Now you are ready to perform a manual switchover. Execute the following command using “WITH SESSION SHUTDOWN” option. &lt;br /&gt;&lt;br /&gt;• SQL&amp;gt; Alter Database Commit to Switchover to Physical Standby with session Shutdown;&lt;br /&gt;Database Altered.&lt;br /&gt;&lt;br /&gt;Now your PRIMARY Database has become Physical Standby. &lt;br /&gt;To verify this change, again query the Database_role column of V$DATABASE. Now it will return “PHYSICAL STANDBY”. &lt;br /&gt;&lt;br /&gt;Shutdown the database and again Start it to mount stage. &lt;br /&gt;&lt;br /&gt;On the PHYSICAL STANDBY Database: (Mount stage) Query V$DATABASE to check the role of Standby Database. &lt;br /&gt;&lt;br /&gt;• SQL&amp;gt; Select Database_rolefrom v$Database;&lt;br /&gt;It will return “PHYSICAL STANDBY”, &lt;br /&gt;&lt;br /&gt;Now check the Switchover Status of the Standby Database.&lt;br /&gt;• SQL&amp;gt; Select switchover_statusfrom v$Database;&lt;br /&gt;It will return “SESSIONS ACTIVE”. &lt;br /&gt;&lt;br /&gt;Now cancel the MRP which is running in the background of the Standby Database. Execute the following command: &lt;br /&gt;&lt;br /&gt;• SQL&amp;gt; Alter database Recover Managed Standby Database Cancel;&lt;br /&gt;Database Altered.&lt;br /&gt;&lt;br /&gt;Now you are ready to perform a manual switchover from Physical Standby to Primary. Execute the following command using “WITH SESSION SHUTDOWN” option. &lt;br /&gt;&lt;br /&gt;• SQL&amp;gt; Alter Database Commit to Switchover to PRIMARY with session Shutdown;&lt;br /&gt;Database Altered.&lt;br /&gt;&lt;br /&gt;Now your PHYSICAL STANDBY Database has become PRIMARY. To verify this change, again query the Database_role column of V$DATABASE. Now it will return “PRIMARY”. &lt;br /&gt;&lt;br /&gt;Shutdown the database and again Start it to Open stage. &lt;br /&gt;&lt;br /&gt;&lt;a href="" name="DATAGUARD_BROKER_:"&gt;&lt;/a&gt;&lt;strong&gt;DATAGUARD BROKER :&lt;/strong&gt;The Data Guard broker is a distributed management framework that automates and centralizes the creation, maintenance, and monitoring of Data Guard configurations. You can use either the Oracle Enterprise Manager graphical user interface (GUI) or command-line interface (CLI) to automate and simplify: &lt;br /&gt;&lt;br /&gt;• Creating and enabling Data Guard configurations, including setting up log transport services and log apply services.&lt;br /&gt;• Managing an entire Data Guard configuration from any system in the configuration.&lt;br /&gt;• Managing and monitoring Data Guard configurations that contain Real Application Clusters primary or standby databases. &lt;br /&gt;&lt;br /&gt;&lt;a href="" name="BROKER_CONFIGURATION:"&gt;&lt;/a&gt;&lt;strong&gt;BROKER CONFIGURATION&lt;/strong&gt;:&lt;br /&gt;On both Primary and Standby sites, change the initialization parameter in the spfile to enable the Data guard broker. &lt;br /&gt;&lt;br /&gt;•SQL&amp;gt; Alter system set dg_broker_start=True scope=both;&lt;br /&gt;System Altered.&lt;br /&gt;&lt;br /&gt;On the PRIMARY site, open the ‘cmd’ and start Command Line Interface (CLI) of the Dataguard Broker (DGMGRL). &lt;br /&gt;&lt;br /&gt;C:\&amp;gt; dgmgrlDGMGRL for 32-bit Windows: Version 10.2.0.1.0 - ProductionCopyright (c) 2000, 2005, Oracle. All rights reserved.Welcome to DGMGRL, type "help" for information.DGMGRL&amp;gt;_&lt;br /&gt;&lt;br /&gt;Now connect to the database through the service you made previously. &lt;br /&gt;&lt;br /&gt;DGMGRL&amp;gt; connect sys/oracle@to_primaryConnected.&lt;br /&gt;Create broker configuration. &lt;br /&gt;&lt;br /&gt;DGMGRL&amp;gt; create configuration ‘broker1’ as&lt;br /&gt;&amp;gt; primary database is ‘primary’&lt;br /&gt;&amp;gt; connect identifier is to_primary;&lt;br /&gt;&lt;br /&gt;(‘to_primary’ in Connect identifier is the service name through which the broker is connected to the PRIMARY database) &lt;br /&gt;&lt;br /&gt;Add Standby Database to the above configuration. &lt;br /&gt;&lt;br /&gt;DGMGRL&amp;gt; Add database ‘standby’ as&lt;br /&gt;&amp;gt; connect identifier is to_standby &lt;br /&gt;&amp;gt; maintained as physical;&lt;br /&gt;&lt;br /&gt;(‘to_standby’ in Connect identifier is the service name through which the broker is connected to the STANDBY database) &lt;br /&gt;&lt;br /&gt;Now the configuration has been set up but it is still disabled. You can view the configuration by executing:&lt;br /&gt;DGMGRL&amp;gt; show configuration&lt;br /&gt;Configuration &lt;br /&gt;Name: broker1&lt;br /&gt;Enabled: NO &lt;br /&gt;Protection Mode: MaxPerformance &lt;br /&gt;Fast-Start Failover: DISABLE &lt;br /&gt;Databases: &lt;br /&gt;primary - Physical standby database &lt;br /&gt;standby - Primary database&lt;br /&gt;Current status for "broker1":&lt;br /&gt;DISABLE&lt;br /&gt;&lt;br /&gt;The next step is to ENABLE the configuration ‘broker1’. &lt;br /&gt;&lt;br /&gt;DGMGRL&amp;gt; enable configuration;&lt;br /&gt;Enabled&lt;br /&gt;Again view the configuration.&lt;br /&gt;DGMGRL&amp;gt; show configuration&lt;br /&gt;Configuration&lt;br /&gt;Name: broker1 &lt;br /&gt;Enabled: YES &lt;br /&gt;Protection Mode: MaxPerformance&lt;br /&gt;Fast-Start Failover: DISABLE &lt;br /&gt;Databases: &lt;br /&gt;primary - Physical standby database &lt;br /&gt;standby - Primary database&lt;br /&gt;Current status for "broker1":&lt;br /&gt;SUCCESS&lt;br /&gt;&lt;a href="" name="Switchover:"&gt;&lt;/a&gt;&lt;br /&gt;&lt;strong&gt;Switchover: &lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;/strong&gt;Now we are ready to switch over the PRIMARY database Role to STANDBY database Role.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;DGMGRL&amp;gt; switchover to ‘Standby’;&lt;br /&gt;…..…..&lt;br /&gt;&lt;br /&gt;Primary Database Successfully converted to Physical Standby. You can again switch over the Standby Database to Primary by executing following command. &lt;br /&gt;&lt;br /&gt;DGMGRL&amp;gt; switchover to ‘Primary’;&lt;br /&gt;…..…..&lt;br /&gt;&lt;br /&gt;Standby Database is successfully converted to Primary Database. &lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Failover: &lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;/strong&gt;Failover can be done through the same configuration without any alteration. You simply need to execute following command: &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;DGMGRL&amp;gt; failover to ‘Standby’;&lt;br /&gt;….&lt;br /&gt;Failover to standby succeeded.&lt;br /&gt;And also… &lt;br /&gt;&lt;br /&gt;DGMGRL&amp;gt; failover to ‘Primary’;&lt;br /&gt;….&lt;br /&gt;Failover to primary succeeded.&lt;br /&gt;&lt;br /&gt;&lt;a href="" name="DATAGUARD_OBSERVER_:"&gt;&lt;/a&gt;&lt;strong&gt;DATAGUARD OBSERVER : &lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;/strong&gt;Observer is a utility that is available with the dataguard. Its basic purpose is to keep the database available to the clients all the time. It is started on a separate location other than Primary and Standby locations. After starting the observer, it starts watching continuously both the sites. Whenever the PRIMARY database fails due to any reason and the connection between the PRIMARY site and the observer breaks, the observer waits for a certain time which is set up during setting the broker configuration. When this time passes, the observer automatically starts the failover process. As a result, the Physical Standby database is converted to PRIMARY database. After this failover, the users again connect to the database. This connection redirects them automatically to the new PRIMARY database.&lt;br /&gt;&lt;br /&gt;&lt;a href="" name="OBSERVER_CONFIGURATION:"&gt;&lt;/a&gt;&lt;strong&gt;OBSERVER CONFIGURATION&lt;/strong&gt;:&lt;br /&gt;There are some important configuration settings that are needed to be set before starting the Dataguard (DG) Observer. Main thing is to set the STANDBY database to Maximum Availability protection mode. DG broker configuration must also be set to “MaxAvailability” protection mode. After this we need to enable “fast_start failover” parameter of the broker configuration. Without setting these options, broker will not allow to proceed for observer to work for remote failover. Following are the steps to enable the observer. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;OBSERVER SITE&lt;/strong&gt;:&lt;br /&gt;OBSERVER Machine IP: 192.168.12.165 PRIMARY Machine IP: 192.168.12.146 STANDBY Machine IP: 192.168.12.196 &lt;br /&gt;&lt;br /&gt;TNS Service Name for PRIMARY site: to_primary (Through this service, the observer machine will be connected to PRIMARY machine) &lt;br /&gt;&lt;br /&gt;TNS Service Name for STANDBY site: to_standby (Through this service, the observer machine will be connected to STANDBY machine) &lt;br /&gt;&lt;br /&gt;(NOTE: Fresh DG broker configuration will be created for implementation of Observer. Therefore, remove any previously created configuration.) &lt;br /&gt;&lt;br /&gt;&lt;a href="" name="Step_1:"&gt;&lt;/a&gt;&lt;strong&gt;Step 1:&lt;/strong&gt;Create TNS services on the observer machine for PRIMARY site and STANDBY site through which the observer machine will be connected to the primary and standby databases.&lt;br /&gt;TNS service name for PRIMARY site is ‘to_primary’. TNS service name for STANDBY site is ‘to_standby’.&lt;br /&gt;&lt;br /&gt;&lt;a href="" name="Step_2:"&gt;&lt;/a&gt;&lt;strong&gt;Step 2:&lt;/strong&gt;Before starting the broker CLI (DGMGRL) we have to enable FLASHBACK on both the Primary and Standby databases.&lt;br /&gt;At mount stage execute: &lt;br /&gt;&lt;br /&gt;• SQL&amp;gt; Alter database Flashback on;&lt;br /&gt;Database altered.&lt;br /&gt;&lt;br /&gt;&lt;a href="" name="Step_3:"&gt;&lt;/a&gt;&lt;strong&gt;Step 3:&lt;/strong&gt;On the STANDBY site, edit Log_Archive_Dest_2 parameter and add three properties i.e. LGWR AFFIRM SYNC. These properties are needed to bring the broker protection mode to MaxAvailability. &lt;br /&gt;&lt;br /&gt;• SQL&amp;gt; Alter System set Log_archive_dest_2=’Service=to_primaryLGWR AFFIRM SYNCVALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE)db_unique_name=primary’;&lt;br /&gt;System altered.&lt;br /&gt;&lt;br /&gt;&lt;a href="" name="Step_4:"&gt;&lt;/a&gt;&lt;strong&gt;Step 4: &lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;/strong&gt;Now execute the following command on the primary database to change the protection mode from MAXIMUM PERFORMANCE to MAXIMUM AVAILABILITY. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;• SQL&amp;gt; Alter database set primary database to maximize availability;&lt;br /&gt;&lt;br /&gt;Shut down the PRIMARY database and then restart it. Check the protection mode on both PRIMARY and STANDBY databases. &lt;br /&gt;&lt;br /&gt;• SQL&amp;gt; select protection_modefrom v$database.&lt;br /&gt;It should return MAXIMUM AVAILABILITY. &lt;br /&gt;&lt;br /&gt;&lt;a href="" name="Step_5:"&gt;&lt;/a&gt;&lt;strong&gt;Step 5: &lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;/strong&gt;Now start the DG CLI (DGMGRL) to start the broker.&lt;br /&gt;C:\&amp;gt; dgmgrlDGMGRL for 32-bit Windows: Version 10.2.0.1.0 - ProductionCopyright (c) 2000, 2005, Oracle. All rights reserved.&lt;br /&gt;Welcome to DGMGRL, type "help" for information. &lt;br /&gt;&lt;br /&gt;DGMGRL&amp;gt;&lt;br /&gt;DGMGRL&amp;gt; connect sys/oracle@primaryConnected.&lt;br /&gt;Check any previously created configuration and remove it. &lt;br /&gt;&lt;br /&gt;DGMGRL&amp;gt; show configuration;&lt;br /&gt;If a configuration is displayed then remove it. &lt;br /&gt;&lt;br /&gt;DGMGRL&amp;gt; remove configuration;&lt;br /&gt;Removed.&lt;br /&gt;&lt;br /&gt;Now create a new configuration.&lt;br /&gt;DGMGRL&amp;gt; create configuration ‘broker1’ as&lt;br /&gt;&amp;gt; primary database is ‘primary’&lt;br /&gt;&amp;gt; connect identifier is to_primary;&lt;br /&gt;Configuration “broker1” created with primary database “primary”&lt;br /&gt;&lt;br /&gt;DGMGRL&amp;gt; add database ‘standby’ as&lt;br /&gt;&amp;gt; connect identifier is to_standby &lt;br /&gt;&amp;gt; maintained as physical;&lt;br /&gt;Database “broker1” added&lt;br /&gt;&lt;br /&gt;DGMGRL&amp;gt; show configuration;&lt;br /&gt;Configuration &lt;br /&gt;Name: broker1&lt;br /&gt;Enabled: NO &lt;br /&gt;Protection Mode: MaxPerformance&lt;br /&gt;Fast-Start Failover: DISABLE &lt;br /&gt;Databases: primary - Physical standby database &lt;br /&gt;standby - Primary database&lt;br /&gt;Current status for "broker1":&lt;br /&gt;DISABLE&lt;br /&gt;&lt;br /&gt;DGMGRL&amp;gt; enable configuration;&lt;br /&gt;Enabled.&lt;br /&gt;&lt;br /&gt;DGMGRL&amp;gt; show configuration;&lt;br /&gt;Configuration &lt;br /&gt;Name: broker1 &lt;br /&gt;Enabled: YES &lt;br /&gt;Protection Mode: MaxPerformance &lt;br /&gt;Fast-Start Failover: DISABLE &lt;br /&gt;Databases: &lt;br /&gt;primary - Physical standby database &lt;br /&gt;standby - Primary database&lt;br /&gt;Current status for "broker1":&lt;br /&gt;SUCCESS&lt;br /&gt;DGMGRL&amp;gt; edit database PRIMARY set property LogXptMode=’SYNC’;&lt;br /&gt;Property "logxptmode" updated&lt;br /&gt;DGMGRL&amp;gt; edit database STANDBY set property LogXptMode=’SYNC’;&lt;br /&gt;Property "logxptmode" updated&lt;br /&gt;DGMGRL&amp;gt; edit configuration set protection mode as MaxAvailability;&lt;br /&gt;Succeeded.&lt;br /&gt;DGMGRL&amp;gt; enable fast_start failover;&lt;br /&gt;Enabled.&lt;br /&gt;DGMGRL&amp;gt; show configuration;&lt;br /&gt;Configuration &lt;br /&gt;Name: dg1 &lt;br /&gt;Enabled: YES &lt;br /&gt;Protection Mode: MaxAvailability &lt;br /&gt;Fast-Start Failover: ENABLED &lt;br /&gt;Databases: primary - Physical standby database &lt;br /&gt;- Fast-Start Failover target &lt;br /&gt;standby - Primary database&lt;br /&gt;&lt;br /&gt;Current status for "dg1": Warning: ORA-16608: one or more databases have warnings &lt;br /&gt;&lt;br /&gt;If you check this error by querying StatusReport property of the PRIMARY database, you will find that Fast Start Failover OBSERVER is not started. &lt;br /&gt;Simply start the observer.&lt;br /&gt;DGMGRL&amp;gt; show database primary StatusReport&lt;br /&gt;&lt;br /&gt;Now start the observer.&lt;br /&gt;DGMGRL&amp;gt; start observer&lt;br /&gt;Observer Started.&lt;br /&gt;&lt;br /&gt;The Observer has started its working. The current session of ‘cmd’ will not be returned to you because it is a foreground process. It will continuously observe PRIMARY site. To check the configuration, open another ‘cmd’ window and check the configuration.&lt;br /&gt;&lt;br /&gt;DGMGRL&amp;gt; show configuration;&lt;br /&gt;Configuration&lt;br /&gt;Name: broker1 &lt;br /&gt;Enabled: YES &lt;br /&gt;Protection Mode: MaxAvailability &lt;br /&gt;Fast-Start Failover: Enabled Databases: standby - Primary database primary - Physical standby database - Fast – Start Failover target&lt;br /&gt;Fast-Start Failover &lt;br /&gt;&lt;br /&gt;Threshold: 30 seconds Observer: orat &lt;br /&gt;&lt;br /&gt;Current status for “broker1”:SUCCESS&lt;br /&gt;&lt;br /&gt;At this stage every thing is going on normally. An identical copy of PRIMARY database is being made at the STANBY site. If due to any reason, PRIMARY database crashes, the observer will start its working. &lt;br /&gt;&lt;br /&gt;DGMGRL&amp;gt; start observer&lt;br /&gt;Observer started.15:21:21.69 Wednesday, January 07, 2009&lt;br /&gt;Initiating fast-start failover to database “standby”…&lt;br /&gt;Performing failover NOW, please wait…&lt;br /&gt;Operation requires shutdown of instance “orcl” on database “standby”&lt;br /&gt;Shutting down instance “orcl”…&lt;br /&gt;ORA-01109: database not open&lt;br /&gt;Database dismounted.&lt;br /&gt;ORACLE instance shut down.&lt;br /&gt;&lt;br /&gt;Operation requires startup of instance “orcl” on database “standby” Starting instance “orcl”… &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="" name="Data_Guard_With_Real_Time"&gt;&lt;/a&gt;&lt;strong&gt;Data Guard With Real Time &lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;/strong&gt;Redo data is applied to the standby database as soon as it is received from the primary database.In Oracle9i Data Guard this apply has to wait till an archivelog is� created on the standby database For &lt;strong&gt;Redo Apply: &lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;/strong&gt;ALTER DATABASE RECOVER MANAGED STANDBY DATABASE USING CURRENT LOGFILE&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;For SQL Apply: &lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;ALTER DATABASE START LOGICAL STANDBY APPLY IMMEDIATE&lt;br /&gt;&lt;br /&gt;When real time apply is enabled, RECOVERY_MODE column in V$ARCHIVE_DEST_STATUS displays “MANAGED REAL�TIME APPLY” &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="" name="Real_Time_Apply_.E2.80.93_Benefits"&gt;&lt;/a&gt;&lt;strong&gt;Real Time Apply – Benefits&lt;/strong&gt;Standby databases now more closely synchronized with the primary&lt;br /&gt;More up-to-date, real-time reporting&lt;br /&gt;Faster switchover and failover times&lt;br /&gt;Reduces planned and unplanned downtime&lt;br /&gt;Better Recovery Time Objective (RTO) for DR&lt;br /&gt;&lt;br /&gt;&lt;a href="" name="Note"&gt;&lt;/a&gt;&lt;strong&gt;Note &lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;For Real Time We must create standby log files .Redo logs can be created even after the standby has been created &lt;br /&gt;&lt;br /&gt;Create the SRL's : &lt;br /&gt;&lt;br /&gt;SQL&amp;gt;ALTER DATABASE ADD STANDBY LOGFILE GROUP 4 (‘C:\oracle\product\10.2.0\oradata\ORCL\StandbyRedo4.log’) SIZE 100M; &lt;br /&gt;SQL&amp;gt;ALTER DATABASE ADD STANDBY LOGFILE GROUP 5 (‘C:\oracle\product\10.2.0\oradata\ORCL\StandbyRedo5.log’) SIZE 100M; &lt;br /&gt;SQL&amp;gt;ALTER DATABASE ADD STANDBY LOGFILE GROUP 6 (‘C:\oracle\product\10.2.0\oradata\ORCL\StandbyRedo6.log’) SIZE 100M; &lt;br /&gt;&lt;br /&gt;&lt;a href="" name="Converting_To_Real_time"&gt;&lt;/a&gt;&lt;strong&gt;Converting To Real time &lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;/strong&gt;Real-time apply : When real-time apply is enabled, the log apply services can apply redo data as it is received, without waiting for the current standby redo log file to be archived. In this example we are going to use LGWR on the primary for redo transport just to prove that a committed record on the primary without switching a log will show up on the standby. However real-time apply will work with both LGWR and ARCH using SRL's. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Set up log_archive_dest_2 on the primary with LGWR ASYNC or SYNC&lt;br /&gt;&lt;br /&gt;log_archive_dest_2='SERVICE=to_standby LGWR ASYNCVALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE)&lt;br /&gt;DB_UNIQUE_NAME=standby ' &lt;br /&gt;&lt;br /&gt;shutdown and startup the primary or if done dynamically switch a log file&lt;br /&gt;You will see the following message in the alert log &lt;br /&gt;&lt;br /&gt;*LGWR: Setting 'active' archival for destination LOG_ARCHIVE_DEST_2&lt;br /&gt;&lt;br /&gt;&lt;a href="" name="Enable_Real_Time"&gt;&lt;/a&gt;&lt;strong&gt;Enable Real Time&lt;/strong&gt; &lt;br /&gt;&lt;br /&gt;On the standby cancel out of the current managed recovery &lt;br /&gt;&lt;br /&gt;SQL&amp;gt;ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL; &lt;br /&gt;&lt;br /&gt;Place it back in recovery with Real time apply&lt;br /&gt;SQL&amp;gt;ALTER DATABASE RECOVER MANAGED STANDBY DATABASE USING CURRENT LOGFILE DISCONNECT;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="" name="Test_Case"&gt;&lt;/a&gt;&lt;strong&gt;Test Case &lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;/strong&gt;Create a table on Primary. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;SQL&amp;gt; create table test 2 ( name varchar2(30));Table created.&lt;br /&gt;&lt;br /&gt;Now Insert some records and commit. &lt;br /&gt;&lt;br /&gt;SQL&amp;gt; insert into test 2 values 3 ('Vikram'); 1 row created.SQL&amp;gt; commit;Commit complete.&lt;br /&gt;Now on Standby Run these commands. &lt;br /&gt;&lt;br /&gt;SQL&amp;gt;ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL;&lt;br /&gt;Database altered.&lt;br /&gt;SQL&amp;gt;ALTER DATABASE OPEN READ ONLY;&lt;br /&gt;Database altered.&lt;br /&gt;&lt;br /&gt;Now check the table and record which you inserted.&lt;br /&gt;SQL&amp;gt; select * from test;&lt;br /&gt;NAME&lt;br /&gt;------------------------------&lt;br /&gt;Vikram&lt;br /&gt;&lt;br /&gt;We can our table and record without any log switch. &lt;br /&gt;&lt;br /&gt;After Checking your Real Time work Dont Forget to put your database back in recover mode ;)&lt;br /&gt;Place the standby back in managed recover mode &lt;br /&gt;&lt;br /&gt;SQL&amp;gt;ALTER DATABASE RECOVER MANAGED STANDBY DATABASE USING CURRENT LOGFILE DISCONNECT;Database altered.&lt;br /&gt;&lt;br /&gt;This will take the standby directly from read only mode and place it in managed recovery mode.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1478036687830627925-5221736818134824130?l=appsdbaexperts.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://appsdbaexperts.blogspot.com/feeds/5221736818134824130/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://appsdbaexperts.blogspot.com/2009/01/this-configuration-has-been.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1478036687830627925/posts/default/5221736818134824130'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1478036687830627925/posts/default/5221736818134824130'/><link rel='alternate' type='text/html' href='http://appsdbaexperts.blogspot.com/2009/01/this-configuration-has-been.html' title=''/><author><name>Vikram Singh</name><uri>http://www.blogger.com/profile/00122476821250599716</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1478036687830627925.post-5887477567163693542</id><published>2008-07-26T22:40:00.000-07:00</published><updated>2008-07-26T23:04:17.032-07:00</updated><title type='text'>Clusterware Commands</title><content type='html'>To work efficiently on Clusterware one should be familier with commands. &lt;br /&gt;&lt;br /&gt;Below are few commands which I came across while working on it.&lt;br /&gt;&lt;br /&gt;-&gt; To Check whether clusterware is up or not, and which services are up and running.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;em&gt;$CRS_HOME/bin &gt; ./crs_stat -t&lt;/em&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;This is will show complete list of components installed and their status eg. on a RAC environment with ASM it will show following components.&lt;br /&gt;&lt;br /&gt;Name           Type           Target    State     Host&lt;br /&gt;------------------------------------------------------------&lt;br /&gt;ora....SM1.asm application    ONLINE    ONLINE    node name&lt;br /&gt;ora....03.lsnr application    ONLINE    ONLINE    node name&lt;br /&gt;ora....003.gsd application    ONLINE    ONLINE    node name&lt;br /&gt;ora....003.ons application    ONLINE    ONLINE    node name&lt;br /&gt;ora....003.vip application    ONLINE    ONLINE    node name&lt;br /&gt;ora....SM2.asm application    ONLINE    ONLINE    node name&lt;br /&gt;ora....04.lsnr application    ONLINE    ONLINE    node name&lt;br /&gt;ora....004.gsd application    ONLINE    ONLINE    node name&lt;br /&gt;ora....004.ons application    ONLINE    ONLINE    node name&lt;br /&gt;ora....004.vip application    ONLINE    ONLINE    node name&lt;br /&gt;ora.database.db    application    ONLINE    ONLINE    node name&lt;br /&gt;ora....d1.inst application    ONLINE    ONLINE    node name&lt;br /&gt;ora....d2.inst application    ONLINE    ONLINE    node name&lt;br /&gt;&lt;br /&gt;-&gt; To Start clusterware services&lt;br /&gt;&lt;br /&gt;&lt;em&gt;&lt;strong&gt;$CRS_HOME/bin &gt; ./crsctl start crs&lt;/strong&gt;&lt;/em&gt;&lt;br /&gt;&lt;br /&gt;-&gt; To Stop clusterware services&lt;br /&gt;&lt;br /&gt;&lt;em&gt;&lt;strong&gt;$CRS_HOME/bin &gt; ./crsctl stop crs&lt;/strong&gt;&lt;/em&gt;&lt;br /&gt;&lt;br /&gt;-&gt; To Start one specific service eg. after checking services status, you came to know that Listener is down on Node A, to bring that up :&lt;br /&gt;&lt;br /&gt;&lt;em&gt;&lt;strong&gt;$CRS_HOME/bin &gt; ./srvctl start listener -n Node A&lt;/strong&gt;&lt;/em&gt;&lt;br /&gt;&lt;br /&gt;-&gt; To check all the commands to start/stop/add etc related to clusterware services&lt;br /&gt;&lt;br /&gt;&lt;em&gt;&lt;strong&gt;$CRS_HOME/bin &gt; ./srvctl&lt;/strong&gt;&lt;/em&gt;&lt;br /&gt;&lt;br /&gt;This will show all the avaliable commands&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1478036687830627925-5887477567163693542?l=appsdbaexperts.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://appsdbaexperts.blogspot.com/feeds/5887477567163693542/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://appsdbaexperts.blogspot.com/2008/07/clusterware-commands.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1478036687830627925/posts/default/5887477567163693542'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1478036687830627925/posts/default/5887477567163693542'/><link rel='alternate' type='text/html' href='http://appsdbaexperts.blogspot.com/2008/07/clusterware-commands.html' title='Clusterware Commands'/><author><name>Vikram Singh</name><uri>http://www.blogger.com/profile/00122476821250599716</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1478036687830627925.post-1504481302082206206</id><published>2008-06-27T00:44:00.000-07:00</published><updated>2008-06-27T02:44:06.343-07:00</updated><title type='text'>Installing Clusterware and RAC DB</title><content type='html'>Well today I have to install an Oracle RAC environment on AIX.&lt;br /&gt;&lt;br /&gt;We use ASM for our shared disks between our servers. This is where our database (tablespaces), redo logs, spfiles, and archive logs reside. For the Oracle Cluster Ready Services you can get by with 1 OCR disk and 2 voting disks. For redundancy, we run with 2 OCR disks and 3 voting disks. The redundancy, raid, striping etc is done in our SAN.  One thing you do need to know is that if you use ASM then you need your luns to be the same size for each diskgroup or well your raw devices to be the same size. Otherwise it can throw off your rebalancing algorithm. NOTE: in the latest 10.2.0.3&lt;br /&gt;&lt;br /&gt;The basic requirements of installing Oracle on AIX /Unix still applies. You need to create the oracle user, the dba group and the oinstall group. This is in the Oracle Database install guide and also in the Oracle RAC install guide. It took our SA’s about 2 DAYS to build the boxes according to specs. Another thing I would highly advise is to get sudo for ALL just to make it easier. You will also find that it works well that you are in constant contact with your SA’s should you need something or find it missed. After the install is done, they can remove the sudo command.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Pre-Configuring the Servers&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;br /&gt;A couple of things you won’t find in the doc that we did is we set the io buffer cache to 2-5% of available RAM. We also had our Lun’s precarved out to 64GB Luns. Luns being the physical disk that is on the SAN. The SAN admin and AIX admin handle attaching these and making them shared. I will get into how you do that below. The thing is we did the same thing in Linux and we used fdisk to carve out the OCR and voting disks. In AIX you use a LVM. The problem with the LVM in AIX according to a couple of our AIX admins is that they can’t give both nodes access to the same disk at the same time. They would need to use something like HACMP which we don’t have a license for on this server. The answer? The admins are going to get 5 luns at 1GB a piece. They will be attached and each will have a major and minor spindle number. He can then use mknod to essentially create an alias and voila. I will also show what the cluster verification utility is and how I use it to verify things like user equivalence, node connectivity, etc… I will even show where we get an error an I ignore it. Also, depending on if your database does a lot of reading and writing, you will want fine striping like 128k. If you are heavy read and write intensive like a data warehouse then you want course striping.&lt;br /&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;My main reference point was the &lt;a title="Oracle 10gR2 RAC - AIX install guide" href="http://www.oracle.com/pls/db102/to_toc?pathname=install.102%2Fb14201%2Ftoc.htm&amp;amp;remark=portal+%28Grid+Computing%29" target="_blank"&gt;Oracle 10gR2 RAC - AIX install guide&lt;/a&gt; and the &lt;a title="Oracle Automated Storage Management" href="http://www.amazon.com/Oracle-Automatic-Storage-Management-Under/dp/0071496076/ref=pd_bbs_1?ie=UTF8&amp;amp;s=books&amp;amp;qid=1198426858&amp;amp;sr=8-1"&gt;Oracle ASM guide&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;System Requirements for all nodes:&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;br /&gt;AIX 5L version 5.3 maintenance Level 02 or later&lt;br /&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Hardware&lt;br /&gt;&lt;/strong&gt;·                 Allocate swap space equivalent to 1.5 x physical memory&lt;br /&gt;·                 1GB of disk space in the /tmp directory&lt;br /&gt;·                 64 - bit kernel / processor is required&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;OS filesets&lt;/strong&gt;&lt;br /&gt;·                 bos.adt.base&lt;br /&gt;·                 bos.adt.lib&lt;br /&gt;·                 bos.adt.libm&lt;br /&gt;·                 bos.perf.libperfstat&lt;br /&gt;·                 bos.perf.perfstat&lt;br /&gt;·                 bos.perf.proctools&lt;br /&gt;·                 rsct.basic.rte&lt;br /&gt;·                 rsct.compat.client.rte&lt;br /&gt;·                 xlC.aix50.rte 7.0.0.4 or later&lt;br /&gt;·                 clC.rte 7.0.0.1 or later&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;C/C++ Compiler&lt;br /&gt;&lt;/strong&gt;·                 IY65361&lt;br /&gt;·                 IY65362&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;AIX PTF for APARs&lt;br /&gt;&lt;/strong&gt;·                 IY89080&lt;br /&gt;·                 IY92037&lt;br /&gt;·                 IY68989&lt;br /&gt;·                 IY68874&lt;br /&gt;·                 IY70031&lt;br /&gt;·                 IY76140&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;JDK&lt;/strong&gt;&lt;br /&gt;·                 IY63533 - SDK 1.4 64-bit 1.4.2.1&lt;br /&gt;·                 IY65305 - SDK 1.4 32-bit 1.4.2.2&lt;br /&gt;·                 IY58350 - SDK 1.3.1.16 32-bit&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Shell Limits and Network Tuning Parameters&lt;br /&gt;&lt;/strong&gt;·                 Ensure ssh2 functions on all nodes&lt;br /&gt;·                 Soft File size = -1 (Unlimited)&lt;br /&gt;·                 Soft CPU time = -1 (Unlimited)&lt;br /&gt;·                 Soft Data segment = -1 (Unlimited)&lt;br /&gt;·                 Soft Stack size = -1 (Unlimited)&lt;br /&gt;·                 maxuproc = 65536&lt;br /&gt;·                 ipqmaxlen = 512&lt;br /&gt;·                 rfc1323 = 1&lt;br /&gt;·                 sb_max = 2*655360&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Set u-limit for Oracle account as follows:&lt;br /&gt;&lt;/strong&gt;·                 sudo -u root ulimit -a&lt;br /&gt;o                        time(seconds)        unlimited&lt;br /&gt;o                        file(blocks)         unlimited&lt;br /&gt;o                        data(kbytes)         unlimited&lt;br /&gt;o                        stack(kbytes)        unlimited&lt;br /&gt;o                        memory(kbytes)       unlimited&lt;br /&gt;o                        coredump(blocks)     unlimited&lt;br /&gt;o                        nofiles(descriptors) unlimited&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;You should have unlimited for oracle and root user otherwise it will fail to spawn the process.&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;We also need to configure the network configuration. We have a public network and also a vip ip that goes on that public network. The SA only configures the static public network to your public interface but he puts both that and the VIP into the /etc/hosts file and even in DNS if you want it there (in DNS). Oracle’s CRS does the bonding of the VIP to the card. That way if a node fails it can bring the VIP up on another node in the cluster. You also need to configure your interconnects. For this we have 2 NIC’s on each node going through 2 separate switches so no single point of failure; however, if one of the interconnects fails that CRS uses, then it will fence and evict other nodes out of the cluster. So how did we get around this? We had the SA bond the two interconnects into one IP. We then used etherchannel to do load balancing and the speed of the interconnects is full 1000FD. Something else you can do is use jumbo frame sizes of 9000 MTU instead of the default of 1500 MTU. For this to work on Cisco switches you have to have a dedicated switch and not VLAN’s because it is a global setting on the switch and you don’t want to use jumbo frames for anything else (in most cases). Since RAC involves potentially feeding a lot of blocks across the interconnect, the jumbo frames remove a lot of the overhead and allow plenty of room for data. It also means there is less work to do to break up the blocks into small packets and reassemble since there are fewer parts.Also, you never ever ever ever want to use a cross over cable for your interconnect. If the cable breaks or if a card fails, which one do you know is bad? Also, if you want to scale, then how do you do it beyond two nodes? For a reference on this, look in metalink and also Google Mike Erwin and RAC. He has some discussions about it.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;So this is what our network configuration looks like:&lt;br /&gt;&lt;br /&gt;cat /etc/hosts    &lt;br /&gt;&lt;br /&gt;         127.0.0.1       loopback              localhost     &lt;br /&gt;&lt;br /&gt;#PUBLIC INTERFACE&lt;br /&gt;&lt;br /&gt; 10.10.10.1      racnode1              racnode1.domain    &lt;br /&gt; 10.10.10.2      racnode2              racnode2.domain   &lt;br /&gt;&lt;br /&gt;  #VIP ON PUBLIC - Assuming a subnet mask of 255.255.255.0    &lt;br /&gt;&lt;br /&gt; #Notice how it is on the same subnet    &lt;br /&gt;&lt;br /&gt; 10.10.10.11     racnode1-vip          racnode1-vip.domain   &lt;br /&gt; 10.10.10.12     racnode2-vip          racnode2-vip.domain  &lt;br /&gt;&lt;br /&gt;   #PRIVATE INTERCONNECTS     &lt;br /&gt;&lt;br /&gt;#These are bonded - really 2 NICs on each node  &lt;br /&gt;&lt;br /&gt; 192.168.1.1     racnode1-priv         racnode1-priv.domain     &lt;br /&gt; 192.168.1.2     racnode2-priv         racnode2-priv.domain&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Once this is all configured, you then need to setup your raw devices. We did not want to license HACMP to carve out a couple of raw disks from logical volumes from existing physical volumes or LUNS, so we had the SAN admins carve out the smallest LUNS they would give me which were 1GB. The AIX SA then made them available to me. The 5 disks were /dev/hdisk6 - /dev/hdisk10. 2 for the OCR and 3 for the voting disks. The OCR’s for AIX only need to be 256MB and the Voting only need to be 20MB a piece. This might seem like overkill but was cheaper to lose 3.5GB of disk than to license HACMP.  There were also devices labeled /dev/rhdisk6 - /dev/rhdisk10 which is the raw character device. This is what Oracle actually accesses and the permissions on the 2 OCR disks need to be owned by root and the dba group. The 3 voting disks need to be owned by oracle and the dba group. I have seen these work with the oinstall group used as well but the Oracle doc says to use the dba group so I will. You also need to change permissions on the underlying raw device unless using multipathing software which creates a virtual name to address multiple paths to the same disk (multiple HBAs). To change the permissions issue the following command as root or use sudo.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;chown root:dba /dev/rhdisk6&lt;br /&gt;chmod 640 /dev/rhdisk6&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Do the same thing for rhdisk7 or whichever your raw devices are. With the 3 voting disks as well as all your other ASM disks (if you are using ASM) then issue the following command as root or use sudo:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;chown oracle:dba /dev/rhdisk8&lt;br /&gt;chmod 660 /dev/rhdisk8&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Do the same thing for the rest of the devices.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;There are a couple of things to note about setting ownership on these “raw devices”.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;First, find out where the logical character device is pointing. For example, ls -l /dev/rdsk and see where it points and then grant permission on that as well. If you are using multipathing software, then ignore. For example, if you are using emcpower path, then just grant ownership of emcpowera through emcpowerz which is the virtual name.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Secondly, you need to set the no-reservation flag to prevent locking on the hdisks and allow concurrent I/O.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;For all multipath I/O or MPIO capable devices such as ESS, DS8000, and DS6000, use this command.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;chdev -l hdisk1 -a reserve_policy=no_reserve.&lt;br /&gt;&lt;br /&gt;For EMC Symmetrix, Clarion, Hitachi, IBM DS4000, and non-MPIO capable devices, do the following&lt;br /&gt;&lt;br /&gt;chdev -l hdisk -a reserve_lock=no&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Next, user equivalence needs to be setup. What user equivalence does is allows Oracle to login to other nodes in the cluster without needing a password. It does this via interactive logins. We also have an issue and motd fie in our etc directory which throws it off. To get around this you either remove those files or rename them or you can create a .hushlogin file in the Oracle user’s home directory.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;To setup user equivalence, issue the following commands:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;NOTE: The docs say to give them a password but I gave them no password. It might be a little less secure but in doing this I won’t have to issue the ssh-agent $SHELL command and then the ssh-add command to add the keys for each session.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;/usr/bin/ssh-keygen -t rsa&lt;br /&gt;/usr/bin/ssh-keygen -t dsa&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;You then create an authorized_keys files and add keys to it then copy it to all nodes in the RAC.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Example for a 2 node RAC cluster:&lt;br /&gt;&lt;br /&gt;touch ~/.ssh/authorized_keys&lt;br /&gt;&lt;br /&gt;ssh racnode1 cat /home/oracle/.ssh/id_rsa.pub &gt;&gt; authorized_keys&lt;br /&gt;&lt;br /&gt;ssh racnode1 cat /home/oracle/.ssh/id_dsa.pub &gt;&gt; authorized_keys&lt;br /&gt;&lt;br /&gt;ssh racnode2 cat /home/oracle/.ssh/id_rsa.pub &gt;&gt; authorized_keys&lt;br /&gt;&lt;br /&gt;ssh racnode2 cat /home/oracle/.ssh/id_dsa.pub &gt;&gt; authorized_keys&lt;br /&gt;&lt;br /&gt;scp ~/.ssh/authorized_keys racnode2:/home/oracle/.ssh/&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Now we can verify if it works. When you run the command below, you should ONLY get a driectory output. If you get any banners or anything else it will fail.&lt;br /&gt;&lt;br /&gt;ssh racnode2 ls&lt;br /&gt;&lt;br /&gt;Now you need to verify things using Oracle’s cluster verification utility. It could fail if you have some private interfaces that are really public, like anything that starts with 10 for example. If you get this, just ignore it.  You also want to verify connectivity to shared storage.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;./runcluvfy.sh stage -pre crsinst -n litprxor01dm,litprxor11dm&lt;br /&gt;&lt;br /&gt;./runcluvfy.sh comp ssa -n litprxor01dm,litprxor11dm -s&lt;br /&gt;&lt;br /&gt; /dev/rhdisk8,/dev/rhdisk9,/dev/rhdisk10&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Installation:&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;After this has been verified it will be time to start the install. The first thing you need to install is Oracle’s CRS. I would also recommend reading through the documentation first.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;I ran the rootpre.sh that was in the rootpre folder on each node. I used scp -r to copy the directory over to each node and run it. The software only needs to be on one node though because it uses user equivalence to copy it over. If you have a slow interconnect then it could be a long install : ).&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;After running the rootpre, I then bring up the ./runInstaller on my local screen using X redirect since my AIX box is not running XWindows. I then proceed through the install and select both nodes. I answer a few questions including what I want to use for my interconnect. If your etc/hosts file is off then it will throw errors. Make sure they match up correctly. You will also need to tell it which interface is public (VIPs), which is private (interconnect), and which ones are not used. At the end it will ask you to run a series of scripts and it will tell you which node to run them on. Sudo and the comman through an error. I had to sudo su - root and then run them. I can’t recall the error but if I do I will update this post. It was about something missing because of the path of the Oracle user not root.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Also, you will need to run VIPCA if it errors. The reason it errors is because one of the programmers had it look for a private IP address and mark it as an invalid VIP candidate. It runs silently as part of the CRS install. Manually running it after the install fixes the problem.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;After this, I installed the Oracle Database binaries. Again, I had the software on one node and it installed across all nodes. I told it not to create a database. One thing you have to decide if you use ASM is if you want it to share the same binaries as the database. If you do, then patching becomes much faster with less downtime. The drawback is if you want multiple versions of the DB software to use ASM. Example, Oracle 11g comes out and I want to put it on this server. I also want to use ASM, what happens if it requires a new version of ASM? 10g won’t work with that new version. It also takes up more space to have separate homes. As you can see, there are pros and cons to both sides. After installing it in the same home without creating any instances or databases I ran the 10.2.0.3 patch on the CRS home and the database home. You need a metalink account to get this.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Patching:&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;NOTE: I have included my path but if it is set in your $PATH variable then issuing crsctl should work.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;You need to issue with root privileges the following command:&lt;br /&gt;&lt;br /&gt;/u01/app/oracle/product/10.2.0/crs/crsctl stop crs&lt;br /&gt;&lt;br /&gt;You will have to start it after the finish patching it with the following command:&lt;br /&gt;&lt;br /&gt;/u01/app/oracle/product/10.2.0/crs/crsctl start crs&lt;br /&gt;&lt;br /&gt;You can verify that CRS starts by issuing the following command:&lt;br /&gt;&lt;br /&gt;crs_stat -t&lt;br /&gt;&lt;br /&gt;You will have to do the same thing for the Oracle home. Once patched, you can then create a database. For now, and because of the extensity of this already post already, I would say use dbca. Before you create the database, you should run NETCA and setup your listeners on both nodes. This will then setup the correct local_listeners and remote_listeners values in your DB parameters as well as your TNSNAMES.ORA file and LISTENER.ORA file.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;When you setup ASM using DBCA, you will need to use a pfile and not an spfile. Use the default location. It will then create it in your admin/+ASM/pfile directory but it also creates it in your $ORACLE_HOME/dbs directory. The dbs directory is where you will want to make changes to your files later. When I setup the ASM and discovered the disks, I chose external redundancy because the SAN has it built in with RAID 5 or RAID 10. It will also ask you for an admin password. Remember this because if you use Grid Control, you will need to know that password to monitor your ASM disks. If you forget it, you will need to create a new password file. Also, if you use the default of +ASM then the instance on the first node will be +ASM1 and on the second will be +ASM2. You can only log into ASM as sysdba. It is not a database, just an instance with some data dictionary views. Also, when I built my diskgroups, I made my flash recovery area bigger than my database. I multiplex my redo logs and control files here. You canalso decide if you want to multiplex your archive logs between them. I send my RMAN backups uncompressed to DG2 as well. You can see why this has to be bigger than the diskgroup I use for the DB. You can use lower tier storage here than you do for the database. Work with your SAN guys in setting that up.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;When you create the database and have it use ASM you can select the diskgroups you want to use. In my case, I chose both. I named them DG1 and DG2. When I turned on archiving, I used DG2. For the multiplexing of redo logs I used +DG1 and +DG2. That is all I selected. For the Flash Recovery Area, I used +DG2. When I got into my redo logs, you will notice there is 4 by default. There is 2 for the first node and 2 for each additional node. If you look at them you will see the thread numbers are different. I went ahead and created a 5th and 6th group. 5th was thread 1 and 6th was thread 2. This gives me 3 redo logs for each node. When they archive, they will not overwrite eachother. I also made my redo logs 100MB in size. Oracle makes them way too small for my liking. If I can reduce the number of log switches, then I can reduce some overhead. When you are done, it will create your database on both nodes. After it finishes you can issue the crs_stat -t command again and you will see your services are started. You can also create other RAC databases doing the same thing.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;A gotcha that I ran into was the load balancing. The parameter remote_listener is set to point to a tnsname in your tnsnames.ora. Whatever the host is, is what it will return when it tries to load balance. If it is not in DNS, then when it returns the connect string to go to the other node your local machine will not resolve it. You could make an entry in your etc/hosts file or you could just hardcode the VIP address and then it will always resolve. Up to you.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1478036687830627925-1504481302082206206?l=appsdbaexperts.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://appsdbaexperts.blogspot.com/feeds/1504481302082206206/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://appsdbaexperts.blogspot.com/2008/06/installing-clusterware-and-rac-db.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1478036687830627925/posts/default/1504481302082206206'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1478036687830627925/posts/default/1504481302082206206'/><link rel='alternate' type='text/html' href='http://appsdbaexperts.blogspot.com/2008/06/installing-clusterware-and-rac-db.html' title='Installing Clusterware and RAC DB'/><author><name>Vikram Singh</name><uri>http://www.blogger.com/profile/00122476821250599716</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1478036687830627925.post-7928290170201585318</id><published>2008-04-11T02:46:00.000-07:00</published><updated>2008-04-11T02:47:53.335-07:00</updated><title type='text'>Test</title><content type='html'>I will be starting this Blog very soon. Hope to help all new and experienced APPS DBA.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;All the best and thanks for your support.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1478036687830627925-7928290170201585318?l=appsdbaexperts.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://appsdbaexperts.blogspot.com/feeds/7928290170201585318/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://appsdbaexperts.blogspot.com/2008/04/test.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1478036687830627925/posts/default/7928290170201585318'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1478036687830627925/posts/default/7928290170201585318'/><link rel='alternate' type='text/html' href='http://appsdbaexperts.blogspot.com/2008/04/test.html' title='Test'/><author><name>Vikram Singh</name><uri>http://www.blogger.com/profile/00122476821250599716</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>
