<?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-1102785860137074059</id><updated>2011-11-23T01:19:55.763+05:30</updated><category term='11.5.10.2'/><category term='UNIX'/><category term='DBMS_BACKUP_RESTORE'/><category term='sql scripts'/><category term='EBS Login URL'/><category term='MOS'/><category term='tablespace usage'/><category term='quirky patch queries'/><category term='login.sql'/><category term='adpatch'/><category term='installation'/><category term='controlfile'/><category term='Discoverer Plus'/><category term='jinitiator'/><category term='MT882'/><category term='developer 6i'/><category term='kernel bits'/><category term='database size'/><category term='JDK 6'/><category term='ORA-07445'/><category term='Metalink'/><category term='Configure'/><category term='extract archivelogs'/><category term='ORA_NLS10'/><category term='CONTEXT_FILE'/><category term='Interview'/><category term='java.lang.ExceptionInInitializerError'/><category term='AF Variables'/><category term='java.lang.NoClassDefFoundError'/><category term='extract datafiles'/><category term='non-RAC'/><category term='HTB'/><category term='reduce downtime'/><category term='Multi-org'/><category term='forms 6i'/><category term='CPU'/><category term='Questions'/><category term='reporting database'/><category term='Solaris'/><category term='windows'/><category term='Process_id'/><category term='Apache'/><category term='Miscellaneous'/><category term='jdbc connection'/><category term='wget'/><category term='sqlprompt'/><category term='defaultsfile'/><category term='pipe character'/><category term='java'/><category term='AppsLogin'/><category term='internet explorer'/><category term='Discoverer 10g'/><category term='database crash'/><category term='flashback database'/><category term='Request Set'/><category term='WF Mailer'/><category term='shell scripts'/><category term='rehost'/><category term='reoprts 6i'/><category term='R12'/><category term='adadmin'/><category term='wireless'/><category term='virtual host'/><category term='WRT54GC'/><category term='standby database'/><category term='shutdown'/><category term='JDK 5'/><category term='RMAN Backup'/><category term='number of CPUs'/><category term='PCP'/><category term='extract controlfile'/><category term='Choose Connection'/><category term='Patches'/><category term='11.5.9'/><category term='mod_security'/><category term='wms idle'/><category term='glogin.sql'/><category term='desupported'/><title type='text'>Oracle ERP DBA</title><subtitle type='html'>An online anthology of an Oracle Apps DBA.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://bkpappsdba.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://bkpappsdba.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Praveen</name><uri>http://www.blogger.com/profile/09645880422225153776</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>49</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-1102785860137074059.post-1504726287323188926</id><published>2011-02-23T12:33:00.008+05:30</published><updated>2011-02-23T15:49:15.728+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='MOS'/><category scheme='http://www.blogger.com/atom/ns#' term='Metalink'/><category scheme='http://www.blogger.com/atom/ns#' term='Patches'/><title type='text'>Alternatives to Flash version of My Oracle Support</title><content type='html'>&lt;div align="justify"&gt;I am sure you all know this but this is for those who do not! :)&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;For those who think that the flash version of MOS is slow (including yours truly), Oracle provides the &lt;a href="https://supporthtml.oracle.com/"&gt;html version&lt;/a&gt; of MOS.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;For those who were accustomed to using the Metalink (when MOS was Metalink and George W Bush was the president of the US of A - not the father, I'm talking about the son) patch search and download page, do not fret. You can use the &lt;a href="https://updates.oracle.com/Orion/SavedSearches/switch_to_simple?orderby=3&amp;amp;direction=d&amp;amp;sortcolpressed=&amp;amp;tab_number="&gt;classic patches window&lt;/a&gt; to get the old page (and a lot of memories) back!&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;To open any MOS note id, you can use this &lt;a href="https://support.oracle.com/CSP/main/article?cmd=show&amp;amp;type=NOT&amp;amp;doctype=SCRIPT&amp;amp;id=221211.1"&gt;link&lt;/a&gt;. Only substitute Note ID 221211.1 with the note id that you want to open.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1102785860137074059-1504726287323188926?l=bkpappsdba.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bkpappsdba.blogspot.com/feeds/1504726287323188926/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1102785860137074059&amp;postID=1504726287323188926' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/1504726287323188926'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/1504726287323188926'/><link rel='alternate' type='text/html' href='http://bkpappsdba.blogspot.com/2011/02/alternatives-to-flash-version-of-my.html' title='Alternatives to Flash version of My Oracle Support'/><author><name>Praveen</name><uri>http://www.blogger.com/profile/09645880422225153776</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-1102785860137074059.post-1989768607677465038</id><published>2011-02-23T12:14:00.008+05:30</published><updated>2011-02-23T13:53:43.763+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='shell scripts'/><category scheme='http://www.blogger.com/atom/ns#' term='Metalink'/><category scheme='http://www.blogger.com/atom/ns#' term='wget'/><title type='text'>WGET shell Script for downloading patches</title><content type='html'>&lt;div align="justify"&gt;What I have to offer this time is a script using which you can download patches using WGET from Meta.....oops, from My Oracle Support, I should say!&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;This script needs (or accepts) the following parameters:&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div align="justify"&gt;1. Me...oops...MOS Username&lt;br /&gt;2. MOS (I got it right this time!) password&lt;br /&gt;3. Patch file name&lt;br /&gt;4. ARU Number&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;You can get 3 and 4 in the following way:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;strong&gt;&lt;u&gt;Using MOS:&lt;br /&gt;&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;Query for the particular patch, click on the download link, click on WGET Options on the left side bottom corner and then copy the WGET script to clipboard. That script will have both the patch name and the ARU number.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;strong&gt;&lt;u&gt;Using HTML (supporthtml.oracle.com):&lt;br /&gt;&lt;br /&gt;&lt;/u&gt;&lt;/strong&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;Query for the particular patch, click on the patch, then RIGHT CLICK on the patch zip file link and click on copy shortcut in IE (or copy link location in Mozilla Firefox). This link will have both the patch file name and the ARU number.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;u&gt;Using the classic patches window:&lt;/u&gt;&lt;/strong&gt;&lt;/div&gt;&lt;br /&gt;&lt;p align="justify"&gt;Query for the particular patch, then RIGHT CLICK on the DOWNLOAD button and click on copy shortcut in IE (or copy link location in Mozilla Firefox). This link will have both the patch file name and the ARU number.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;p align="justify"&gt;&lt;/p&gt;&lt;br /&gt;&lt;p align="justify"&gt;I do understand that this is a roundabout process but I believe it is better than downloading the file to your desktop and then uploading to the server.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;p align="justify"&gt;I am also working on a script to retrieve the aru number and the patch file name given the patch number. But I have had no success so far. If anyone has that script or any better script to download patches, please do not hesitate to share it.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;u&gt;WGET SCRIPT:&lt;br /&gt;&lt;br /&gt;&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;&lt;pre style="BORDER-RIGHT: #999999 1px dashed; PADDING-RIGHT: 5px; BORDER-TOP: #999999 1px dashed; PADDING-LEFT: 5px; FONT-SIZE: 12px; PADDING-BOTTOM: 5px; OVERFLOW: auto; BORDER-LEFT: #999999 1px dashed; WIDTH: 100%; COLOR: #000000; LINE-HEIGHT: 14px; PADDING-TOP: 5px; BORDER-BOTTOM: #999999 1px dashed; FONT-FAMILY: Andale Mono, Lucida Console, Monaco, fixed, monospace; BACKGROUND-COLOR: #eee"&gt;&lt;code&gt;#!/bin/sh&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;# Start of user configurable variables&lt;br /&gt;&lt;br /&gt;#&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;# SSO username and password&lt;br /&gt;&lt;br /&gt;printf "\n\nEnter the SSO USERNAME for Metalink:\t"&lt;br /&gt;&lt;br /&gt;read SSO_USERNAME&lt;br /&gt;&lt;br /&gt;printf "\n\n\n\nEnter the SSO PASSWORD for Metalink:\t"&lt;br /&gt;&lt;br /&gt;##SSO_PASSWORD="password"&lt;br /&gt;&lt;br /&gt;stty -echo&lt;br /&gt;&lt;br /&gt;read SSO_PASSWORD&lt;br /&gt;&lt;br /&gt;stty echo&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;# E-Delivery token&lt;br /&gt;&lt;br /&gt;EPD_TOKEN=&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;# Path to wget command&lt;br /&gt;&lt;br /&gt;WGET=/usr/bin/wget&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;# Location of cookie file&lt;br /&gt;&lt;br /&gt;COOKIE_FILE=/tmp/$$.cookies&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;# Log directory and file&lt;br /&gt;&lt;br /&gt;LOGDIR=.&lt;br /&gt;&lt;br /&gt;LOGFILE=$LOGDIR/wgetlog-`date +%d-%b-%y-%H-%M`.log&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;# Output directory and file&lt;br /&gt;&lt;br /&gt;OUTPUT_DIR=.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;## Added by Praveen B K, for customising the script.&lt;br /&gt;&lt;br /&gt;printf "\n\nEnter the PATCH FILE NAME:\t"&lt;br /&gt;&lt;br /&gt;read PATCH_FILE_NAME&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;printf "\n\nEnter the aru number:\t"&lt;br /&gt;&lt;br /&gt;read ARU&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;#&lt;br /&gt;&lt;br /&gt;# End of user configurable variable&lt;br /&gt;&lt;br /&gt;#&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;if [ "$SSO_USERNAME " = " " ]&lt;br /&gt;&lt;br /&gt;then&lt;br /&gt;&lt;br /&gt; printf "\n\nSSO USERNAME cannot be null. Exiting............\n\n\n"&lt;br /&gt;&lt;br /&gt; exit 1&lt;br /&gt;&lt;br /&gt;fi&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;if [ "$SSO_PASSWORD " = " " ]&lt;br /&gt;&lt;br /&gt;then&lt;br /&gt;&lt;br /&gt; printf "\n\nSSO PASSWORD cannot be null. Exiting............\n\n\n"&lt;br /&gt;&lt;br /&gt; exit 1&lt;br /&gt;&lt;br /&gt;fi&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;if [ "$PATCH_FILE_NAME " = " " ]&lt;br /&gt;&lt;br /&gt;then&lt;br /&gt;&lt;br /&gt; printf "\n\nPATCH FILE NAME cannot be blank. Exiting............\n\n\n"&lt;br /&gt;&lt;br /&gt; exit 1&lt;br /&gt;&lt;br /&gt;fi&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;if [ "$ARU " = " " ]&lt;br /&gt;&lt;br /&gt;then&lt;br /&gt;&lt;br /&gt; printf "\n\naru number cannot be blank. Exiting............\n\n\n"&lt;br /&gt;&lt;br /&gt; exit 1&lt;br /&gt;&lt;br /&gt;fi&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;# Contact updates site so that we can get SSO Params for logging in&lt;br /&gt;&lt;br /&gt;SSO_RESPONSE=$($WGET https://updates.oracle.com/Orion/Services/download 2&amp;gt;&amp;amp;1grep Location)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;# Extract request parameters for SSO&lt;br /&gt;&lt;br /&gt;SSO_TOKEN=`echo $SSO_RESPONSE cut -d '=' -f 2cut -d ' ' -f 1`&lt;br /&gt;&lt;br /&gt;SSO_SERVER=`echo $SSO_RESPONSE cut -d ' ' -f 2cut -d 'p' -f 1,2`&lt;br /&gt;&lt;br /&gt;SSO_AUTH_URL=sso/auth&lt;br /&gt;&lt;br /&gt;AUTH_DATA="ssousername=$SSO_USERNAME&amp;amp;password=$SSO_PASSWORD&amp;amp;site2pstoretoken=$SSO_TOKEN"&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;# The following command to authenticate uses HTTPS. This will work only if the wget in the environment&lt;br /&gt;&lt;br /&gt;# where this script will be executed was compiled with OpenSSL. Remove the --secure-protocol option&lt;br /&gt;&lt;br /&gt;# if wget was not compiled with OpenSSL&lt;br /&gt;&lt;br /&gt;# Depending on the preference, the other options are --secure-protocol= autoSSLv2SSLv3TLSv1&lt;br /&gt;&lt;br /&gt;$WGET --secure-protocol=auto --post-data $AUTH_DATA --save-cookies=$COOKIE_FILE --keep-session-cookies $SSO_SERVER$SSO_AUTH_URL -O sso.out &amp;gt;&amp;gt; $LOGFILE 2&amp;gt;&amp;amp;1&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;rm -f sso.out&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;$WGET  --load-cookies=$COOKIE_FILE --save-cookies=$COOKIE_FILE --keep-session-cookies "https://updates.oracle.com/Orion/Services/download/${PATCH_FILE_NAME}?aru=${ARU}&amp;amp;patch_file=${PATCH_FILE_NAME}" -O $OUTPUT_DIR/${PATCH_FILE_NAME}   &amp;gt;&amp;gt; $LOGFILE 2&amp;gt;&amp;amp;1&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;# Cleanup&lt;br /&gt;&lt;br /&gt;rm -f $COOKIE_FILE&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1102785860137074059-1989768607677465038?l=bkpappsdba.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bkpappsdba.blogspot.com/feeds/1989768607677465038/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1102785860137074059&amp;postID=1989768607677465038' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/1989768607677465038'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/1989768607677465038'/><link rel='alternate' type='text/html' href='http://bkpappsdba.blogspot.com/2011/02/wget-shell-script-for-downloading.html' title='WGET shell Script for downloading patches'/><author><name>Praveen</name><uri>http://www.blogger.com/profile/09645880422225153776</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-1102785860137074059.post-2592907693398113777</id><published>2010-09-06T15:35:00.002+05:30</published><updated>2010-09-06T15:38:53.946+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='standby database'/><category scheme='http://www.blogger.com/atom/ns#' term='flashback database'/><category scheme='http://www.blogger.com/atom/ns#' term='reporting database'/><title type='text'>Rebuild reporting database</title><content type='html'>&lt;p align="justify"&gt;In one of my previous &lt;a href="http://bkpappsdba.blogspot.com/2009/11/build-reporting-database-using-standby.html"&gt;posts&lt;/a&gt;, I had spoken about creating a reporting database that is editable at the same time, though the edits are transient. The last month, I faced an interesting situation wherein we had to rebuild this reporting database. In this post, I'll talk about rebuild the reporting database when it is corrupted.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;u&gt;Context&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;The standby database has been corrupted due to a server crash and needs to be rebuilt from the primary database.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;u&gt;Solution&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;I followed the steps mentioned in this &lt;a href="http://bkpappsdba.blogspot.com/2010/09/creating-physical-standby-database.html"&gt;post&lt;/a&gt; about creating a physical standby database. The steps in the pre-requisites can be skipped because they are already existing.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;The rest of the steps hold good!&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1102785860137074059-2592907693398113777?l=bkpappsdba.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bkpappsdba.blogspot.com/feeds/2592907693398113777/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1102785860137074059&amp;postID=2592907693398113777' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/2592907693398113777'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/2592907693398113777'/><link rel='alternate' type='text/html' href='http://bkpappsdba.blogspot.com/2010/09/rebuild-reporting-database.html' title='Rebuild reporting database'/><author><name>Praveen</name><uri>http://www.blogger.com/profile/09645880422225153776</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-1102785860137074059.post-8257019013398844031</id><published>2010-09-06T12:33:00.009+05:30</published><updated>2010-09-06T15:31:01.919+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='standby database'/><title type='text'>Creating a physical standby database</title><content type='html'>&lt;strong&gt;&lt;u&gt;Requirement &lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;Create a standby database for the primary production database.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;u&gt;Pre-requisites&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;1. The primary database is in archive log mode.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;2. Primary and standby database names:&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Primary DB Name:&lt;/strong&gt; PRIM&lt;br /&gt;&lt;strong&gt;Primary DB Host:&lt;/strong&gt; primary.hostname.com&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Standby DB Name:&lt;/strong&gt; STBY&lt;br /&gt;&lt;strong&gt;Standby DB Host:&lt;/strong&gt; standby.hostname.com&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;3. Initialization parameters required for enabling standby instance to be set on the primary:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style="BORDER-RIGHT: #999999 1px dashed; PADDING-RIGHT: 5px; BORDER-TOP: #999999 1px dashed; PADDING-LEFT: 5px; FONT-SIZE: 12px; PADDING-BOTTOM: 5px; OVERFLOW: auto; BORDER-LEFT: #999999 1px dashed; WIDTH: 100%; COLOR: #000000; LINE-HEIGHT: 14px; PADDING-TOP: 5px; BORDER-BOTTOM: #999999 1px dashed; FONT-FAMILY: Andale Mono, Lucida Console, Monaco, fixed, monospace; BACKGROUND-COLOR: #eee"&gt;&lt;code&gt;*.LOG_ARCHIVE_CONFIG='DG_CONFIG=(PRIM,STBY)'&lt;br /&gt;&lt;br /&gt;*.LOG_ARCHIVE_DEST_2='SERVICE=STBY LGWR ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=STBY'&lt;br /&gt;&lt;br /&gt;*.log_archive_dest_state_2='ENABLE'&lt;br /&gt;&lt;br /&gt;*.log_file_name_convert='/u001/app/oracle/stby/data/','/opt/apps/prim/data/'&lt;br /&gt;&lt;br /&gt;*.standby_file_management='auto'&lt;br /&gt;&lt;br /&gt;*.db_file_name_convert='/u001/app/oracle/stby/data/','/opt/apps/prim/data/'&lt;br /&gt;&lt;br /&gt;*.fal_client='PRIM'&lt;br /&gt;&lt;br /&gt;*.fal_server='STBY'&lt;br /&gt;&lt;br /&gt;*.db_name='PRIM'&lt;br /&gt;&lt;br /&gt;*.db_unique_name='PRIM'&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;4. The listener and tnsnames to be modified on the primary:&lt;br /&gt;&lt;br /&gt;&lt;u&gt;listener.ora on primary&lt;/u&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style="BORDER-RIGHT: #999999 1px dashed; PADDING-RIGHT: 5px; BORDER-TOP: #999999 1px dashed; PADDING-LEFT: 5px; FONT-SIZE: 12px; PADDING-BOTTOM: 5px; OVERFLOW: auto; BORDER-LEFT: #999999 1px dashed; WIDTH: 100%; COLOR: #000000; LINE-HEIGHT: 14px; PADDING-TOP: 5px; BORDER-BOTTOM: #999999 1px dashed; FONT-FAMILY: Andale Mono, Lucida Console, Monaco, fixed, monospace; BACKGROUND-COLOR: #eee"&gt;&lt;code&gt;# When primary becomes standby (switchover).&lt;br /&gt;STBY =&lt;br /&gt;  (ADDRESS_LIST =&lt;br /&gt;        (ADDRESS= (PROTOCOL= IPC)(KEY= EXTPROCSTBY))&lt;br /&gt;        (ADDRESS= (PROTOCOL= TCP)(Host= primary.hostname.com )(Port= 1532))&lt;br /&gt;  )&lt;br /&gt;&lt;br /&gt;SID_LIST_STBY =&lt;br /&gt;  (SID_LIST =&lt;br /&gt;    (SID_DESC =&lt;br /&gt;      (ORACLE_HOME= /opt/dbms/app/oracle/product/oraprim/10.2.0)&lt;br /&gt;      (SID_NAME = STBY)&lt;br /&gt;    )&lt;br /&gt;    (SID_DESC =&lt;br /&gt;      (SID_NAME = PLSExtProc)&lt;br /&gt;      (ORACLE_HOME = /opt/dbms/app/oracle/product/oraprim/10.2.0)&lt;br /&gt;      (PROGRAM = extproc)&lt;br /&gt;    )&lt;br /&gt;  )&lt;br /&gt;&lt;br /&gt;# Normal primary database listener&lt;br /&gt;PRIM =&lt;br /&gt;  (ADDRESS_LIST =&lt;br /&gt;        (ADDRESS= (PROTOCOL= IPC)(KEY= EXTPROCPRIM))&lt;br /&gt;        (ADDRESS= (PROTOCOL= TCP)(Host= primary.hostname.com )(Port= 1532))&lt;br /&gt;  )&lt;br /&gt;&lt;br /&gt;SID_LIST_PRIM =&lt;br /&gt;  (SID_LIST =&lt;br /&gt;    (SID_DESC =&lt;br /&gt;      (ORACLE_HOME= /opt/dbms/app/oracle/product/oraprim/10.2.0)&lt;br /&gt;      (SID_NAME = PRIM)&lt;br /&gt;    )&lt;br /&gt;    (SID_DESC =&lt;br /&gt;      (SID_NAME = PLSExtProc)&lt;br /&gt;      (ORACLE_HOME = /opt/dbms/app/oracle/product/oraprim/10.2.0)&lt;br /&gt;      (PROGRAM = extproc)&lt;br /&gt;    )&lt;br /&gt;  )&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;u&gt;tnsnames.ora on primary&lt;/u&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style="BORDER-RIGHT: #999999 1px dashed; PADDING-RIGHT: 5px; BORDER-TOP: #999999 1px dashed; PADDING-LEFT: 5px; FONT-SIZE: 12px; PADDING-BOTTOM: 5px; OVERFLOW: auto; BORDER-LEFT: #999999 1px dashed; WIDTH: 100%; COLOR: #000000; LINE-HEIGHT: 14px; PADDING-TOP: 5px; BORDER-BOTTOM: #999999 1px dashed; FONT-FAMILY: Andale Mono, Lucida Console, Monaco, fixed, monospace; BACKGROUND-COLOR: #eee"&gt;&lt;code&gt;STBY=&lt;br /&gt;        (DESCRIPTION=&lt;br /&gt;           (ADDRESS=(PROTOCOL=tcp)(HOST=standby.hostname.com)(PORT=1526))&lt;br /&gt;            (CONNECT_DATA=&lt;br /&gt;                (SID=STBY)&lt;br /&gt;            )&lt;br /&gt;        )&lt;br /&gt;&lt;br /&gt;PRIM = (DESCRIPTION=&lt;br /&gt;                (ADDRESS=(PROTOCOL=tcp)(HOST=primary.hostname.com)(PORT=1532))&lt;br /&gt;                (CONNECT_DATA=(SID=PRIM))&lt;br /&gt;            )&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;u&gt;Backup tnsnames.ora on primary (for switchover)&lt;/u&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style="BORDER-RIGHT: #999999 1px dashed; PADDING-RIGHT: 5px; BORDER-TOP: #999999 1px dashed; PADDING-LEFT: 5px; FONT-SIZE: 12px; PADDING-BOTTOM: 5px; OVERFLOW: auto; BORDER-LEFT: #999999 1px dashed; WIDTH: 100%; COLOR: #000000; LINE-HEIGHT: 14px; PADDING-TOP: 5px; BORDER-BOTTOM: #999999 1px dashed; FONT-FAMILY: Andale Mono, Lucida Console, Monaco, fixed, monospace; BACKGROUND-COLOR: #eee"&gt;&lt;code&gt;## Create a tnsnames_ifile.ora.&lt;br /&gt;STBY=&lt;br /&gt;        (DESCRIPTION=&lt;br /&gt;           (ADDRESS=(PROTOCOL=tcp)(HOST=primary.hostname.com)(PORT=1532))&lt;br /&gt;            (CONNECT_DATA=&lt;br /&gt;                (SID=STBY)&lt;br /&gt;            )&lt;br /&gt;        )&lt;br /&gt;&lt;br /&gt;PRIM = (DESCRIPTION=&lt;br /&gt;                (ADDRESS=(PROTOCOL=tcp)(HOST=standby.hostname.com)(PORT=1526))&lt;br /&gt;                (CONNECT_DATA=(SID=PRIM))&lt;br /&gt;            )&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;5. Create the initialization file for the standby database.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style="BORDER-RIGHT: #999999 1px dashed; PADDING-RIGHT: 5px; BORDER-TOP: #999999 1px dashed; PADDING-LEFT: 5px; FONT-SIZE: 12px; PADDING-BOTTOM: 5px; OVERFLOW: auto; BORDER-LEFT: #999999 1px dashed; WIDTH: 100%; COLOR: #000000; LINE-HEIGHT: 14px; PADDING-TOP: 5px; BORDER-BOTTOM: #999999 1px dashed; FONT-FAMILY: Andale Mono, Lucida Console, Monaco, fixed, monospace; BACKGROUND-COLOR: #eee"&gt;&lt;code&gt;*.db_create_file_dest='/u001/app/oracle/stby/data'&lt;br /&gt;&lt;br /&gt;*.db_file_name_convert='/opt/apps/prim/data/','/u001/app/oracle/stby/data/'&lt;br /&gt;&lt;br /&gt;*.db_name='PRIM'&lt;br /&gt;&lt;br /&gt;*.db_recovery_file_dest='/u001/app/oracle/stby/flashrecovery'&lt;br /&gt;&lt;br /&gt;*.db_recovery_file_dest_size=42949672960&lt;br /&gt;&lt;br /&gt;*.db_unique_name='STBY'&lt;br /&gt;&lt;br /&gt;*.fal_client='STBY'&lt;br /&gt;&lt;br /&gt;*.fal_server='PRIM'&lt;br /&gt;&lt;br /&gt;*.LOG_ARCHIVE_CONFIG='DG_CONFIG=(PRIM,STBY)'&lt;br /&gt;&lt;br /&gt;*.LOG_ARCHIVE_DEST_1='LOCATION=/u001/app/oracle/stby/arch/&lt;br /&gt;VALID_FOR=(ALL_LOGFILES,ALL_ROLES)&lt;br /&gt;DB_UNIQUE_NAME=STBY'&lt;br /&gt;&lt;br /&gt;*.LOG_ARCHIVE_DEST_2='SERVICE=PRIM LGWR ASYNC&lt;br /&gt;VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE)&lt;br /&gt;DB_UNIQUE_NAME=PRIM'&lt;br /&gt;&lt;br /&gt;*.LOG_ARCHIVE_DEST_STATE_1='ENABLE'&lt;br /&gt;&lt;br /&gt;*.LOG_ARCHIVE_DEST_STATE_2='ENABLE'&lt;br /&gt;&lt;br /&gt;*.log_file_name_convert='/opt/apps/prim/data/','/u001/app/oracle/stby/data/'&lt;br /&gt;&lt;br /&gt;*.standby_file_management='auto'&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;6. Create the listener.ora and the tnsnames.ora files:&lt;br /&gt;&lt;br /&gt;&lt;u&gt;listener.ora on standby&lt;/u&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style="BORDER-RIGHT: #999999 1px dashed; PADDING-RIGHT: 5px; BORDER-TOP: #999999 1px dashed; PADDING-LEFT: 5px; FONT-SIZE: 12px; PADDING-BOTTOM: 5px; OVERFLOW: auto; BORDER-LEFT: #999999 1px dashed; WIDTH: 100%; COLOR: #000000; LINE-HEIGHT: 14px; PADDING-TOP: 5px; BORDER-BOTTOM: #999999 1px dashed; FONT-FAMILY: Andale Mono, Lucida Console, Monaco, fixed, monospace; BACKGROUND-COLOR: #eee"&gt;&lt;code&gt;# For normal standby operations&lt;br /&gt;STBY =&lt;br /&gt;  (ADDRESS_LIST =&lt;br /&gt;        (ADDRESS= (PROTOCOL= IPC)(KEY= EXTPROCSTBY))&lt;br /&gt;        (ADDRESS= (PROTOCOL= TCP)(Host= standby.hostname.com )(Port= 1526))&lt;br /&gt;  )&lt;br /&gt;&lt;br /&gt;SID_LIST_STBY =&lt;br /&gt;  (SID_LIST =&lt;br /&gt;    (SID_DESC =&lt;br /&gt;      (ORACLE_HOME= /u001/app/oracle/stby/10203)&lt;br /&gt;      (SID_NAME = STBY)&lt;br /&gt;    )&lt;br /&gt;    (SID_DESC =&lt;br /&gt;      (SID_NAME = PLSExtProc)&lt;br /&gt;      (ORACLE_HOME = /u001/app/oracle/stby/10203)&lt;br /&gt;      (PROGRAM = extproc)&lt;br /&gt;    )&lt;br /&gt;  )&lt;br /&gt;&lt;br /&gt;# For switchover (ie., when standby becomes the primary).&lt;br /&gt;PRIM =&lt;br /&gt;  (ADDRESS_LIST =&lt;br /&gt;        (ADDRESS= (PROTOCOL= IPC)(KEY= EXTPROCPRIM))&lt;br /&gt;        (ADDRESS= (PROTOCOL= TCP)(Host= standby.hostname.com )(Port= 1526))&lt;br /&gt;  )&lt;br /&gt;&lt;br /&gt;SID_LIST_PRIM =&lt;br /&gt;  (SID_LIST =&lt;br /&gt;    (SID_DESC =&lt;br /&gt;      (ORACLE_HOME= /u001/app/oracle/stby/10203)&lt;br /&gt;      (SID_NAME = PRIM)&lt;br /&gt;    )&lt;br /&gt;    (SID_DESC =&lt;br /&gt;      (SID_NAME = PLSExtProc)&lt;br /&gt;      (ORACLE_HOME = /u001/app/oracle/stby/10203)&lt;br /&gt;      (PROGRAM = extproc)&lt;br /&gt;    )&lt;br /&gt;  )&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;u&gt;tnsnames.ora for standby&lt;/u&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style="BORDER-RIGHT: #999999 1px dashed; PADDING-RIGHT: 5px; BORDER-TOP: #999999 1px dashed; PADDING-LEFT: 5px; FONT-SIZE: 12px; PADDING-BOTTOM: 5px; OVERFLOW: auto; BORDER-LEFT: #999999 1px dashed; WIDTH: 100%; COLOR: #000000; LINE-HEIGHT: 14px; PADDING-TOP: 5px; BORDER-BOTTOM: #999999 1px dashed; FONT-FAMILY: Andale Mono, Lucida Console, Monaco, fixed, monospace; BACKGROUND-COLOR: #eee"&gt;&lt;code&gt;STBY=&lt;br /&gt;        (DESCRIPTION=&lt;br /&gt;           (ADDRESS=(PROTOCOL=tcp)(HOST=SUOMT34L.dev.qintra.com)(PORT=1526))&lt;br /&gt;            (CONNECT_DATA=&lt;br /&gt;                (SID=STBY)&lt;br /&gt;            )&lt;br /&gt;        )&lt;br /&gt;&lt;br /&gt;PRIM=&lt;br /&gt;        (DESCRIPTION=&lt;br /&gt;           (ADDRESS=(PROTOCOL=tcp)(HOST=primary.hostname.com)(PORT=1532))&lt;br /&gt;            (CONNECT_DATA=&lt;br /&gt;                (SID=PRIM)&lt;br /&gt;            )&lt;br /&gt;        )&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;u&gt;Backup tnsnames.ora on standby (for switchover)&lt;/u&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style="BORDER-RIGHT: #999999 1px dashed; PADDING-RIGHT: 5px; BORDER-TOP: #999999 1px dashed; PADDING-LEFT: 5px; FONT-SIZE: 12px; PADDING-BOTTOM: 5px; OVERFLOW: auto; BORDER-LEFT: #999999 1px dashed; WIDTH: 100%; COLOR: #000000; LINE-HEIGHT: 14px; PADDING-TOP: 5px; BORDER-BOTTOM: #999999 1px dashed; FONT-FAMILY: Andale Mono, Lucida Console, Monaco, fixed, monospace; BACKGROUND-COLOR: #eee"&gt;&lt;code&gt;## Create a tnsnames_ifile.ora.&lt;br /&gt;STBY=&lt;br /&gt;        (DESCRIPTION=&lt;br /&gt;           (ADDRESS=(PROTOCOL=tcp)(HOST=primary.hostname.com)(PORT=1532))&lt;br /&gt;            (CONNECT_DATA=&lt;br /&gt;                (SID=STBY)&lt;br /&gt;            )&lt;br /&gt;        )&lt;br /&gt;&lt;br /&gt;PRIM = (DESCRIPTION=&lt;br /&gt;                (ADDRESS=(PROTOCOL=tcp)(HOST=standby.hostname.com)(PORT=1526))&lt;br /&gt;                (CONNECT_DATA=(SID=PRIM))&lt;br /&gt;            )&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div align="justify"&gt;7. Last but not the least, SSH Equivalence needs to be established between the primary database owner and the standby database owner, to facilitate the transfer of archives.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;u&gt;Steps - using manual hotbackup&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;1. Generate the hot backup script on the primary database using the below sql:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;pre style="BORDER-RIGHT: #999999 1px dashed; PADDING-RIGHT: 5px; BORDER-TOP: #999999 1px dashed; PADDING-LEFT: 5px; FONT-SIZE: 12px; PADDING-BOTTOM: 5px; OVERFLOW: auto; BORDER-LEFT: #999999 1px dashed; WIDTH: 100%; COLOR: #000000; LINE-HEIGHT: 14px; PADDING-TOP: 5px; BORDER-BOTTOM: #999999 1px dashed; FONT-FAMILY: Andale Mono, Lucida Console, Monaco, fixed, monospace; BACKGROUND-COLOR: #eee"&gt;&lt;code&gt;set echo off heading off feedback off verify off&lt;br /&gt;set pagesize 0&lt;br /&gt;spool backup.sql&lt;br /&gt;set linesize 80&lt;br /&gt;set serveroutput on size 1000000&lt;br /&gt;set linesize 150&lt;br /&gt;DECLARE&lt;br /&gt;  cursor C_ts_name is&lt;br /&gt;     select tablespace_name from dba_tablespaces&lt;br /&gt;      order by tablespace_name;&lt;br /&gt;BEGIN&lt;br /&gt;  for ts_name in C_ts_name loop&lt;br /&gt;    dbms_output.put_line('alter tablespace '  ts_name.tablespace_name&lt;br /&gt;                         ' begin backup;');&lt;br /&gt;    for dbf_name in (select file_name from sys.dba_data_files&lt;br /&gt;                      where tablespace_name = ts_name.tablespace_name) loop&lt;br /&gt;      dbms_output.put_line(' scp -p ' dbf_name.file_name&lt;br /&gt;                           ' standby_db_owner@standby.hostname.com:/u001/app/oracle/stby/data/.');&lt;br /&gt;    end loop;&lt;br /&gt;    dbms_output.put_line('alter tablespace '  ts_name.tablespace_name&lt;br /&gt;                         ' end backup;');&lt;br /&gt;  end loop;&lt;br /&gt;END;&lt;br /&gt;/&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div align="justify"&gt;&lt;br /&gt;2. Kick off the hotbackup using the script so generated, on the primary database. This script also takes care of the copying of datafiles to the standby server.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;br /&gt; &lt;/div&gt;&lt;div align="justify"&gt;3. Once the backup is completed, copy all the archives generated during the backup from primary archive location to the standby archive location.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;4. Generate the standby controlfile on the primary using the below command:&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style="BORDER-RIGHT: #999999 1px dashed; PADDING-RIGHT: 5px; BORDER-TOP: #999999 1px dashed; PADDING-LEFT: 5px; FONT-SIZE: 12px; PADDING-BOTTOM: 5px; OVERFLOW: auto; BORDER-LEFT: #999999 1px dashed; WIDTH: 100%; COLOR: #000000; LINE-HEIGHT: 14px; PADDING-TOP: 5px; BORDER-BOTTOM: #999999 1px dashed; FONT-FAMILY: Andale Mono, Lucida Console, Monaco, fixed, monospace; BACKGROUND-COLOR: #eee"&gt;&lt;code&gt;Alter database create standby controlfile as '&amp;lt;destination&amp;gt;';&lt;br /&gt;&lt;br /&gt;Eg:&lt;br /&gt;&lt;br /&gt;SQL&amp;gt; alter database create standby controlfile as '/export/home/oraprim/sb_cntrl01.dbf';&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div align="justify"&gt;The created file must meet two conditions:&lt;br /&gt;&lt;br /&gt;a. Its filename must be different from any other control file.&lt;br /&gt;&lt;br /&gt;b. Must be created after the backup of the datafiles.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;5. Copy the controlfile so generated from the primary to the standby. To be on the safer side, always multiplex the standby control files. So, copy the standby controlfiles as per the multiplexed order. Also ensure that the parameter control_files in the init.ora is also in sync with this.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;6. Start the standby listener.&lt;br /&gt;&lt;br /&gt;7. Mount the standby database.&lt;br /&gt;&lt;br /&gt;&lt;pre style="BORDER-RIGHT: #999999 1px dashed; PADDING-RIGHT: 5px; BORDER-TOP: #999999 1px dashed; PADDING-LEFT: 5px; FONT-SIZE: 12px; PADDING-BOTTOM: 5px; OVERFLOW: auto; BORDER-LEFT: #999999 1px dashed; WIDTH: 100%; COLOR: #000000; LINE-HEIGHT: 14px; PADDING-TOP: 5px; BORDER-BOTTOM: #999999 1px dashed; FONT-FAMILY: Andale Mono, Lucida Console, Monaco, fixed, monospace; BACKGROUND-COLOR: #eee"&gt;&lt;code&gt;SQL&amp;gt; startup nomount&lt;br /&gt;&lt;br /&gt;SQL&amp;gt; alter database mount standby database;&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;br /&gt;8. Recover the standby database till the latest archive log using the below command. Note that the command "alter database recover continue default" needs to be executed as many times as there are archive logs to be applied!&lt;br /&gt;&lt;br /&gt;Now, I prefer to do an incomplete recovery till the lastest SCN. Find the scn number, using the below steps and then perform the recovery.&lt;br /&gt;&lt;br /&gt;a. Find the latest archive log generated on the primary after the backup is done.&lt;br /&gt;&lt;br /&gt;b. Find the next_change# from v$archived_log view:&lt;br /&gt;&lt;br /&gt;&lt;pre style="BORDER-RIGHT: #999999 1px dashed; PADDING-RIGHT: 5px; BORDER-TOP: #999999 1px dashed; PADDING-LEFT: 5px; FONT-SIZE: 12px; PADDING-BOTTOM: 5px; OVERFLOW: auto; BORDER-LEFT: #999999 1px dashed; WIDTH: 100%; COLOR: #000000; LINE-HEIGHT: 14px; PADDING-TOP: 5px; BORDER-BOTTOM: #999999 1px dashed; FONT-FAMILY: Andale Mono, Lucida Console, Monaco, fixed, monospace; BACKGROUND-COLOR: #eee"&gt;&lt;code&gt;SQL&amp;gt; select next_change# from v$archived_log where sequence# = &amp;amp;sequence#;&lt;br /&gt;&lt;br /&gt;SQL&amp;gt; alter database recover standby database until change &amp;lt;SCN&amp;gt;;&lt;br /&gt;&lt;br /&gt;SQL&amp;gt; alter database recover continue default;&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;9. After all the archives have been applied, cancel the recovery. Note that you should not receive any errors (esp. ORA-1547 errors) when you cancel the recovery.&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style="BORDER-RIGHT: #999999 1px dashed; PADDING-RIGHT: 5px; BORDER-TOP: #999999 1px dashed; PADDING-LEFT: 5px; FONT-SIZE: 12px; PADDING-BOTTOM: 5px; OVERFLOW: auto; BORDER-LEFT: #999999 1px dashed; WIDTH: 100%; COLOR: #000000; LINE-HEIGHT: 14px; PADDING-TOP: 5px; BORDER-BOTTOM: #999999 1px dashed; FONT-FAMILY: Andale Mono, Lucida Console, Monaco, fixed, monospace; BACKGROUND-COLOR: #eee"&gt;&lt;code&gt;SQL&amp;gt; alter database recover cancel;&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;10. Open the database for read only access. The temp files will be added automatically.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style="BORDER-RIGHT: #999999 1px dashed; PADDING-RIGHT: 5px; BORDER-TOP: #999999 1px dashed; PADDING-LEFT: 5px; FONT-SIZE: 12px; PADDING-BOTTOM: 5px; OVERFLOW: auto; BORDER-LEFT: #999999 1px dashed; WIDTH: 100%; COLOR: #000000; LINE-HEIGHT: 14px; PADDING-TOP: 5px; BORDER-BOTTOM: #999999 1px dashed; FONT-FAMILY: Andale Mono, Lucida Console, Monaco, fixed, monospace; BACKGROUND-COLOR: #eee"&gt;&lt;code&gt;SQL&amp;gt; alter database open read only;&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;11. Shutdown the database and then mount the standby database.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style="BORDER-RIGHT: #999999 1px dashed; PADDING-RIGHT: 5px; BORDER-TOP: #999999 1px dashed; PADDING-LEFT: 5px; FONT-SIZE: 12px; PADDING-BOTTOM: 5px; OVERFLOW: auto; BORDER-LEFT: #999999 1px dashed; WIDTH: 100%; COLOR: #000000; LINE-HEIGHT: 14px; PADDING-TOP: 5px; BORDER-BOTTOM: #999999 1px dashed; FONT-FAMILY: Andale Mono, Lucida Console, Monaco, fixed, monospace; BACKGROUND-COLOR: #eee"&gt;&lt;code&gt;SQL&amp;gt; shutdown immediate&lt;br /&gt;&lt;br /&gt;SQL&amp;gt; startup nomount&lt;br /&gt;&lt;br /&gt;SQL&amp;gt; alter database mount standby database;&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;12. Start the MRP (managed recovery process):&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style="BORDER-RIGHT: #999999 1px dashed; PADDING-RIGHT: 5px; BORDER-TOP: #999999 1px dashed; PADDING-LEFT: 5px; FONT-SIZE: 12px; PADDING-BOTTOM: 5px; OVERFLOW: auto; BORDER-LEFT: #999999 1px dashed; WIDTH: 100%; COLOR: #000000; LINE-HEIGHT: 14px; PADDING-TOP: 5px; BORDER-BOTTOM: #999999 1px dashed; FONT-FAMILY: Andale Mono, Lucida Console, Monaco, fixed, monospace; BACKGROUND-COLOR: #eee"&gt;&lt;code&gt;SQL&amp;gt; alter database recover managed standby database disconnect;&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;13. Perform log switches on the primary to test the MRP. The archives on the primary should automatically be copied over to the standby archive location and automatically be applied.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;Voila! Your dataguard is ready to be used. &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1102785860137074059-8257019013398844031?l=bkpappsdba.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bkpappsdba.blogspot.com/feeds/8257019013398844031/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1102785860137074059&amp;postID=8257019013398844031' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/8257019013398844031'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/8257019013398844031'/><link rel='alternate' type='text/html' href='http://bkpappsdba.blogspot.com/2010/09/creating-physical-standby-database.html' title='Creating a physical standby database'/><author><name>Praveen</name><uri>http://www.blogger.com/profile/09645880422225153776</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-1102785860137074059.post-6038234852056821799</id><published>2010-05-18T14:27:00.007+05:30</published><updated>2010-05-18T14:50:42.961+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='ORA_NLS10'/><category scheme='http://www.blogger.com/atom/ns#' term='ORA-07445'/><title type='text'>ORA-07445 [kopxccc()+124] error trying to submit a concurrent request</title><content type='html'>&lt;div align="justify"&gt;I am writing this blog entry to share an interesting error with you. There is a parameter ORA_NLS10 without setting which, the database was throwing a lot of ORA-07445 errors. I spoke about the ORA_NLS10 parameter in a &lt;a href="http://bkpappsdba.blogspot.com/2009/02/curious-case-of-database-crash-and.html"&gt;previous&lt;/a&gt; post. A related issue was occuring here too.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;u&gt;Issue&lt;br /&gt;&lt;br /&gt;&lt;/u&gt;&lt;/strong&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;strong&gt;&lt;u&gt;&lt;/u&gt;&lt;/strong&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;Unable to submit concurrent requests. Receiving the below error:&lt;br /&gt;&lt;br /&gt;APP-FND-01564: ORACLE error 3113 in FDFDDS_RAISE_DFF_COMPILED&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;Also, receiving ORA-07445 errors in the alert log.&lt;br /&gt;&lt;br /&gt;&lt;pre style="BORDER-RIGHT: #999999 1px dashed; PADDING-RIGHT: 5px; BORDER-TOP: #999999 1px dashed; PADDING-LEFT: 5px; FONT-SIZE: 12px; PADDING-BOTTOM: 5px; OVERFLOW: auto; BORDER-LEFT: #999999 1px dashed; WIDTH: 100%; COLOR: #000000; LINE-HEIGHT: 14px; PADDING-TOP: 5px; BORDER-BOTTOM: #999999 1px dashed; FONT-FAMILY: Andale Mono, Lucida Console, Monaco, fixed, monospace; BACKGROUND-COLOR: #eee"&gt;&lt;code&gt;Mon May 17 05:54:00 2010&lt;br /&gt;Completed: ALTER DATABASE OPEN&lt;br /&gt;Mon May 17 05:57:12 2010&lt;br /&gt;Errors in file /u005/app/oracle/cpe2eprd/cpe2eprddb/10.2.0/admin/cpe2eprd_cpeidb/udump/cpe2eprd_ora_1094.trc:&lt;br /&gt;ORA-07445: exception encountered: core dump [lfilic()+328] [SIGSEGV] [Address not mapped to object] [0x000000040] [] []&lt;br /&gt;Mon May 17 06:03:18 2010&lt;br /&gt;Errors in file /u005/app/oracle/cpe2eprd/cpe2eprddb/10.2.0/admin/cpe2eprd_cpeidb/udump/cpe2eprd_ora_2966.trc:&lt;br /&gt;ORA-07445: exception encountered: core dump [kopxccc()+124] [SIGSEGV] [Address not mapped to object] [0x000000062] [] []&lt;br /&gt;Mon May 17 06:06:40 2010&lt;br /&gt;Errors in file /u005/app/oracle/cpe2eprd/cpe2eprddb/10.2.0/admin/cpe2eprd_cpeidb/udump/cpe2eprd_ora_3956.trc:&lt;br /&gt;ORA-07445: exception encountered: core dump [kopxccc()+124] [SIGSEGV] [Address not mapped to object] [0x000000062] [] []&lt;br /&gt;&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p align="justify"&gt;&lt;br /&gt;&lt;strong&gt;&lt;u&gt;Cause&lt;br /&gt;&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;Database was started with incorrect ORA_NLS10 parameter.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;u&gt;Analysis&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;As per MOS Note ID: 553264.1, ORA_NLS10 parameter should be set to $ORACLE_HOME/nls/data/9idata.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;u&gt;Solution&lt;br /&gt;&lt;br /&gt;&lt;/u&gt;&lt;/strong&gt;1. Shutdown the database.&lt;br /&gt;&lt;br /&gt;2. Set the parameter ORA_NLS10 to the correct value as per MOS Note ID: 553264.1&lt;br /&gt;&lt;br /&gt;export ORA_NLS10=$ORACLE_HOME/nls/data/9idata&lt;br /&gt;&lt;br /&gt;3. Startup the database.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;u&gt;References&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;1. MOS Note ID: 553264.1&lt;br /&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1102785860137074059-6038234852056821799?l=bkpappsdba.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bkpappsdba.blogspot.com/feeds/6038234852056821799/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1102785860137074059&amp;postID=6038234852056821799' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/6038234852056821799'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/6038234852056821799'/><link rel='alternate' type='text/html' href='http://bkpappsdba.blogspot.com/2010/05/ora-07445-kopxccc124-error-trying-to.html' title='ORA-07445 [kopxccc()+124] error trying to submit a concurrent request'/><author><name>Praveen</name><uri>http://www.blogger.com/profile/09645880422225153776</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-1102785860137074059.post-7042238774076705176</id><published>2010-03-31T11:26:00.014+05:30</published><updated>2010-03-31T12:28:56.610+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='WF Mailer'/><category scheme='http://www.blogger.com/atom/ns#' term='virtual host'/><title type='text'>WF Mailer Error  - Unable to make a connection with the user and responsibility</title><content type='html'>&lt;div align="justify"&gt;Yesterday, I faced an issue while starting WF Mailer in a development instance. It was a clone from production and was recently patched, during the course of which, autoconfig was also run. Without further ado, let me explain the problem and the solution:&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;strong&gt;&lt;u&gt;Issue&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;Receiving below error while trying to start WF Mailer:&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style="BORDER-RIGHT: #999999 1px dashed; PADDING-RIGHT: 5px; BORDER-TOP: #999999 1px dashed; PADDING-LEFT: 5px; FONT-SIZE: 12px; PADDING-BOTTOM: 5px; OVERFLOW: auto; BORDER-LEFT: #999999 1px dashed; WIDTH: 100%; COLOR: #000000; LINE-HEIGHT: 14px; PADDING-TOP: 5px; BORDER-BOTTOM: #999999 1px dashed; FONT-FAMILY: Andale Mono, Lucida Console, Monaco, fixed, monospace; BACKGROUND-COLOR: #eee"&gt;&lt;code&gt;[Mar 30, 2010 4:22:44 AM CDT]:1269940964344:Thread[BES Dispatch Thread,5,main]:0:-1:suomt32l:10.6.71.100:-1:-1:ERROR:[SVC-GSM-WFMLRSVC-801965 : oracle.apps.fnd.cp.gsc.SvcComponentContainer.handleComponentEvent(int, String, String)]:Could not start component; performing rollback -&amp;gt; oracle.apps.fnd.cp.gsc.SvcComponentException: Validation failed for the following parameters -&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;{FRAMEWORK_USER=Unable to make a connection with the user and responsibility}.&amp;lt;&amp;lt;&amp;lt;&amp;lt;&amp;lt;&amp;lt;&amp;lt;&amp;lt;&amp;lt;&amp;lt;&amp;lt;&amp;lt;&amp;lt;&amp;lt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;Parameters were -&amp;gt; {INBOUND_MAX_IGNORE_SIZE=1000, INBOUND_MAX_LOOKUP_CACHE_SIZE=100, ATTACH_IMAGES=Y, ALLOW_FORWARDED_RESPONSE=Y, INBOUND_UNSOLICITED_THRESHOLD=2, NODENAME=WFMAIL, AUTOCLOSE_FYI=Y, INBOUND_PROTOCOL=IMAP, PROCESSOR_READ_TIMEOUT_CLOSE=Y, ATTACHED_URLS=WFMAIL:ATTACHED_URLS, TEST_ADDRESS=NONE, PROCESSOR_OUT_THREAD_COUNT=1, EXPUNGE_ON_CLOSE=Y, ATTACH_STYLESHEET=Y, OUTBOUND_CONNECTION_TIMEOUT=120, INBOUND_MAX_RET_EMAIL_SIZE=100, MAX_INVALID_ADDR_LIST_SIZE=100, PROCESSOR_MAX_LOOP_SLEEP=60, SEND_ACCESS_KEY=N, PROCESSOR_IN_THREAD_COUNT=1, FRAMEWORK_APP=1, CLOSED=WFMAIL:CLOSED, INBOUND_FETCH_SIZE=100, SUMMARY=WFMAIL:SUMMARY, ENABLE_STYLESHEET=N, PROCESSOR_ERROR_LOOP_SLEEP=60, OPEN_MAIL_FYI=WFMAIL:OPEN_MAIL_FYI, FRAMEWORK_RESP=20420, ALTERNATE_EMAIL_PARSER=oracle.apps.fnd.wf.mailer.DirectEmailParser, INBOUND_PASSWORD=_$@^@6@9^$4     `+{90_8A_%&amp;amp;B~+8?@9(?~(B!!~{($A?B&amp;amp;, HTTP_USER_AGENT=Mozilla/4.76, RESET_NLS=N, PROCESS=PROCESS, OPEN_MAIL_DIRECT=WFMAIL:OPEN_MAIL_DIRECT, PROCESSOR_LOOP_SLEEP=5, MESSAGE_FORMATTER=oracle.apps.fnd.wf.mailer.NotificationFormatter, REPLYTO=osowner@****.com, FRAMEWORK_USER=0, CANCELED=WFMAIL:CANCELED, OUTBOUND_PROTOCOL=SMTP, DISCARD=DISCARD, ACCOUNT=appltst, FROM=Workflow Mailer Oracle Development, PROCESSOR_DEFER_EVTDATA_READ=Y, WARNING=WFMAIL:WARNING, PROCESSOR_MAX_ERROR_COUNT=1000, INBOUND_CONNECTION_TIMEOUT=120, HTMLAGENT=http://****.com:8005/pls/SID, INBOX=INBOX, OPEN_INVALID_MORE_INFO=WFMAIL:OPEN_INVALID_MORE_INFO, INBOUND_SERVER=****.com, OPEN_MORE_INFO=WFMAIL:OPEN_MORE_INFO, INLINE_ATTACHMENT=N, OPEN_INVALID=WFMAIL:OPEN_INVALID, EMAIL_PARSER=oracle.apps.fnd.wf.mailer.TemplatedEmailParser, DIRECT_RESPONSE=N, OPEN_MAIL=WFMAIL:OPEN_MAIL, FRAMEWORK_URL_TIMEOUT=30, COMPONENT_LOG_LEVEL=5, SUMHTML=WFMAIL:SUMHTML, PROCESSOR_READ_TIMEOUT=10, DEBUG_MAIL_SESSION=N, OUTBOUND_SERVER=********.com}&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p align="justify"&gt;&lt;br /&gt;&lt;strong&gt;&lt;u&gt;Symptom&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;* Instance is cloned from Production&lt;br /&gt;* Instance is using virtual hosts&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;u&gt;Cause&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;Whenever, Autoconfig is run, it will set the same server ID for both virtual and Physical hosts which causes this problem.&lt;br /&gt;&lt;/p&gt;&lt;p align="justify"&gt;&lt;strong&gt;&lt;u&gt;Solution&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;1. Shutdown Concurrent Manager&lt;/p&gt;&lt;p align="justify"&gt;2. Take a backup of FND_Nodes.&lt;/p&gt;&lt;p align="justify"&gt;3. Delete Physical host from OAM (OAM &gt; Administrator &gt; Hosts)&lt;/p&gt;&lt;p align="justify"&gt;4. Register same host again from OAM (or through forms).&lt;/p&gt;&lt;p align="justify"&gt;5. Reregister the physical host for concurrent processing as below:&lt;/p&gt;&lt;p align="justify"&gt;SQL&gt; exec fnd_cp_fndsm.register_fndsm_fcq('&lt;physical_host_name&gt;');&lt;/p&gt;&lt;p align="justify"&gt;5. Start Concurrent Manager&lt;/p&gt;&lt;p align="justify"&gt;6. Mailer was working fine after this.&lt;/p&gt;&lt;p align="justify"&gt;&lt;/p&gt;&lt;p align="justify"&gt;&lt;strong&gt;&lt;u&gt;Reference&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;&lt;/p&gt;&lt;p align="justify"&gt;Thanks to Sundeep Dubey's &lt;a href="http://troubleshootingappsdba.blogspot.com/2008/04/java-mailer-not-starting.html"&gt;blog &lt;/a&gt;for pointing me in the right direction!&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1102785860137074059-7042238774076705176?l=bkpappsdba.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bkpappsdba.blogspot.com/feeds/7042238774076705176/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1102785860137074059&amp;postID=7042238774076705176' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/7042238774076705176'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/7042238774076705176'/><link rel='alternate' type='text/html' href='http://bkpappsdba.blogspot.com/2010/03/wf-mailer-error-unable-to-make.html' title='WF Mailer Error  - Unable to make a connection with the user and responsibility'/><author><name>Praveen</name><uri>http://www.blogger.com/profile/09645880422225153776</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-1102785860137074059.post-8104735256632859203</id><published>2010-02-02T12:04:00.008+05:30</published><updated>2010-02-04T10:33:25.404+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='quirky patch queries'/><category scheme='http://www.blogger.com/atom/ns#' term='Patches'/><title type='text'>Quirky 11i Apps Patch queires</title><content type='html'>&lt;div align="justify"&gt;Long time since I blogged. I was a bit busy with my vacations and work! Anyway, check out my &lt;a href="http://skodafabia.wordpress.com/"&gt;travelogue&lt;/a&gt;, if you are interested enough.&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div align="justify"&gt;This time, I plan to write about a few quirky and rarely used queries to find out whether a patch is applied.&lt;/div&gt;&lt;br /&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;br /&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;p&gt;&lt;strong&gt;&lt;u&gt;Method 1&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;Check Patches applied from Oracle Applications Manager (OAM).&lt;br /&gt;&lt;br /&gt;a) Connect to OAM:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://hostname.domain:port/"&gt;http://hostname.domain:port/servlets/weboam/oam/oamLogin&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Go to Site Map--&gt;Maintenance--&gt;Applied Patches&lt;br /&gt;&lt;br /&gt;Enter Patch ID and press 'Go'&lt;br /&gt;&lt;br /&gt;See if Patch is returned.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;u&gt;Method 2&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Use 'adphrept' utility documented in Metalink Note:181665.1, section 'Retrieving information on patches or files that have been applied via adpatch'.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;$AD_TOP/patch/115/sql/adphrept.sql (available on admin and web nodes in multi tier APPL_TOP)&lt;br /&gt;&lt;br /&gt;(1) Patch History report usage:&lt;br /&gt;$AD_TOP/patch/115/sql/adphrept.sql &amp;lt;query_depth&amp;gt; &amp;lt; bug_number or ALL&amp;gt; &amp;lt;bug_product or ALL&amp;gt; \&lt;br /&gt;&amp;lt;end_date_from (mm/dd/rr or ALL)&amp;gt; &amp;lt;end_date_to (mm/dd/rr or ALL)&amp;gt; \&lt;br /&gt;&amp;lt;patchname/ALL&amp;gt; &amp;lt;patchtype/ALL&amp;gt; &amp;lt;level/ALL&amp;gt; &amp;lt;language/ALL&amp;gt; \&lt;br /&gt;&amp;lt;appltop/ALL&amp;gt; &amp;lt;limit to forms server? (Y/N)&amp;gt; \&lt;br /&gt;&amp;lt;limit to web server? (Y/N)&amp;gt; \&lt;br /&gt;&amp;lt;limit to node server? (Y/N)&amp;gt; \&lt;br /&gt;&amp;lt;limit to admin server? (Y/N)&amp;gt; \&lt;br /&gt;&amp;lt;only patches that change DB? (Y/N)&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Specify 1 or 2 or 3 for query_depth&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;1-&amp;gt; Details of patches only&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;2-&amp;gt; Details of patches and their Bug Fixes only&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;3-&amp;gt; Details of patches their Bug Fixes and Bug Actions&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;The output would be generated in the current directory and would be named adfilerep.xml.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Example1:&lt;/strong&gt; To get the complete patch details for patches applied in Oct 2009:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:FONT-FAMILY: Andale Mono, Lucida Console, Monaco, fixed, monospace;font-size:85%;"&gt;$ sqlplus apps @$AD_TOP/patch/115/sql/adphrept.sql 3 ALL ALL 10/01/09 10/31/09 ALL ALL ALL ALL ALL N N N N N&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;SQL*Plus: Release 8.0.6.0.0 - Production on Thu Nov 26 01:41:59 2009&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;(c) Copyright 1999 Oracle Corporation. All rights reserved.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Enter password:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Connected to:&lt;br /&gt;Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - 64bit Production&lt;br /&gt;With the Partitioning, OLAP and Data Mining options&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Please be patient, this will take a very long time.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;If you are prompted for any parameters, please exit and review the parameter list you have submitted.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Gathering data for report. Report output will be written to adfilerep.xml.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Writing data to report file.&lt;br /&gt;Your AD Patch History XML Report is ready at adfilerep.xml.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Note:Please copy the file to OA_HTML top to view it thru browser&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Example2:&lt;/strong&gt; To find whether bug number 6502082 is applied or not.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:FONT-FAMILY: Andale Mono, Lucida Console, Monaco, fixed, monospace;font-size:85%;"&gt;$ sqlplus apps @$AD_TOP/patch/115/sql/adphrept.sql 1 6502082 all all all all all all all all n n n n n&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;SQL*Plus: Release 8.0.6.0.0 - Production on Thu Nov 26 01:22:31 2009&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;(c) Copyright 1999 Oracle Corporation. All rights reserved.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Enter password:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Connected to:&lt;br /&gt;Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - 64bit Production&lt;br /&gt;With the Partitioning, OLAP and Data Mining options&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;This report should take less than a minute.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;If you are prompted for any parameters, please exit and review the parameter list you have submitted.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Gathering data for report. Report output will be written to adfilerep.xml.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Writing data to report file.&lt;br /&gt;Your AD Patch History XML Report is ready at adfilerep.xml.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Note:Please copy the file to OA_HTML top to view it thru browser&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;strong&gt;&lt;u&gt;Method 3&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;You might also use the following query, however methods 1 and 2 are more reliable.&lt;br /&gt;&lt;br /&gt;&lt;pre style="BORDER-RIGHT: #999999 1px dashed; PADDING-RIGHT: 5px; BORDER-TOP: #999999 1px dashed; PADDING-LEFT: 5px; FONT-SIZE: 12px; PADDING-BOTTOM: 5px; OVERFLOW: auto; BORDER-LEFT: #999999 1px dashed; WIDTH: 100%; COLOR: #000000; LINE-HEIGHT: 14px; PADDING-TOP: 5px; BORDER-BOTTOM: #999999 1px dashed; FONT-FAMILY: Andale Mono, Lucida Console, Monaco, fixed, monospace; BACKGROUND-COLOR: #eee"&gt;&lt;code&gt;SQL&amp;gt; SELECT DISTINCT RPAD(a.bug_number,&lt;br /&gt;11) RPAD(e.patch_name,&lt;br /&gt;11) RPAD(TRUNC(c.end_date),&lt;br /&gt;12) RPAD(b.applied_flag, 4)  BUG_APPLIED&lt;br /&gt;FROM&lt;br /&gt;ad_bugs a,&lt;br /&gt;ad_patch_run_bugs b,&lt;br /&gt;ad_patch_runs c,&lt;br /&gt;ad_patch_drivers d ,&lt;br /&gt;ad_applied_patches e&lt;br /&gt;WHERE&lt;br /&gt;a.bug_id = b.bug_id AND&lt;br /&gt;b.patch_run_id = c.patch_run_id AND&lt;br /&gt;c.patch_driver_id = d.patch_driver_id AND&lt;br /&gt;d.applied_patch_id = e.applied_patch_id AND&lt;br /&gt;a.bug_number in  ('&amp;lt;XXXXXX&amp;gt;','&amp;lt;YYYYYY&amp;gt;')&lt;br /&gt;ORDER BY 1 DESC;&lt;br /&gt;&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;A modified version of the above query is as below:&lt;br /&gt;&lt;br /&gt;&lt;pre style="BORDER-RIGHT: #999999 1px dashed; PADDING-RIGHT: 5px; BORDER-TOP: #999999 1px dashed; PADDING-LEFT: 5px; FONT-SIZE: 12px; PADDING-BOTTOM: 5px; OVERFLOW: auto; BORDER-LEFT: #999999 1px dashed; WIDTH: 100%; COLOR: #000000; LINE-HEIGHT: 14px; PADDING-TOP: 5px; BORDER-BOTTOM: #999999 1px dashed; FONT-FAMILY: Andale Mono, Lucida Console, Monaco, fixed, monospace; BACKGROUND-COLOR: #eee"&gt;&lt;code&gt;SELECT DISTINCT a.bug_number, e.patch_name,&lt;br /&gt;TRUNC(c.end_date) end_date, b.applied_flag  BUG_APPLIED&lt;br /&gt;FROM&lt;br /&gt;ad_bugs a,&lt;br /&gt;ad_patch_run_bugs b,&lt;br /&gt;ad_patch_runs c,&lt;br /&gt;ad_patch_drivers d ,&lt;br /&gt;ad_applied_patches e&lt;br /&gt;WHERE&lt;br /&gt;a.bug_id = b.bug_id AND&lt;br /&gt;b.patch_run_id = c.patch_run_id AND&lt;br /&gt;c.patch_driver_id = d.patch_driver_id AND&lt;br /&gt;d.applied_patch_id = e.applied_patch_id AND&lt;br /&gt;a.bug_number in  ('&amp;amp;bug_number1','&amp;amp;bug_number2')&lt;br /&gt;ORDER BY 1 DESC;&lt;br /&gt;&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Note:&lt;/strong&gt; Please enter Patch number in place of &lt;xxxxxx&gt;and &lt;yyyyyy&gt;, e.g '3453499'&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;u&gt;Method 4&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;In multi-node environment you are advised to use Patch Query from section "Checking the Patch Requirements on each Appl_Top" of the Metalink Note:364439.1 - Tips and Queries for Troubleshooting Advanced Topologies.&lt;br /&gt;&lt;br /&gt;&lt;pre style="BORDER-RIGHT: #999999 1px dashed; PADDING-RIGHT: 5px; BORDER-TOP: #999999 1px dashed; PADDING-LEFT: 5px; FONT-SIZE: 12px; PADDING-BOTTOM: 5px; OVERFLOW: auto; BORDER-LEFT: #999999 1px dashed; WIDTH: 100%; COLOR: #000000; LINE-HEIGHT: 14px; PADDING-TOP: 5px; BORDER-BOTTOM: #999999 1px dashed; FONT-FAMILY: Andale Mono, Lucida Console, Monaco, fixed, monospace; BACKGROUND-COLOR: #eee"&gt;&lt;code&gt;set serveroutput on&lt;br /&gt;DECLARE&lt;br /&gt;  TYPE p_patch_array_type is varray(10) of varchar2(10);&lt;br /&gt;  --&lt;br /&gt;  p_patchlist p_patch_array_type;&lt;br /&gt;  p_appltop_name        varchar2(50);&lt;br /&gt;  p_patch_status        varchar2(15);&lt;br /&gt;  p_appl_top_id         number;&lt;br /&gt;  --&lt;br /&gt;  CURSOR alist IS&lt;br /&gt;    select appl_top_id, name&lt;br /&gt;    from ad_appl_tops;&lt;br /&gt;  --&lt;br /&gt;  procedure println(msg in varchar2)&lt;br /&gt;  is&lt;br /&gt;  begin&lt;br /&gt;    dbms_output.enable;&lt;br /&gt;    dbms_output.put_line(msg);&lt;br /&gt;  end;&lt;br /&gt;  --&lt;br /&gt;BEGIN&lt;br /&gt;  open alist;&lt;br /&gt;  --&lt;br /&gt;  p_patchlist:= p_patch_array_type('3240000','3460000','4204335','4125550','3942483','4733943');&lt;br /&gt;  --&lt;br /&gt;  LOOP&lt;br /&gt;    FETCH alist INTO p_appl_top_id,p_appltop_name;&lt;br /&gt;    EXIT WHEN alist%NOTFOUND;&lt;br /&gt;    --&lt;br /&gt;    IF p_appltop_name NOT IN ('GLOBAL','*PRESEEDED*')&lt;br /&gt;    THEN&lt;br /&gt;      println(p_appltop_name  ':');&lt;br /&gt;      for i in 1..p_patchlist.count&lt;br /&gt;      loop&lt;br /&gt;        p_patch_status := ad_patch.is_patch_applied('11i',p_appl_top_id,p_patchlist(i));&lt;br /&gt;        println('..Patch '  p_patchlist(i)  ' was '  p_patch_status);&lt;br /&gt;      end loop;&lt;br /&gt;    END if;&lt;br /&gt;    println('.');&lt;br /&gt;  END LOOP;&lt;br /&gt;  --&lt;br /&gt;  close alist;&lt;br /&gt;END;&lt;br /&gt;/&lt;br /&gt;&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;A modification of the above query to find whether a single patch is applied or not:&lt;br /&gt;&lt;br /&gt;&lt;pre style="BORDER-RIGHT: #999999 1px dashed; PADDING-RIGHT: 5px; BORDER-TOP: #999999 1px dashed; PADDING-LEFT: 5px; FONT-SIZE: 12px; PADDING-BOTTOM: 5px; OVERFLOW: auto; BORDER-LEFT: #999999 1px dashed; WIDTH: 100%; COLOR: #000000; LINE-HEIGHT: 14px; PADDING-TOP: 5px; BORDER-BOTTOM: #999999 1px dashed; FONT-FAMILY: Andale Mono, Lucida Console, Monaco, fixed, monospace; BACKGROUND-COLOR: #eee"&gt;&lt;code&gt;-- Query to find whether a single patch was applied or not.&lt;br /&gt;set serveroutput on;&lt;br /&gt;DECLARE&lt;br /&gt;  p_appltop_name        varchar2(50);&lt;br /&gt;  p_patch_status        varchar2(15);&lt;br /&gt;  p_appl_top_id         number;&lt;br /&gt;  --&lt;br /&gt;  cursor atoplist is&lt;br /&gt;    select appl_top_id, name from ad_appl_tops;&lt;br /&gt;  --&lt;br /&gt;  procedure println(msg in varchar2)&lt;br /&gt;    is&lt;br /&gt;    begin&lt;br /&gt;      dbms_output.enable;&lt;br /&gt;      dbms_output.put_line(msg);&lt;br /&gt;    end;&lt;br /&gt;  --&lt;br /&gt;BEGIN&lt;br /&gt;  open atoplist;&lt;br /&gt;  --&lt;br /&gt;  LOOP&lt;br /&gt;    FETCH atoplist INTO p_appl_top_id,p_appltop_name;&lt;br /&gt;    EXIT WHEN atoplist%NOTFOUND;&lt;br /&gt;    --&lt;br /&gt;    IF p_appltop_name NOT IN ('GLOBAL','*PRESEEDED*')&lt;br /&gt;    THEN&lt;br /&gt;      println(p_appltop_name  ':');&lt;br /&gt;      p_patch_status := ad_patch.is_patch_applied('11i',p_appl_top_id,&amp;amp;bug);&lt;br /&gt;      println('..Patch '  &amp;amp;bug  ' was '  p_patch_status);&lt;br /&gt;    END if;&lt;br /&gt;    println('.');&lt;br /&gt;  END LOOP;&lt;br /&gt;  --&lt;br /&gt;  close atoplist;&lt;br /&gt;END;&lt;br /&gt;/&lt;br /&gt;&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;u&gt;References&lt;/u&gt;:&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;1. Metalink (MOS) Note: 443761.1 - How to check if a certain Patch was applied to Oracle Applications instance?&lt;br /&gt;&lt;br /&gt;2. Metalink (MOS) Note: 181665.1 - Release 11i Adpatch Basics&lt;br /&gt;&lt;br /&gt;3. Metalink (MOS) Note: 364439.1 - Tips and Queries for Troubleshooting Advanced Topologies&lt;BR&gt;&lt;BR&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1102785860137074059-8104735256632859203?l=bkpappsdba.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bkpappsdba.blogspot.com/feeds/8104735256632859203/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1102785860137074059&amp;postID=8104735256632859203' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/8104735256632859203'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/8104735256632859203'/><link rel='alternate' type='text/html' href='http://bkpappsdba.blogspot.com/2010/02/quirky-11i-apps-patch-queires.html' title='Quirky 11i Apps Patch queires'/><author><name>Praveen</name><uri>http://www.blogger.com/profile/09645880422225153776</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-1102785860137074059.post-20280039286647569</id><published>2009-11-23T14:57:00.008+05:30</published><updated>2010-09-06T15:02:12.449+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='standby database'/><category scheme='http://www.blogger.com/atom/ns#' term='flashback database'/><category scheme='http://www.blogger.com/atom/ns#' term='reporting database'/><title type='text'>Build a Reporting Database using standby and flashback</title><content type='html'>&lt;div align="justify"&gt;&lt;br /&gt;It's been a long time since I posted something. So, here's something worthwhile. Thanks to my colleague Kevin who devised this method!&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;strong&gt;&lt;u&gt;Requirement&lt;br /&gt;&lt;br /&gt;&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;A reporting database to be refreshed daily from the UAT instance. The reporting database should be available during the daytime and the refresh can happen during the night.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;u&gt;Solution&lt;br /&gt;&lt;br /&gt;&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;1. Initially, build the reporting database as a standby database.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;2. Once the Managed Recovery process (MRP) is initiated and the standby is in sync with the primary database, cancel the MRP.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;pre style="BORDER-RIGHT: #999999 1px dashed; PADDING-RIGHT: 5px; BORDER-TOP: #999999 1px dashed; PADDING-LEFT: 5px; FONT-SIZE: 12px; PADDING-BOTTOM: 5px; OVERFLOW: auto; BORDER-LEFT: #999999 1px dashed; WIDTH: 100%; COLOR: #000000; LINE-HEIGHT: 14px; PADDING-TOP: 5px; BORDER-BOTTOM: #999999 1px dashed; FONT-FAMILY: Andale Mono, Lucida Console, Monaco, fixed, monospace; BACKGROUND-COLOR: #eee"&gt;&lt;code&gt;SQL&amp;gt; alter database recover managed standby database cancel;&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;&lt;/p&gt;&lt;p align="justify"&gt;3. Enable flashback in the standby database. Note that the DB should be in mount state for this.&lt;/p&gt;&lt;p align="justify"&gt;&lt;/p&gt;&lt;br /&gt;&lt;pre style="BORDER-RIGHT: #999999 1px dashed; PADDING-RIGHT: 5px; BORDER-TOP: #999999 1px dashed; PADDING-LEFT: 5px; FONT-SIZE: 12px; PADDING-BOTTOM: 5px; OVERFLOW: auto; BORDER-LEFT: #999999 1px dashed; WIDTH: 100%; COLOR: #000000; LINE-HEIGHT: 14px; PADDING-TOP: 5px; BORDER-BOTTOM: #999999 1px dashed; FONT-FAMILY: Andale Mono, Lucida Console, Monaco, fixed, monospace; BACKGROUND-COLOR: #eee"&gt;&lt;code&gt;SQL&amp;gt; startup mount force;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;SQL&amp;gt; alter database flashback on;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;4. create guaranteed restore point.&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;pre style="BORDER-RIGHT: #999999 1px dashed; PADDING-RIGHT: 5px; BORDER-TOP: #999999 1px dashed; PADDING-LEFT: 5px; FONT-SIZE: 12px; PADDING-BOTTOM: 5px; OVERFLOW: auto; BORDER-LEFT: #999999 1px dashed; WIDTH: 100%; COLOR: #000000; LINE-HEIGHT: 14px; PADDING-TOP: 5px; BORDER-BOTTOM: #999999 1px dashed; FONT-FAMILY: Andale Mono, Lucida Console, Monaco, fixed, monospace; BACKGROUND-COLOR: #eee"&gt;&lt;code&gt;SQL&amp;gt; drop restore point before_open;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;SQL&amp;gt; create restore point before_open guarantee flashback database;&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;5. Activate the standby database.&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;pre style="BORDER-RIGHT: #999999 1px dashed; PADDING-RIGHT: 5px; BORDER-TOP: #999999 1px dashed; PADDING-LEFT: 5px; FONT-SIZE: 12px; PADDING-BOTTOM: 5px; OVERFLOW: auto; BORDER-LEFT: #999999 1px dashed; WIDTH: 100%; COLOR: #000000; LINE-HEIGHT: 14px; PADDING-TOP: 5px; BORDER-BOTTOM: #999999 1px dashed; FONT-FAMILY: Andale Mono, Lucida Console, Monaco, fixed, monospace; BACKGROUND-COLOR: #eee"&gt;&lt;code&gt;SQL&amp;gt; alter database activate standby database;&lt;br /&gt;&lt;br /&gt;SQL&amp;gt; startup force;&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;&lt;/p&gt;&lt;p align="justify"&gt;6. In the evening/night, flashback the database to the guaranteed restore point i.e., standby database and resync it with the primary.&lt;/p&gt;&lt;p align="justify"&gt;&lt;/p&gt;&lt;br /&gt;&lt;pre style="BORDER-RIGHT: #999999 1px dashed; PADDING-RIGHT: 5px; BORDER-TOP: #999999 1px dashed; PADDING-LEFT: 5px; FONT-SIZE: 12px; PADDING-BOTTOM: 5px; OVERFLOW: auto; BORDER-LEFT: #999999 1px dashed; WIDTH: 100%; COLOR: #000000; LINE-HEIGHT: 14px; PADDING-TOP: 5px; BORDER-BOTTOM: #999999 1px dashed; FONT-FAMILY: Andale Mono, Lucida Console, Monaco, fixed, monospace; BACKGROUND-COLOR: #eee"&gt;&lt;code&gt;SQL&amp;gt; startup mount force;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;SQL&amp;gt; flashback database to before_open;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;SQL&amp;gt; alter database convert to physical standby;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;SQL&amp;gt; startup mount force;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;SQL&amp;gt; alter database recover managed standby database disconnect from session;&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;&lt;/p&gt;&lt;p align="justify"&gt;7. The next day monring, verify that the recovery has indeed completed, by using the following sql:&lt;/p&gt;&lt;p align="justify"&gt;&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;pre style="BORDER-RIGHT: #999999 1px dashed; PADDING-RIGHT: 5px; BORDER-TOP: #999999 1px dashed; PADDING-LEFT: 5px; FONT-SIZE: 12px; PADDING-BOTTOM: 5px; OVERFLOW: auto; BORDER-LEFT: #999999 1px dashed; WIDTH: 100%; COLOR: #000000; LINE-HEIGHT: 14px; PADDING-TOP: 5px; BORDER-BOTTOM: #999999 1px dashed; FONT-FAMILY: Andale Mono, Lucida Console, Monaco, fixed, monospace; BACKGROUND-COLOR: #eee"&gt;&lt;code&gt;SQL&amp;gt; set pages 1000&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;SQL&amp;gt; SELECT ARCH.THREAD# "Thread", ARCH.SEQUENCE# "Last Sequence Received",&lt;br /&gt;APPL.SEQUENCE# "Last Sequence Applied",&lt;br /&gt;(ARCH.SEQUENCE# - APPL.SEQUENCE#) "Difference"&lt;br /&gt;FROM&lt;br /&gt;(SELECT THREAD# ,SEQUENCE# FROM V$ARCHIVED_LOG WHERE (THREAD#,FIRST_TIME ) IN&lt;br /&gt;(SELECT THREAD#,MAX(FIRST_TIME) FROM V$ARCHIVED_LOG GROUP BY THREAD#)) ARCH,&lt;br /&gt;(SELECT THREAD# ,SEQUENCE# FROM V$LOG_HISTORY WHERE (THREAD#,FIRST_TIME ) IN&lt;br /&gt;(SELECT THREAD#,MAX(FIRST_TIME) FROM V$LOG_HISTORY GROUP BY THREAD#)) APPL&lt;br /&gt;WHERE&lt;br /&gt;ARCH.THREAD# = APPL.THREAD#&lt;br /&gt;ORDER BY 1;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;SQL&amp;gt; select max(sequence#) from v$archived_log; -- execute on both primary and standby.&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;8. Repeat the Steps 4 &amp;amp; 5 - to open the reporting database to the users.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;9. In the evening/night, repeat Step 6. - to resync the reporting database.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;p align="justify"&gt;&lt;strong&gt;&lt;u&gt;References&lt;br /&gt;&lt;br /&gt;&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;1. Introduction to &lt;a href="http://download.oracle.com/docs/cd/B19306_01/backup.102/b14192/rpfbdb.htm#sthref479"&gt;Restore points/flashback databases&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;p align="justify"&gt;2. Introduction to &lt;a href="http://download.oracle.com/docs/cd/B19306_01/server.102/b14230/toc.htm"&gt;data guard&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;p align="justify"&gt;3. Business Continuity for Oracle Applications Release 11i, Database Releases 9i and 10g - Note: 216212.1&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1102785860137074059-20280039286647569?l=bkpappsdba.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bkpappsdba.blogspot.com/feeds/20280039286647569/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1102785860137074059&amp;postID=20280039286647569' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/20280039286647569'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/20280039286647569'/><link rel='alternate' type='text/html' href='http://bkpappsdba.blogspot.com/2009/11/build-reporting-database-using-standby.html' title='Build a Reporting Database using standby and flashback'/><author><name>Praveen</name><uri>http://www.blogger.com/profile/09645880422225153776</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-1102785860137074059.post-5646917254125097978</id><published>2009-10-12T17:51:00.008+05:30</published><updated>2009-10-12T18:29:48.809+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Metalink'/><category scheme='http://www.blogger.com/atom/ns#' term='wget'/><category scheme='http://www.blogger.com/atom/ns#' term='Patches'/><title type='text'>WGET Syntax for downloading patches from Metalink</title><content type='html'>&lt;div align="justify"&gt;I am sure everyone knows this but just to emphasise the point (and ease the pain somewhat), &lt;strong&gt;&lt;span style="font-size:130%;"&gt;&lt;em&gt;Classic MetaLink Retires November 6, 2009&lt;/em&gt;&lt;/span&gt;&lt;/strong&gt;.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;Extract of the text of email from Oracle Support:&lt;br /&gt;&lt;br /&gt;&lt;pre style="BORDER-RIGHT: #999999 1px dashed; PADDING-RIGHT: 5px; BORDER-TOP: #999999 1px dashed; PADDING-LEFT: 5px; FONT-SIZE: 12px; PADDING-BOTTOM: 5px; OVERFLOW: auto; BORDER-LEFT: #999999 1px dashed; WIDTH: 100%; COLOR: #000000; LINE-HEIGHT: 14px; PADDING-TOP: 5px; BORDER-BOTTOM: #999999 1px dashed; FONT-FAMILY: Andale Mono, Lucida Console, Monaco, fixed, monospace; BACKGROUND-COLOR: #eee"&gt;&lt;code&gt;&lt;strong&gt;During the weekend of November 6 – 8, 2009, My Oracle Support, Oracle's next-generation customer support platform, will be upgraded and Classic MetaLink will be retired.&lt;/strong&gt;&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;Moreover (and this is the most painful part especially for Apps DBAs), the ftp to the patch site will also retire on 06-Nov-2009. :(&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;Below is the extract of the message displayed on updates.oracle.com ftp site:&lt;br /&gt;&lt;br /&gt;&lt;pre style="BORDER-RIGHT: #999999 1px dashed; PADDING-RIGHT: 5px; BORDER-TOP: #999999 1px dashed; PADDING-LEFT: 5px; FONT-SIZE: 12px; PADDING-BOTTOM: 5px; OVERFLOW: auto; BORDER-LEFT: #999999 1px dashed; WIDTH: 100%; COLOR: #000000; LINE-HEIGHT: 14px; PADDING-TOP: 5px; BORDER-BOTTOM: #999999 1px dashed; FONT-FAMILY: Andale Mono, Lucida Console, Monaco, fixed, monospace; BACKGROUND-COLOR: #eee"&gt;&lt;code&gt;230-  This service will be retired on November 06, 2009 and "My  Oracle Support"&lt;br /&gt;230-  will be the only interface for downloading the patches and updates. To&lt;br /&gt;230-  search and download patches from "My Oracle Support" users are required&lt;br /&gt;230-  to login to https://metalink.oracle.com and then go to "Patches &amp;amp; Updates"&lt;br /&gt;230-  tab.&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;p align="justify"&gt;Though I do NOT like it, I suppose I have to force myself to use wget to download patches directly on to the server, instead of downloading them to my local machine and then transferring them to the server (a much more painful process).&lt;br /&gt;&lt;br /&gt;So, as a heads up, I would like to share with you the syntax for using wget.&lt;br /&gt;&lt;/p&gt;&lt;blockquote&gt;&lt;p align="justify"&gt;&lt;strong&gt;&lt;u&gt;Note&lt;/u&gt;:&lt;/strong&gt; The below syntax worked for Solaris 10 and might not work for other flavours of UNIX since the default installation directory may be different. &lt;/p&gt;&lt;/blockquote&gt;&lt;p align="justify"&gt;&lt;br /&gt;&lt;/p&gt;&lt;p align="justify"&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style="font-family: Andale Mono, Lucida Console, Monaco, fixed, monospace; color: #000000; background-color: #eee;font-size: 12px;border: 1px dashed #999999;line-height: 14px;padding: 5px; overflow: auto; width: 100%"&gt;&lt;code&gt;/usr/sfw/bin/wget --http-user=&amp;lt;Metalink Username&amp;gt; --http-passwd=&amp;lt;Metalink Password&amp;gt; --output-document=&amp;lt;Name of patch&amp;gt;&lt;br /&gt;&amp;quot;&amp;lt;URL&amp;gt;&amp;quot;&lt;br /&gt;&lt;br /&gt;1. Get the URL in the following way:&lt;br /&gt;&lt;br /&gt;a. Login to metalink and query up the patch.&lt;br /&gt;b. Right click on the download button and click on &amp;quot;Copy Shortcut&amp;quot; (IE).&lt;br /&gt;&lt;br /&gt;2. The name of the patch would be a subset of the URL.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;eg:&lt;br /&gt;&lt;br /&gt;/usr/sfw/bin/wget --http-user=&amp;lt;Metalink Username&amp;gt; --http-passwd=&amp;lt;Metalink Password&amp;gt; --output-document=p8618053_11i_GENERIC.zip  &amp;quot;http://updates.oracle.com/ARULink/Download/process_form/p8618053_11i_GENERIC.zip?file_id=27640717&amp;amp;aru=11477117&amp;amp;userid=ml-693674.993&amp;amp;email=praveen.krishnamurthy@qwest.com&amp;amp;patch_password=&amp;amp;patch_file=p8618053_11i_GENERIC.zip&amp;quot;&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Hope this is helpful in the painful transition from the updates.oracle.com ftp site to the Flash Player based new and "improved" Metalink.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1102785860137074059-5646917254125097978?l=bkpappsdba.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bkpappsdba.blogspot.com/feeds/5646917254125097978/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1102785860137074059&amp;postID=5646917254125097978' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/5646917254125097978'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/5646917254125097978'/><link rel='alternate' type='text/html' href='http://bkpappsdba.blogspot.com/2009/10/wget-syntax-for-downloading-patches.html' title='WGET Syntax for downloading patches from Metalink'/><author><name>Praveen</name><uri>http://www.blogger.com/profile/09645880422225153776</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>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1102785860137074059.post-7259358910431351412</id><published>2009-10-09T10:28:00.010+05:30</published><updated>2009-10-09T12:55:55.080+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='sql scripts'/><category scheme='http://www.blogger.com/atom/ns#' term='Request Set'/><title type='text'>Find Request Set Name, Conc Manager given a request ID</title><content type='html'>&lt;div align="justify"&gt;Given a request id, how does one find out the program name and the manager running the request? Most of the Metalink notes and blogs provide the answer to this question but for one aspect. What is that? Read on to find out.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;What the SQL queries available on the web and Metalink lack is that they provide the concurrent program name for a single request given the request id. What about for a request set? Do they provide the answer? No, they don't.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;p&gt;&lt;br /&gt;I have tried here to cover this aspect too. So, here goes. &lt;/p&gt;&lt;blockquote&gt;&lt;strong&gt;&lt;u&gt;Note&lt;/u&gt;:&lt;/strong&gt; This query works for all request ids, not only for request ids for request sets.&lt;br /&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;p&gt; &lt;/p&gt;&lt;pre style="BORDER-RIGHT: #999999 1px dashed; PADDING-RIGHT: 5px; BORDER-TOP: #999999 1px dashed; PADDING-LEFT: 5px; FONT-SIZE: 12px; PADDING-BOTTOM: 5px; OVERFLOW: auto; BORDER-LEFT: #999999 1px dashed; WIDTH: 100%; COLOR: #000000; LINE-HEIGHT: 14px; PADDING-TOP: 5px; BORDER-BOTTOM: #999999 1px dashed; FONT-FAMILY: Andale Mono, Lucida Console, Monaco, fixed, monospace; BACKGROUND-COLOR: #eee"&gt;&lt;code&gt;select request_id,fcpv.CONCURRENT_PROGRAM_NAME "PROGRAM_NAME",&lt;br /&gt;nvl (fcr.description,fcpv.user_concurrent_program_name) "USER_PROGRAM_NAME",&lt;br /&gt;decode(fcpv.REQUEST_SET_FLAG,'N','SINGLE_REQUEST','Y','REQUEST_SET') "PROGRAM_TYPE",&lt;br /&gt;fcqv.CONCURRENT_QUEUE_NAME, fcqv.USER_CONCURRENT_QUEUE_NAME&lt;br /&gt;from&lt;br /&gt;fnd_concurrent_requests fcr, fnd_concurrent_programs_vl fcpv, fnd_concurrent_processes fcp, fnd_concurrent_queues_vl fcqv&lt;br /&gt;where&lt;br /&gt;fcr.concurrent_program_id = fcpv.concurrent_program_id (+)&lt;br /&gt;and fcr.controlling_manager = fcp.CONCURRENT_PROCESS_ID&lt;br /&gt;and fcp.concurrent_queue_id = fcqv.concurrent_queue_id&lt;br /&gt;and fcr.request_id = &amp;amp;request_id;&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1102785860137074059-7259358910431351412?l=bkpappsdba.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bkpappsdba.blogspot.com/feeds/7259358910431351412/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1102785860137074059&amp;postID=7259358910431351412' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/7259358910431351412'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/7259358910431351412'/><link rel='alternate' type='text/html' href='http://bkpappsdba.blogspot.com/2009/10/find-request-set-name-conc-manager.html' title='Find Request Set Name, Conc Manager given a request ID'/><author><name>Praveen</name><uri>http://www.blogger.com/profile/09645880422225153776</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-1102785860137074059.post-713408024040009725</id><published>2009-09-22T18:42:00.005+05:30</published><updated>2009-10-09T10:28:24.745+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='UNIX'/><category scheme='http://www.blogger.com/atom/ns#' term='pipe character'/><title type='text'>Print UNIX pipe character ("|") in Blogger</title><content type='html'>&lt;div align="justify"&gt;In order to get the UNIX pipe character ("&amp;#124;") printed in blogger, do the following:&lt;br /&gt;&lt;br /&gt;Always use the "Edit Html" tab for posts containing the pipe character and NOT the Compose tab.&lt;br /&gt;&lt;br /&gt;The ASCII value for the pipe character is "&amp;amp; # 124 ;" (I am delibrately using whitespace in betwen the ASCII value. Please remove them before using).&lt;br /&gt;&lt;br /&gt;Thanks for &lt;a href="http://formatmysourcecode.blogspot.com/"&gt;Greg Houston's blog&lt;/a&gt; and &lt;a href="http://groups.google.com/group/blogger-help-publishing/browse_thread/thread/cbf5f2569a3b1aab/67aaac8cd1b8884b?lnk=gst&amp;amp;q&amp;amp;pli=1"&gt;this thread&lt;/a&gt; for pointing me in the right direction.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1102785860137074059-713408024040009725?l=bkpappsdba.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bkpappsdba.blogspot.com/feeds/713408024040009725/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1102785860137074059&amp;postID=713408024040009725' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/713408024040009725'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/713408024040009725'/><link rel='alternate' type='text/html' href='http://bkpappsdba.blogspot.com/2009/09/print-unix-pipe-character-in-blogger.html' title='Print UNIX pipe character (&quot;|&quot;) in Blogger'/><author><name>Praveen</name><uri>http://www.blogger.com/profile/09645880422225153776</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-1102785860137074059.post-472249815388597126</id><published>2009-09-08T14:25:00.016+05:30</published><updated>2009-09-22T18:42:34.021+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='R12'/><category scheme='http://www.blogger.com/atom/ns#' term='EBS Login URL'/><title type='text'>Get R12 Login URL from Command Prompt</title><content type='html'>&lt;div align="justify"&gt;A quick question before getting started with today's subject. How does one retrieve the url of an instance? Suppose you were asked to work (or login to the front end) on an instance of which you know only the server names, how do you find the login URL?&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;There are 2 methods (of course, there might be more but I've listed the ones that I use the most) to retrieve the login URL information:&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;1. Login to sqlplus as apps and query the table icx_parameters for the home_url.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;2. Better still and much faster than the above method would be to issue the below command. The output would be nothing but the value for the env variable FORMS60_MAPPING.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;$ env &amp;#124; grep http&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;I prefer the 2nd method over the 1st.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;Anyway, to my surprise and dismay, I found out that R12 does NOT set the above env variable. So, the quick recourse to getting the login URL is ruled out or is it?&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;I have written a shell script to get/set the env variable. You can access it &lt;a href="http://docs.google.com/Doc?docid=0AYZ45FbJBM9aZGo3ZnBwd185Z3pibTd0Zm0&amp;amp;hl=en"&gt;here&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;Let me know if you notice any errors or have any comments/suggestions. &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1102785860137074059-472249815388597126?l=bkpappsdba.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://docs.google.com/Doc?docid=0AYZ45FbJBM9aZGo3ZnBwd185Z3pibTd0Zm0&amp;hl=en' title='Get R12 Login URL from Command Prompt'/><link rel='replies' type='application/atom+xml' href='http://bkpappsdba.blogspot.com/feeds/472249815388597126/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1102785860137074059&amp;postID=472249815388597126' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/472249815388597126'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/472249815388597126'/><link rel='alternate' type='text/html' href='http://bkpappsdba.blogspot.com/2009/09/get-login-url-in-r12-from-command.html' title='Get R12 Login URL from Command Prompt'/><author><name>Praveen</name><uri>http://www.blogger.com/profile/09645880422225153776</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-1102785860137074059.post-6100930878418557576</id><published>2009-09-02T12:20:00.011+05:30</published><updated>2009-09-22T18:40:53.030+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='UNIX'/><category scheme='http://www.blogger.com/atom/ns#' term='number of CPUs'/><title type='text'>Find the number of CPUs and RAM size in UNIX</title><content type='html'>&lt;div align="justify"&gt;&lt;span style="font-size:100%;"&gt;I have tried to collate commands to find the number of CPUs and total physical memory (RAM) size in all common flavours of UNIX in one blog entry. This certainly is not an exhaustive list and will be modified as and when I find new commands. You are also more than welcome to add to this list.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="font-size:180%;"&gt;Number of CPUs&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size:100%;"&gt;&lt;/p&gt;&lt;div align="justify"&gt;&lt;br /&gt;&lt;/div&gt;&lt;/span&gt;&lt;p&gt;&lt;strong&gt;&lt;u&gt;&lt;span style="font-size:130%;"&gt;&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;u&gt;&lt;span style="font-size:130%;"&gt;Sun SPARC Solaris&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;1. prtconf &amp;#124; grep cpu &amp;#124; wc -l&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;2. psrinfo &amp;#124; wc -l&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;3. psrinfo -v &amp;#124; grep "Status of" &amp;#124; wc -l&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;4. psrinfo -vp&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;5. prtdiag &amp;#124; grep "on-line" &amp;#124; wc -l&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;6. mpstat &amp;#124; grep -vi cpu &amp;#124; wc -l&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;u&gt;&lt;span style="font-size:130%;"&gt;Linux&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;1. grep "processor"/proc/cpuinfo &amp;#124; wc -l&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;u&gt;&lt;span style="font-size:130%;"&gt;HP-UX&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;1. ioscan -kfnC processor &amp;#124; grep "processor" &amp;#124; wc -l&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;2. sar -M 1 &amp;#124; awk 'END {print NR-5}'&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;3. sar -Mu 1 1 &amp;#124; awk 'END {print NR-5}'&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;4. ioscan -kf &amp;#124; grep -c processor&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;5. cat /var/adm/syslog/syslog.log &amp;#124; grep processor &amp;#124; grep "vmunix" &amp;#124; wc -l&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;u&gt;&lt;span style="font-size:130%;"&gt;AIX&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;1. lscfg -vp &amp;#124; grep proc &amp;#124; wc -l&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;2. lparstat -i &amp;#124; grep "Online Virtual CPUs" &amp;#124; cut -d ':' -f2&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;3. lsdev -C &amp;#124; grep Process &amp;#124; wc -l&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;4. lsdev -Ccprocessor &amp;#124; grep -ci available&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size:180%;"&gt;&lt;strong&gt;Total Physical Memory (RAM) Size&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;strong&gt;&lt;u&gt;&lt;span style="font-size:130%;"&gt;Solaris&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;strong&gt;1. prtdiag &amp;#124; grep "Memory size" &amp;#124; cut -d ':' -f2&lt;br /&gt;&lt;br /&gt;2. prtconf &amp;#124; grep "Memory size" &amp;#124; cut -d ':' -f2&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Linux&lt;br /&gt;&lt;br /&gt;1. echo "$(free -mt &amp;#124; grep "Mem:" &amp;#124; awk '{print $2}' &amp;#124; tr -d [:space:]) MB"&lt;br /&gt;&lt;br /&gt;or&lt;br /&gt;&lt;br /&gt;free -mt &amp;#124; grep "Mem:" &amp;#124; awk '{print $2}' &amp;#124; tr -d [:space:];echo " MB"&lt;br /&gt;&lt;br /&gt;2. grep MemTotal /proc/meminfo &amp;#124; cut -d ':' -f2&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;HP-UX&lt;br /&gt;&lt;br /&gt;1. echo "selclass qualifier memory;info;wait;infolog" &amp;#124; /usr/sbin/cstm &amp;#124; grep "Total Configured Memory" &amp;#124; cut -d ':' -f2&lt;br /&gt;&lt;br /&gt;2. echo "$(grep Physical /var/adm/syslog/syslog.log &amp;#124; awk '{print $7}') KB"&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;AIX&lt;br /&gt;&lt;br /&gt;1. echo "$(lsattr -El mem0 &amp;#124; grep "Total" &amp;#124; awk '{print $2}') MB"&lt;br /&gt;&lt;br /&gt;2. lsattr -El mem0 &amp;#124; grep "Total" &amp;#124; awk '{print $2}'; echo " MB"&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/strong&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1102785860137074059-6100930878418557576?l=bkpappsdba.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bkpappsdba.blogspot.com/feeds/6100930878418557576/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1102785860137074059&amp;postID=6100930878418557576' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/6100930878418557576'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/6100930878418557576'/><link rel='alternate' type='text/html' href='http://bkpappsdba.blogspot.com/2009/09/find-number-of-cpus-in-unix.html' title='Find the number of CPUs and RAM size in UNIX'/><author><name>Praveen</name><uri>http://www.blogger.com/profile/09645880422225153776</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-1102785860137074059.post-7362729921987762028</id><published>2009-08-28T16:57:00.008+05:30</published><updated>2009-10-30T11:53:31.390+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Discoverer 10g'/><category scheme='http://www.blogger.com/atom/ns#' term='Discoverer Plus'/><category scheme='http://www.blogger.com/atom/ns#' term='Choose Connection'/><title type='text'>Choose Connection Not Visible in Discoverer 10g after install</title><content type='html'>&lt;p align="justify"&gt;&lt;strong&gt;&lt;u&gt;Issue&lt;br /&gt;&lt;br /&gt;&lt;/u&gt;&lt;/strong&gt;“Choose Connection” is NOT seen in Discoverer Plus and Discoverer Viewer screen after installation.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;img id="BLOGGER_PHOTO_ID_5374975558544366562" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 400px; CURSOR: hand; HEIGHT: 79px; TEXT-ALIGN: center" alt="" src="http://1.bp.blogspot.com/_K-3r97qs4h4/Spe_yutxm-I/AAAAAAAABAs/KMGiIeXH7SA/s400/Choose_Connection.jpg" border="0" /&gt;&lt;/p&gt;&lt;br /&gt;&lt;p align="justify"&gt;&lt;strong&gt;&lt;u&gt;Symptom&lt;br /&gt;&lt;br /&gt;&lt;/u&gt;&lt;/strong&gt;Installed Discoverer 10g as an OracleBI standalone installation (i.e., without associating with an OracleAS infrastructure).&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Associated the standalone Discoverer to Oracle Apps Database.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Users are unable to see Choose Connection in the Discoverer Plus and Viewer login screen.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;u&gt;Cause&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Discoverer has not been associated with an infrastructure. This happens when Discoverer 10g is installed as a Standalone without associating it with an OracleAS infrastructure.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Quoting from the documentation:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;“An OracleBI standalone installation is not associated with an OracleAS Infrastructure, and therefore has a limited number of components available.&lt;br /&gt;&lt;br /&gt;..&lt;br /&gt;&lt;br /&gt;..&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;If Discoverer is not associated with an OracleAS Infrastructure, Discoverer connections are not available to end users. For more information about associating Discoverer with an Oracle Infrastructure install, see &lt;a href="http://download.oracle.com/docs/cd/B14099_19/bi.1012/b13918/assoc.htm#CECBCGJE"&gt;Chapter 2, "About Oracle Business Intelligence installations and OracleAS Infrastructures"&lt;/a&gt;.”&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;u&gt;Resolution&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;2.2 How to associate an OracleBI installation with an OracleAS Infrastructure&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;If you install an OracleBI standalone installation, you might want to associate it with an Oracle Application Server Infrastructure in order to deploy Discoverer with other OracleAS components (e.g. Oracle Portal, Oracle Single Sign-On).&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;You can associate OracleBI Discoverer with either an OracleAS 9.0.4 Infrastructure or an OracleAS 10.1.2 Infrastructure.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Note:&lt;/strong&gt; If you want to associate an OracleBI standalone installation with a 9.0.4 Infrastructure, you must also upgrade the Discoverer part of the MR to deploy Discoverer Portlet Provider (for more information, see &lt;a href="http://download.oracle.com/docs/cd/B14099_19/bi.1012/b13918/assoc.htm#BABJHGBJ#BABJHGBJ"&gt;Section 2.3, "How to upgrade a 9.0.4 metadata repository to work with Discoverer Portlet Provider Version 10.1.2 and Oracle Portal 10.1.2"&lt;/a&gt;).&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;To associate an OracleBI standalone installation with an OracleAS Infrastructure:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Start a Web browser and enter the Application Server Control URL containing the fully qualified host name and domain of the OracleBI installation that you want to configure (for more information, see &lt;a href="http://download.oracle.com/docs/cd/B14099_19/bi.1012/b13918/maint.htm#i1025807"&gt;Section 5.1.2, "How to start Application Server Control and display the System Components page"&lt;/a&gt;).&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p align="justify"&gt;&lt;br /&gt;Display the Infrastructure tab.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p align="justify"&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p align="justify"&gt;&lt;img id="BLOGGER_PHOTO_ID_5374976515375144226" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 400px; CURSOR: hand; HEIGHT: 321px; TEXT-ALIGN: center" alt="" src="http://3.bp.blogspot.com/_K-3r97qs4h4/SpfAqbMAnSI/AAAAAAAABA0/PsaXCAt4UPw/s400/Choose_Connection1.jpg" border="0" /&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p align="justify"&gt;In the Identity Management area, do one of the following:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;to associate the OracleBI installation, click Configure to display the Configure Identity Management: Internet Directory page&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;to reassociate the OracleBI installation, click Change to display the Change Identity Management: Internet Directory page&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p align="justify"&gt;&lt;/p&gt;&lt;p align="center"&gt;&lt;a href="http://2.bp.blogspot.com/_K-3r97qs4h4/SpfBKMrQN7I/AAAAAAAABA8/UKrMnUrbq50/s1600-h/Choose_Connection2.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5374977061235472306" style="WIDTH: 400px; CURSOR: hand; HEIGHT: 320px" alt="" src="http://2.bp.blogspot.com/_K-3r97qs4h4/SpfBKMrQN7I/AAAAAAAABA8/UKrMnUrbq50/s400/Choose_Connection2.jpg" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p align="justify"&gt;Use the Host field and the Port field to enter the host name (e.g. infra.mycompany.com) and port number (e.g. 389) of the Oracle Internet Directory component on the OracleAS Infrastructure machine.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Hint:&lt;/strong&gt; To find out the host name and port number values to specify, start Oracle Application Server Control on the OracleAS Infrastructure machine, display the Infrastructure tab, and note down the values of the Internet Directory Host field and the Internet Directory Port field.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Click Next to display the Configure Identity Management: Login page.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Use the User Name field and the Password fields to enter the administration user name and password for the Oracle Internet Directory component on the Infrastructure machine.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Hint:&lt;/strong&gt; Prefix the user name value with cn= (e.g. cn=orcladmin).&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Click Next to display the Configure Identity Management: Validation page.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Click Finish.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Having configured Identity Management, you now configure the Metadata Repository.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;In the Metadata Repository area, click Configure to display the Configure Repository: Internet Directory page.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Follow the steps in the Configure/Change Repository: Internet Directory wizard, then click Finish.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;The OracleBI standalone installation is now associated with an OracleAS Infrastructure. You can now deploy Discoverer with other OracleAS components (i.e. Oracle Portal, Oracle Single Sign-On) and use Discoverer connections and Discoverer Portlet Provider.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;u&gt;Reference&lt;br /&gt;&lt;br /&gt;&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;1. http://download.oracle.com/docs/cd/B14099_19/bi.1012/b13918/assoc.htm#CJAJGEJG&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;p align="justify"&gt;2. 390222.1 - How To Connect to Discoverer Plus/Viewer When "Create Connection" Button Is Not Displayed in Connection Page &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1102785860137074059-7362729921987762028?l=bkpappsdba.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bkpappsdba.blogspot.com/feeds/7362729921987762028/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1102785860137074059&amp;postID=7362729921987762028' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/7362729921987762028'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/7362729921987762028'/><link rel='alternate' type='text/html' href='http://bkpappsdba.blogspot.com/2009/08/choose-connection-not-visible-in.html' title='Choose Connection Not Visible in Discoverer 10g after install'/><author><name>Praveen</name><uri>http://www.blogger.com/profile/09645880422225153776</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://1.bp.blogspot.com/_K-3r97qs4h4/Spe_yutxm-I/AAAAAAAABAs/KMGiIeXH7SA/s72-c/Choose_Connection.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1102785860137074059.post-5778331420932884971</id><published>2009-08-18T12:43:00.008+05:30</published><updated>2009-08-28T17:13:11.817+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='rehost'/><category scheme='http://www.blogger.com/atom/ns#' term='Discoverer 10g'/><category scheme='http://www.blogger.com/atom/ns#' term='Discoverer Plus'/><title type='text'>Oracle Discoverer 10g rehost a.k.a moving Discoverer 10g from one server to another</title><content type='html'>&lt;div align="justify"&gt;Long time no blog! The reason being that I was busy performing this Discoverer 10g rehost. Without wasting much of your time, let me get into the details.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;strong&gt;&lt;u&gt;&lt;span style="font-size:130%;"&gt;Background&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;Recently, we rehosted (i.e., moved) our production instance to a new set of production servers. Discoverer 10g is also a part of our prodcution implementation. Discoverer resided on the old production servers.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;strong&gt;&lt;u&gt;&lt;span style="font-size:130%;"&gt;Requirement&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;Move Discoverer 10g from the old production servers to the new ones (a.k.a rehost!).&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;strong&gt;&lt;u&gt;&lt;span style="font-size:130%;"&gt;Methodology&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;After scrutinizing all the available Metalink docs, I found out that no Metalink doc existed for my requirement! I had to chart my own course here (not that no one had done this before but lack of documentation - both on the web and Metalink, was a bit of an impediment).&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;After burrowing through all the available documentation, I surmised that I had two methods to achieve my goal:&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;1. Reinstallation of Discoverer 10g (including OID)&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;2. Cloning of Discoverer 10g ORACLE_HOME.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;Steps involved in both the methods is given below:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;strong&gt;Reinstallation of Discoverer 10g&lt;br /&gt;&lt;br /&gt;&lt;/strong&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;1. Install OracleAS Identity Management Infrastructure 10g (10.1.4.0.1) [infra tier].&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;2. Upgrade OracleAS Identity Management Infrastructure 10g to Oracle Identity Management 10g Release 3 Patch Set 1 (10.1.4.2).&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;3. Install Oracle Application Server 10g Release 2 (10.1.2.0.2) type Business Intelligence and Forms (mid tier).&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;4. Copy Database Connection file from $FND_TOP/secure/cpepdb1_cpep.dbc on the admin node to DISCOVERER $ORACLE_HOME/discoverer/secure on the new Discoverer server.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;blockquote&gt;&lt;strong&gt;&lt;u&gt;Notes&lt;/u&gt;:&lt;/strong&gt;&lt;br /&gt;a. One can also copy the dbc file from the old Discoverer ORALCE_HOME&lt;br /&gt;on the old server to the new Discoverer ORACLE_HOME on the new&lt;br /&gt;server.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;b. Create the directory&lt;br /&gt;$ORACLE_HOME/discoverer/secure if it does not exist.&lt;br /&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;div align="justify"&gt;&lt;br /&gt;5. Update tnsnames.ora file - Copy the file DISCOVERER &lt;/div&gt;&lt;div align="justify"&gt;$ORACLE_HOME/network/admin/tnsnames.ora on the old server to Discoverer &lt;/div&gt;&lt;div align="justify"&gt;$ORACLE_HOME/network/admin/tnsnames.ora on the new server.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;6. Specify Java Virtual Machine for Discoverer Plus - Check what is selected as the default (should be Sun Java 1.4) in Enterprise Manager on the Oracle Business Intelligence 10g Release 2 ORACLE_HOME using ias_admin login.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;7. Modify below Applications profile options related to Discoverer in Oracle Applications&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;ICX_DISCOVERER_LAUNCHER &amp;amp; ICX_DISCOVERER_VIEWER_LAUNCHER &lt;/div&gt;&lt;div align="justify"&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;br /&gt;&lt;strong&gt;Cloning of Discoverer 10g ORACLE_HOME&lt;br /&gt;&lt;br /&gt;&lt;/strong&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;1. Install OracleAS Identity Management Infrastructure 10g (10.1.4.0.1) [infra tier] on suomp02l.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;2. Upgrade OracleAS Identity Management Infrastructure 10g to Oracle Identity Management 10g Release 3 Patch Set 1 (10.1.4.2) on suomp02l.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;3. Prepare the source middle tier (Discoverer 10gAS on suomp971) for cloning.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;a. For cloning, Perl 5.6.1 or higher must be installed on your system.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;$ export &lt;/div&gt;&lt;div align="justify"&gt;PERL5LIB=$ORACLE_HOME/perl/lib/5.6.1:$ORACLE_HOME/perl/lib/site_perl/5.6.1:$PERL5LIB&lt;/div&gt;&lt;div align="justify"&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;b. Run the script prepare_clone.pl. This script prepares the source to be cloned.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;$ cd $ORACLE_HOME/clone/bin&lt;br /&gt;&lt;/div&gt;&lt;div align="left"&gt;$ perl prepare_clone.pl ORACLE_HOME=$ORACLE_HOME -oid_password &amp;lt;OIDPassword&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;4. Archive and compress the source Oracle home, using your preferred tool for archiving (using tar and gzip).&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;5. Copy the compressed Oracle home from the source machine to the destination machine.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;6. Extract the compressed Oracle home into a directory, which will become the new Oracle home at the destination location.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;7. Run the clone.pl script. You must have write permission to the directory containing the Oracle inventory file.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;$ cd $ORACLE_HOME/clone/bin&lt;br /&gt;&lt;/div&gt;&lt;div align="left"&gt;$ perl clone.pl ORACLE_HOME=&amp;lt;NEW_ORACLE_HOME_LOCATION&amp;gt; ORACLE_HOME_NAME=OH_1012_BI -instance &amp;lt;new_instance_name&amp;gt; -ias_admin_old_pwd &amp;lt;old_ias_admin_password&amp;gt; -ias_admin_new_pwd &amp;lt;new_ias_admin_password&amp;gt; -oid_password &amp;lt;oid_password&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;8. Modify below Applications profile options related to Discoverer in Oracle Applications&lt;br /&gt;&lt;br /&gt;ICX_DISCOVERER_LAUNCHER &amp;amp; ICX_DISCOVERER_VIEWER_LAUNCHER&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;/div&gt;&lt;div align="justify"&gt;The method that I followed was reinstallation primarily because cloning a 10g AS ORACLE_HOME is renowned to be riddled with errors and pitfalls! The reinstallation method worked like a charm and I was able to move the Discoverer 10g without any hitches and significantly, without any downtime too (!) thus avoiding weekend work!!!&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;strong&gt;&lt;u&gt;&lt;span style="font-size:130%;"&gt;References&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;/div&gt;&lt;div align="left"&gt;1. &lt;a href="http://download.oracle.com/docs/cd/B14099_19/core.1012/b13995/cloning.htm"&gt;Cloning a 10g AS ORACLE_HOME&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;/div&gt;&lt;div align="left"&gt;2. Metalink Note ID: 313418.1 - Using Discoverer 10.1.2 with Oracle E-Business Suite 11i&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1102785860137074059-5778331420932884971?l=bkpappsdba.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bkpappsdba.blogspot.com/feeds/5778331420932884971/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1102785860137074059&amp;postID=5778331420932884971' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/5778331420932884971'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/5778331420932884971'/><link rel='alternate' type='text/html' href='http://bkpappsdba.blogspot.com/2009/08/oracle-discoverer-10g-rehost-aka-moving.html' title='Oracle Discoverer 10g rehost a.k.a moving Discoverer 10g from one server to another'/><author><name>Praveen</name><uri>http://www.blogger.com/profile/09645880422225153776</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-1102785860137074059.post-7183681075297312924</id><published>2009-07-28T12:16:00.009+05:30</published><updated>2009-07-28T16:08:23.595+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='extract controlfile'/><category scheme='http://www.blogger.com/atom/ns#' term='RMAN Backup'/><title type='text'>Extract Controlfile from a backupset using RMAN</title><content type='html'>&lt;div align="justify"&gt;In my previous post, I had talked about &lt;a href="http://bkpappsdba.blogspot.com/2009/07/extract-controlfile-datafiles.html"&gt;extracting controlfiles, datafiles and archivelogs from RMAN backupsets&lt;/a&gt; using the package dbms_backup_restore.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div align="justify"&gt;In this post, I would like to throw light upon using RMAN as an alternate method that could be employed to extract controlfiles from RMAN backupsets. This method uses the RMAN command "restore controlfile from '&amp;lt;FULL_PATH_TO_CONTROLFILE_BACKUP&amp;gt;'".&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div align="justify"&gt;The RMAN method can be used in 3 scenarios. So, make sure that at least any one of the backups is indeed available. Else, you are DOOMED!&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;I. the controlfile autobackup is turned on in RMAN. In this case the file format would be "c&amp;lt;DBID&amp;gt;-&amp;lt;DATE&amp;gt;-&amp;lt;COUNT&amp;gt;".&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;It is turned on using the command:&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:trebuchet ms;color:#660000;"&gt;&lt;em&gt;configure controlfile autobackup on;&lt;br /&gt;&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:trebuchet ms;color:#660000;"&gt;&lt;em&gt;configure controlfile autobackup format for device type disk to '/opt/apps/vision/backup/%F';&lt;br /&gt;&lt;br /&gt;&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;II. the controlfile snapshot backup is configured in RMAN.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;It is turned on using the command:&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;span style="font-family:trebuchet ms;color:#660000;"&gt;&lt;em&gt;configure snapshot controlfile name to '&amp;lt;FULL_PATH_TO_SNAP_CTRL_FILE&amp;gt;';&lt;br /&gt;&lt;br /&gt;&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;III. the controlfile is included in the RMAN backupset i.e., using the clause "include current controlfile" in the backup database command.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;Scenario I - Restoring controlfile using RMAN and controlfile autobackup.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;a. Startup the database in nomount state.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;b. Run RMAN commands as below:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;color:#660000;"&gt;&lt;em&gt;$ rman target /&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Recovery Manager: Release 9.2.0.6.0 - 64bit Production&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Copyright (c) 1995, 2002, Oracle Corporation. All rights reserved.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;connected to target database: BKP (not mounted)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;RMAN&amp;gt; restore controlfile from '/opt/apps/vision/backup/c-261506738-20090722-02';&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:trebuchet ms;color:#660000;"&gt;&lt;em&gt;&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:trebuchet ms;color:#660000;"&gt;&lt;em&gt;Starting restore at 23-JUL-09&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:trebuchet ms;color:#660000;"&gt;&lt;em&gt;&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:trebuchet ms;color:#660000;"&gt;&lt;em&gt;using target database controlfile instead of recovery catalog&lt;br /&gt;&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:trebuchet ms;color:#660000;"&gt;&lt;em&gt;allocated channel: ORA_DISK_1&lt;br /&gt;&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:trebuchet ms;color:#660000;"&gt;&lt;em&gt;channel ORA_DISK_1: sid=16 devtype=DISK&lt;br /&gt;&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:trebuchet ms;color:#660000;"&gt;&lt;em&gt;channel ORA_DISK_1: restoring controlfile&lt;br /&gt;&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:trebuchet ms;color:#660000;"&gt;&lt;em&gt;channel ORA_DISK_1: restore complete&lt;br /&gt;&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:trebuchet ms;color:#660000;"&gt;&lt;em&gt;replicating controlfile&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:trebuchet ms;color:#660000;"&gt;&lt;em&gt;input filename=/opt/apps/vision/bkpdata/bkpdatacontrol01.ctl&lt;br /&gt;&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:trebuchet ms;color:#660000;"&gt;&lt;em&gt;output filename=/opt/apps/vision/bkpdata/bkpdatacontrol02.ctl&lt;br /&gt;&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:trebuchet ms;color:#660000;"&gt;&lt;em&gt;output filename=/opt/apps/vision/bkpdata/bkpdatacontrol03.ctl&lt;br /&gt;&lt;br /&gt;&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:trebuchet ms;color:#660000;"&gt;&lt;em&gt;Finished restore at 23-JUL-09&lt;br /&gt;&lt;br /&gt;&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:trebuchet ms;color:#660000;"&gt;&lt;em&gt;RMAN&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;Scenario II - Restoring controlfile using RMAN and controlfile snapshot.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;a. Startup the database in nomount state.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="left"&gt;b. Run RMAN commands as below:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;color:#660000;"&gt;&lt;em&gt;$ rman target /&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Recovery Manager: Release 9.2.0.6.0 - 64bit Production&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Copyright (c) 1995, 2002, Oracle Corporation. All rights reserved.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;connected to target database: BKP (not mounted)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;RMAN&amp;gt; restore controlfile from '/opt/apps/vision/backup/snap_BKP_controlfile.ctl';&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Starting restore at 23-JUL-09&lt;br /&gt;&lt;br /&gt;&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:trebuchet ms;color:#660000;"&gt;&lt;em&gt;&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:trebuchet ms;color:#660000;"&gt;&lt;em&gt;using target database controlfile instead of recovery catalog&lt;br /&gt;&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:trebuchet ms;color:#660000;"&gt;&lt;em&gt;allocated channel: ORA_DISK_1&lt;br /&gt;&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:trebuchet ms;color:#660000;"&gt;&lt;em&gt;channel ORA_DISK_1: sid=16 devtype=DISK&lt;br /&gt;&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:trebuchet ms;color:#660000;"&gt;&lt;em&gt;channel ORA_DISK_1: copied controlfile copy&lt;br /&gt;&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:trebuchet ms;color:#660000;"&gt;&lt;em&gt;replicating controlfile&lt;br /&gt;&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:trebuchet ms;color:#660000;"&gt;&lt;em&gt;input filename=/opt/apps/vision/bkpdata/bkpdatacontrol01.ctl&lt;br /&gt;&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:trebuchet ms;color:#660000;"&gt;&lt;em&gt;output filename=/opt/apps/vision/bkpdata/bkpdatacontrol02.ctl&lt;br /&gt;&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:trebuchet ms;color:#660000;"&gt;&lt;em&gt;output filename=/opt/apps/vision/bkpdata/bkpdatacontrol03.ctl&lt;br /&gt;&lt;br /&gt;&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:trebuchet ms;color:#660000;"&gt;&lt;em&gt;Finished restore at 23-JUL-09&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;RMAN&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;Scenario III - Restoring controlfile using RMAN and backupsets (provided backup is taken using the "include current controlfile" clause).&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;blockquote&gt;&lt;p align="justify"&gt;&lt;strong&gt;&lt;u&gt;Note&lt;/u&gt;:&lt;/strong&gt; The RMAN backup log would record the backup piece name which includes the controlfile. If you are not sure which backup pice contains the controlfile, then try this on all the backup pieces till the controlfile is restored.&lt;/p&gt;&lt;/blockquote&gt;&lt;div align="justify"&gt;&lt;br /&gt;a. Startup the database in nomount state.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="left"&gt;b. Run RMAN commands as below:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;color:#660000;"&gt;&lt;em&gt;$ rman target /&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Recovery Manager: Release 9.2.0.6.0 - 64bit Production&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Copyright (c) 1995, 2002, Oracle Corporation. All rights reserved.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;connected to target database: BKP (not mounted)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;RMAN&amp;gt; restore controlfile from '/opt/apps/vision/backup/BKP_LVL0_20090722_09kkof7i_s9_p1';&lt;br /&gt;&lt;br /&gt;&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:trebuchet ms;color:#660000;"&gt;&lt;em&gt;Starting restore at 23-JUL-09&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;using target database controlfile instead of recovery catalog&lt;br /&gt;&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:trebuchet ms;color:#660000;"&gt;&lt;em&gt;allocated channel: ORA_DISK_1&lt;br /&gt;&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:trebuchet ms;color:#660000;"&gt;&lt;em&gt;channel ORA_DISK_1: sid=16 devtype=DISK&lt;br /&gt;&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:trebuchet ms;color:#660000;"&gt;&lt;em&gt;channel ORA_DISK_1: restoring controlfile&lt;br /&gt;&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:trebuchet ms;color:#660000;"&gt;&lt;em&gt;channel ORA_DISK_1: restore complete&lt;br /&gt;&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:trebuchet ms;color:#660000;"&gt;&lt;em&gt;replicating controlfile&lt;br /&gt;&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:trebuchet ms;color:#660000;"&gt;&lt;em&gt;input filename=/opt/apps/vision/bkpdata/bkpdatacontrol01.ctl&lt;br /&gt;&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:trebuchet ms;color:#660000;"&gt;&lt;em&gt;output filename=/opt/apps/vision/bkpdata/bkpdatacontrol02.ctl&lt;br /&gt;&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:trebuchet ms;color:#660000;"&gt;&lt;em&gt;output filename=/opt/apps/vision/bkpdata/bkpdatacontrol03.ctl&lt;br /&gt;&lt;br /&gt;&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:trebuchet ms;color:#660000;"&gt;&lt;em&gt;Finished restore at 23-JUL-09&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;RMAN&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;/em&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/1102785860137074059-7183681075297312924?l=bkpappsdba.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bkpappsdba.blogspot.com/feeds/7183681075297312924/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1102785860137074059&amp;postID=7183681075297312924' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/7183681075297312924'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/7183681075297312924'/><link rel='alternate' type='text/html' href='http://bkpappsdba.blogspot.com/2009/07/extract-controlfile-from-backupset.html' title='Extract Controlfile from a backupset using RMAN'/><author><name>Praveen</name><uri>http://www.blogger.com/profile/09645880422225153776</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-1102785860137074059.post-1970248180636551933</id><published>2009-07-27T16:48:00.009+05:30</published><updated>2009-07-27T17:20:52.394+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='extract datafiles'/><category scheme='http://www.blogger.com/atom/ns#' term='extract archivelogs'/><category scheme='http://www.blogger.com/atom/ns#' term='extract controlfile'/><category scheme='http://www.blogger.com/atom/ns#' term='RMAN Backup'/><category scheme='http://www.blogger.com/atom/ns#' term='DBMS_BACKUP_RESTORE'/><title type='text'>Extract Controlfile, Datafiles &amp; Archivelogs from RMAN Backupsets</title><content type='html'>&lt;div align="justify"&gt;The other day, one of my colleagues posed me this interesting and thought-provoking question/scenario: "Suppose, you were to lose both your production and your RMAN catalog databases irrevertably. You do have a full/incremental RMAN backup, however. How are you going to recover?"&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;How indeed? I scratched my head and shone a torch upon the dark recesses of my memory to come up with an answer. The light (of the torch) did indeed reveal something - that is that a note existed in Metalink which list the method that could be used to delve into a RMAN backup set to extract the controlfile, the datafiles and also the archivelogs and Voilà, I hit the nail right on the head.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;I did some more digging and found a bunch of "Notes" in Metalink that pointed me to the eventual answer to the above question. The Notes that I am referring to are listed below. A summary of the procedure to be followed in such scenarios is also provided. All the notes mentioned use the package &lt;a href="http://www.psoug.org/reference/dbms_backup_restore.html"&gt;dbms_backup_restore&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;strong&gt;&lt;u&gt;&lt;/u&gt;&lt;/strong&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;strong&gt;&lt;u&gt;&lt;/u&gt;&lt;/strong&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;strong&gt;&lt;u&gt;Scenario&lt;/u&gt;:&lt;br /&gt;&lt;br /&gt;&lt;/strong&gt;&lt;br /&gt;A successful production backup (RMAN) is available (cold or hot - if hot, then the archivelogs are also available) while the production and the RMAN catalog databases are irrevertably lost.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;br /&gt;&lt;strong&gt;&lt;u&gt;Assumptions&lt;/u&gt;:&lt;br /&gt;&lt;br /&gt;&lt;/strong&gt;&lt;br /&gt;1. RMAN is being used to backup the database.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;2. The RMAN backup is a "good" backup and is restore and recovery ready.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;3. The list of datafiles (file name + full file path) and their datafile numbers is available (this can be obtained from the RMAN backup log file).&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;strong&gt;&lt;u&gt;Solution Summary (from Note ID: 388057.1)&lt;/u&gt;:&lt;br /&gt;&lt;br /&gt;&lt;/strong&gt;&lt;br /&gt;1. Start the target instance (nomount).&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;2. Restore the latest controlfile, ideally from the same backupset as the last incremental to be restored (Note 388052.1 : restore controlfile using PLSQL).&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;3. Make further copies if necessary as per the target database init.ora (pfile).&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;4. Mount the target instance (alter database mount).&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;strong&gt;&lt;u&gt;NOTE&lt;/u&gt;:&lt;/strong&gt; (RMAN may be able to be used to restore / recover the database at this point if the controlfile restored knows about the backup required to be restored and recovered).&lt;/blockquote&gt;&lt;br /&gt;5. Restore the datafiles from the level 0 backupset (Note 388053.1 : restore datafiles using PLSQL).&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;6. Restore (apply) the datafiles from the incremental backupsets (Note 388054.1 : restore incremental backups using PLSQL).&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;7. Restore the archivelogs from the archivelog backupset (Note 388055.1 : restore archivelogs using PLSQL).&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;8. Using traditional recovery techniques, recover the database using SQLPLUS. (until cancel using backup controlfile).&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;9. Open the database (resetlogs).&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;10. Rebuild the recovery catalog &amp;amp; re-register the target database.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;11. Make backups of the target database and recovery catalog database.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;strong&gt;&lt;u&gt;References&lt;/u&gt;:&lt;br /&gt;&lt;br /&gt;&lt;/strong&gt;&lt;br /&gt;1. 60545.1 - How to Extract Controlfiles, Datafiles, and Archived Logs from RMAN Backupsets&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;2. 388052.1 - How to Extract the Control file from an RMAN backupset using PL/SQL&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;3. 388053.1 - How to Extract Datafile(s) from an RMAN backupset Level-0(Full) backup using PL/SQL.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;4. 388054.1 - How to Extract Incremental Backups of Datafile(s) from an RMAN Incremental backupset Level-1 or higher using PL/SQL.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;5. 388055.1 - How to Extract archive logs from an RMAN using PL/SQL.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;6. 388057.1 - How to Restore an RMAN Backed up database using PL/SQL.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1102785860137074059-1970248180636551933?l=bkpappsdba.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bkpappsdba.blogspot.com/feeds/1970248180636551933/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1102785860137074059&amp;postID=1970248180636551933' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/1970248180636551933'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/1970248180636551933'/><link rel='alternate' type='text/html' href='http://bkpappsdba.blogspot.com/2009/07/extract-controlfile-datafiles.html' title='Extract Controlfile, Datafiles &amp; Archivelogs from RMAN Backupsets'/><author><name>Praveen</name><uri>http://www.blogger.com/profile/09645880422225153776</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-1102785860137074059.post-944979013464426829</id><published>2009-07-01T14:38:00.013+05:30</published><updated>2009-07-01T17:44:30.270+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='defaultsfile'/><category scheme='http://www.blogger.com/atom/ns#' term='adadmin'/><category scheme='http://www.blogger.com/atom/ns#' term='adpatch'/><category scheme='http://www.blogger.com/atom/ns#' term='reduce downtime'/><title type='text'>Creating defaultsfile - an easy guide!</title><content type='html'>&lt;div align="justify"&gt;This post is for the automation fanatics and enthusiasts. Of course, the others aren't excluded! The defaultsfile option that can be used with adutilities is a handy option to save time during patching or other maintenance activities.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;Though the defaultsfile gets a mention by almost everyone in the context of reducing downtime, the method of creating it is not, unfortunately. In this post, I'd like to share this using an example - compiling apps schema using adadmin.&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;blockquote&gt;Note: The full explanation of creating a defaultsfile is mentioned in Chapter 2 (Maintaining Your System) of the &lt;a href="http://download.oracle.com/docs/cd/B25516_18/current/acrobat/11iadproc.pdf"&gt;Oracle Applications Maintenance Procedures&lt;/a&gt;.&lt;/blockquote&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;1. Run adadmin command as below:&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="left"&gt;adadmin defaultsfile=$APPL_TOP/admin/$TWO_TASK/&amp;lt;DEFAULTS_FILE_NAME&amp;gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;br /&gt;&lt;br /&gt;e.g.:&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;span style="font-family:trebuchet ms;color:#660000;"&gt;adadmin defaultsfile=$APPL_TOP/admin/$TWO_TASK/adadmin_cmpl_apps_schema.txt&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;br /&gt;&lt;br /&gt;The above command searches for a file with name adadmin_cmpl_apps_schema.txt in $APPL_TOP/admin/$TWO_TASK directory. If it exists, it uses the values provided in that file. Else, it creates a new file and the contents of the new file would be the answers that one provides at the subsequent prompts of adadmin.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;strong&gt;&lt;u&gt;Note&lt;/u&gt;:&lt;/strong&gt; Not mentioning the correct path would error out as below. So, always ensure that you mention the full path to the default file.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;span style="font-family:trebuchet ms;color:#660000;"&gt;$ adadmin defaultsfile=adadmin_maint_on.txt&lt;/span&gt;&lt;/div&gt;&lt;div align="center"&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;color:#660000;"&gt;Copyright (c) 2002 Oracle Corporation &lt;/span&gt;&lt;/div&gt;&lt;div align="center"&gt;&lt;span style="font-family:trebuchet ms;color:#660000;"&gt;Redwood Shores, California, USA&lt;br /&gt;Oracle Applications AD Administration&lt;br /&gt;Version 11.5.0&lt;/span&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;color:#660000;"&gt;NOTE: You may not use this utility for custom development unless you have written permission from Oracle Corporation.&lt;/span&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;color:#660000;"&gt;You have not specified the correct path for defaults file.&lt;/span&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;color:#660000;"&gt;The expected location of the defaults file is &lt;/span&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;span style="font-family:trebuchet ms;color:#660000;"&gt;$APPL_TOP/admin/$TWO_TASK&lt;/span&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;span style="font-family:trebuchet ms;color:#660000;"&gt;and you must provide full access path to the file.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;/div&gt;&lt;div align="justify"&gt;2. Assuming that the defaultsfile does not exist, proceed as you normally would for compiling apps schema.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;3. Once the compilation is complete, exit out of adadmin and look for the file $APPL_TOP/admin/$TWO_TASK/adadmin_cmpl_apps_schema.txt.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;4. Voilà! You are done! You have the defaultsfile (including passwords) for compiling apps schema. Whenever you want to compile apps schema using adadmin NON-INTERACTIVELY, run the below command:&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;span style="font-family:trebuchet ms;color:#660000;"&gt;$ adadmin defaultsfile=$APPL_TOP/admin/$TWO_TASK/adadmin_cmpl_apps_schema.txt&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1102785860137074059-944979013464426829?l=bkpappsdba.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bkpappsdba.blogspot.com/feeds/944979013464426829/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1102785860137074059&amp;postID=944979013464426829' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/944979013464426829'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/944979013464426829'/><link rel='alternate' type='text/html' href='http://bkpappsdba.blogspot.com/2009/07/creating-defaultsfile-easy-guide.html' title='Creating defaultsfile - an easy guide!'/><author><name>Praveen</name><uri>http://www.blogger.com/profile/09645880422225153776</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-1102785860137074059.post-5862556229113017622</id><published>2009-06-30T18:27:00.008+05:30</published><updated>2009-07-01T17:46:48.641+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='PCP'/><category scheme='http://www.blogger.com/atom/ns#' term='non-RAC'/><title type='text'>PCP in Non-RAC Instances - Pitfalls -- Solutions?</title><content type='html'>&lt;div align="justify"&gt;&lt;/div&gt;&lt;p align="justify"&gt;&lt;span style="font-family:georgia;"&gt;In the last post,&lt;/span&gt; I had talked about the pitfalls in configuring PCP in non-RAC instances. I have figured out (is it really the solution? - only time will tell!) workarounds for the 2 pitfalls that I had listed.&lt;/p&gt;&lt;p align="justify"&gt;1. How would the VNC server failover when using PCP with non-RAC?&lt;/p&gt;&lt;p align="justify"&gt;Ans: The best bet would be to start the vnc server using the virtual hostname instead of the physical hostname (thanks to my colleague Mansoor who suggested it).&lt;/p&gt;&lt;p align="justify"&gt;Once the VNC is started using the virtual hostname, set the display variable to this value and run autoconfig so that the changes are reflected in the concurrent manager and the report server startup scripts.&lt;/p&gt;&lt;p align="justify"&gt;So, when the VIP (and hence, the virtual host) fails over, the VNC would still be running. This solution needs to be tested thoroughly though.&lt;/p&gt;&lt;p align="justify"&gt;Below is the command that I can use:&lt;/p&gt;&lt;p align="justify"&gt;&lt;span style="font-family:verdana;color:#660000;"&gt;$ vncserver -name &amp;lt;VIRTUAL_HOSTNAME&amp;gt;:&amp;lt;PORT_NUMBER&amp;gt;&lt;/span&gt;&lt;virtual_hostname&gt;&lt;port_number&gt;&lt;/p&gt;&lt;p align="justify"&gt;2. The web tier 806_ORACLE_HOME tnsnames.ora can be modified to include the FNDFS_&amp;lt;PHYSICAL_HOSTNAME&amp;gt;&lt;physical_hostname&gt; entry for both the primary server and the failover server. This way, there is no need to reconfigure it each and every time.&lt;/p&gt;&lt;p align="justify"&gt;Of course, this tnsnames.ora should be saved before running autoconfig else it would be overwritten.&lt;/p&gt;&lt;p align="justify"&gt;Signing off hoping that the above solutions work!&lt;/p&gt;&lt;p align="justify"&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1102785860137074059-5862556229113017622?l=bkpappsdba.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bkpappsdba.blogspot.com/feeds/5862556229113017622/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1102785860137074059&amp;postID=5862556229113017622' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/5862556229113017622'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/5862556229113017622'/><link rel='alternate' type='text/html' href='http://bkpappsdba.blogspot.com/2009/06/pcp-in-non-rac-instances-pitfalls_30.html' title='PCP in Non-RAC Instances - Pitfalls -- Solutions?'/><author><name>Praveen</name><uri>http://www.blogger.com/profile/09645880422225153776</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-1102785860137074059.post-856381949031006341</id><published>2009-06-03T15:00:00.003+05:30</published><updated>2009-06-03T15:03:50.012+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='PCP'/><category scheme='http://www.blogger.com/atom/ns#' term='non-RAC'/><title type='text'>PCP in non-RAC instances - Pitfalls</title><content type='html'>&lt;div align="justify"&gt;&lt;/div&gt;&lt;p align="justify"&gt;It was a wonderful surprise when I stumbled upon Metalink Note ID: &lt;a href="https://metalink2.oracle.com/metalink/plsql/ml2_documents.showDocument?p_database_id=NOT&amp;amp;p_id=743716.1"&gt;743716.1&lt;/a&gt;, which details steps for configuring PCP in non-RAC instances.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;This is very useful while using hardware or software clustering and not Oracle clustering (RAC).&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;We are using Veritas clustering (software clustering) for server failover. We were recently testing server failover and there are two things that I am unable to figure out as of now and which necessitates manual intervention rendering the whole failover mechanism manual:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;1. How would the VNC server failover when using PCP with non-RAC?&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Since, the hostname changes when the failover happens, the display variable would still be pointing to the failed server and not the failover server.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;The work around to the above problem is obviously to reset the display variable and run autoconfig, which would mean that the failover mechanism is no longer automatic.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;2. As soon as the failover happens, we need to make a manual entry in the Web Tier $TNS_ADMIN/tnsnames.ora to reflect the change in the concurrent processing server. This entry takes the form FNDFS_&amp;lt;FAILOVER_SERVER_NAME&amp;gt;. Thankfully, this does NOT necessitate downtime of the instance.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Do post your comments/suggestions/ideas on the above 2 problems.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1102785860137074059-856381949031006341?l=bkpappsdba.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='https://metalink2.oracle.com/metalink/plsql/ml2_documents.showDocument?p_database_id=NOT&amp;p_id=743716.1' title='PCP in non-RAC instances - Pitfalls'/><link rel='replies' type='application/atom+xml' href='http://bkpappsdba.blogspot.com/feeds/856381949031006341/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1102785860137074059&amp;postID=856381949031006341' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/856381949031006341'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/856381949031006341'/><link rel='alternate' type='text/html' href='http://bkpappsdba.blogspot.com/2009/06/pcp-in-non-rac-instances-pitfalls.html' title='PCP in non-RAC instances - Pitfalls'/><author><name>Praveen</name><uri>http://www.blogger.com/profile/09645880422225153776</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-1102785860137074059.post-1004304973921134516</id><published>2009-03-17T14:54:00.008+05:30</published><updated>2010-09-20T16:45:17.241+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='sql scripts'/><category scheme='http://www.blogger.com/atom/ns#' term='tablespace usage'/><title type='text'>Find Tablespace Usage Percent</title><content type='html'>&lt;div align="justify"&gt;&lt;span style="font-family:verdana;font-size:85%;"&gt;I have written a sql query which would output the usage percent of all the tablespaces in a given database. Although lots of tablespace usage queries are available, most of them, if not all, utilise dba_free_space view as the tool of measurement.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:verdana;font-size:85%;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:verdana;font-size:85%;"&gt;It is well known that this view is inadequate when datafiles have autoextend feature turned on. &lt;/span&gt;&lt;span style="font-family:Verdana;font-size:85%;"&gt;I have tried to address this inadequacy in my query.&lt;/span&gt;&lt;/div&gt;&lt;span style="font-family:verdana;font-size:85%;"&gt;&lt;/span&gt;&lt;p&gt;&lt;br /&gt;&lt;span style="font-family:verdana;font-size:85%;"&gt;&lt;strong&gt;&lt;u&gt;Caveat&lt;/u&gt;:&lt;/strong&gt; This query is not optimised for performance. Hence, you might observe slow performance.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Verdana;font-size:85%;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:georgia;color:#330000;"&gt;&lt;em&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;pre style="BORDER-RIGHT: #999999 1px dashed; PADDING-RIGHT: 5px; BORDER-TOP: #999999 1px dashed; PADDING-LEFT: 5px; FONT-SIZE: 12px; PADDING-BOTTOM: 5px; OVERFLOW: auto; BORDER-LEFT: #999999 1px dashed; WIDTH: 100%; COLOR: #000000; LINE-HEIGHT: 14px; PADDING-TOP: 5px; BORDER-BOTTOM: #999999 1px dashed; FONT-FAMILY: Andale Mono, Lucida Console, Monaco, fixed, monospace; BACKGROUND-COLOR: #eee"&gt;&lt;code&gt;set linesize 100&lt;br /&gt;set pagesize 10000&lt;br /&gt;set feedback off verify off&lt;br /&gt;col tablespace_name format a18&lt;br /&gt;col num_files format 999&lt;br /&gt;col total_space format 9999999.99&lt;br /&gt;col free_space format 9999999.99&lt;br /&gt;col used_percent format 999.99&lt;BR&gt;&lt;BR&gt;&lt;br /&gt;&lt;br /&gt;select /*+ parallel(tbs) */&lt;br /&gt;tbs.tablespace_name,&lt;br /&gt;count(tbs.file_id) num_files,&lt;br /&gt;round(sum(TOTAL_SPACE),2) TOTAL_SPACE_MB,&lt;br /&gt;sum(FREE_SPACE) FREE_SPACE_MB,&lt;br /&gt;round(((sum(tbs.USED_SPACE)/sum(tbs.TOTAL_SPACE)) * 100),2) USED_PERCENT&lt;br /&gt;from&lt;br /&gt;(select&lt;br /&gt;ddf.file_id file_id,&lt;br /&gt;ddf.file_name,&lt;br /&gt;ddf.tablespace_name tablespace_name,&lt;br /&gt;round(decode(ddf.autoextensible,'NO',ddf.bytes/1024/1024,'YES',ddf.maxbytes/1024/1024),2) "TOTAL_SPACE",&lt;br /&gt;ddf.autoextensible,&lt;br /&gt;case&lt;br /&gt;when ddf.maxbytes &amp;lt; ddf.bytes&lt;br /&gt;then round(((ddf.bytes/1024/1024) - nvl((dfs.free_space),0)),2)&lt;br /&gt;else round(ddf.bytes/1024/1024,2)&lt;br /&gt;END "USED_SPACE",&lt;br /&gt;case&lt;br /&gt;when ddf.maxbytes &amp;lt; ddf.bytes&lt;br /&gt;then nvl(dfs.free_space,0)&lt;br /&gt;else round(((ddf.maxbytes/1024/1024) - (ddf.bytes/1024/1024)),2)&lt;br /&gt;END "FREE_SPACE"&lt;br /&gt;/*, case autoextensible&lt;br /&gt;when 'NO' then round(((((ddf.bytes/1024/1024) - nvl(dfs.free_space,0)) / (ddf.bytes/1024/1024)) * 100),2)&lt;br /&gt;when 'YES' then round((((ddf.bytes/1024/1024) / (ddf.maxbytes/1024/1024)) * 100),2)&lt;br /&gt;END  '%' "USED_PERCENT" */&lt;br /&gt;from dba_data_files ddf,&lt;br /&gt;(select file_id, round(sum(bytes)/1024/1024,2) free_space from dba_free_space group by file_id) dfs&lt;br /&gt;where&lt;br /&gt;ddf.file_id = dfs.file_id(+)&lt;br /&gt;) tbs&lt;br /&gt;group by tbs.tablespace_name&lt;br /&gt;order by 5 desc;&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/em&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1102785860137074059-1004304973921134516?l=bkpappsdba.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bkpappsdba.blogspot.com/feeds/1004304973921134516/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1102785860137074059&amp;postID=1004304973921134516' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/1004304973921134516'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/1004304973921134516'/><link rel='alternate' type='text/html' href='http://bkpappsdba.blogspot.com/2009/03/find-tablespace-usage-percent.html' title='Find Tablespace Usage Percent'/><author><name>Praveen</name><uri>http://www.blogger.com/profile/09645880422225153776</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-1102785860137074059.post-6315587319748314265</id><published>2009-03-04T11:51:00.006+05:30</published><updated>2009-03-04T12:25:01.943+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='internet explorer'/><category scheme='http://www.blogger.com/atom/ns#' term='jinitiator'/><title type='text'>EXCEPTION_ACCESS_VIOLATION in Jinitiator and IE crashes</title><content type='html'>&lt;div align="justify"&gt;&lt;strong&gt;&lt;u&gt;The Environment&lt;br /&gt;&lt;/u&gt;&lt;/strong&gt;Apps Version : 11.5.10.2&lt;br /&gt;Jinitiator Version : 1.3.1.26&lt;br /&gt;Internet Explorer Version : 6&lt;/div&gt;&lt;div align="justify"&gt;&lt;br /&gt;&lt;u&gt;&lt;strong&gt;The Issue&lt;br /&gt;&lt;/strong&gt;&lt;/u&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;One of our end users was receiving a very strange error while using jinitiator. The Internet explorer window would crash (close by itself) after creating a file HS_ERR_PID&lt;####&gt;.log on the desktop, where #### stands for the Process ID of the f60webmx session.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;This error is intermittent and not easily reproducible. Moreover, the user would have to redo his/her work and hence this issue was turning out to be very vexing indeed.&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;br /&gt;The error log is as below:&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:trebuchet ms;color:#cc0000;"&gt;An unexpected exception has been detected in native code outside the VM.&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:trebuchet ms;color:#cc0000;"&gt;Unexpected Signal : &lt;strong&gt;EXCEPTION_ACCESS_VIOLATION&lt;/strong&gt; occurred at PC=0x6D043D1AFunction name=Java_sun_java2d_loops_DefaultComponent_IntIsomorphicCopy&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:trebuchet ms;color:#cc0000;"&gt;Library=C:\Program Files\Oracle\JInitiator 1.3.1.26\bin\awt.dll&lt;br /&gt;Current Java thread:&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:trebuchet ms;color:#cc0000;"&gt;at sun.java2d.loops.DefaultComponent.IntIsomorphicCopy(Native Method)&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:trebuchet ms;color:#cc0000;"&gt;at sun.java2d.loops.IntRgbToIntRgb.OpaqueBlit(Unknown Source)&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:trebuchet ms;color:#cc0000;"&gt;at sun.java2d.loops.RasterOutputManager.performOpaqueBlit(Unknown Source)&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:trebuchet ms;color:#cc0000;"&gt;at sun.java2d.loops.RasterOutputManager.compositeSrcDst(Unknown Source)&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:trebuchet ms;color:#cc0000;"&gt;at sun.java2d.loops.RasterOutputManager.renderImage(Unknown Source)&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:trebuchet ms;color:#cc0000;"&gt;at sun.java2d.SunGraphics2D.renderingPipeImage(Unknown Source)&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:trebuchet ms;color:#cc0000;"&gt;at sun.java2d.SunGraphics2D.drawImage(Unknown Source)&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:trebuchet ms;color:#cc0000;"&gt;at sun.java2d.SunGraphics2D.drawImage(Unknown Source)&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:trebuchet ms;color:#cc0000;"&gt;at sun.awt.windows.WGraphics.drawImage(Unknown Source)&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:trebuchet ms;color:#cc0000;"&gt;at sun.awt.windows.WGraphics.drawImage(Unknown Source)&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:trebuchet ms;color:#cc0000;"&gt;at oracle.ewt.lwAWT.SharedPainter.paint(Unknown Source)&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:trebuchet ms;color:#cc0000;"&gt;at oracle.ewt.lwAWT.BufferedFrame.paint(Unknown Source)&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:trebuchet ms;color:#cc0000;"&gt;at sun.awt.RepaintArea.paint(Unknown Source)&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:trebuchet ms;color:#cc0000;"&gt;at sun.awt.windows.WComponentPeer.handleEvent(Unknown Source)&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:trebuchet ms;color:#cc0000;"&gt;at java.awt.Component.dispatchEventImpl(Unknown Source)&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:trebuchet ms;color:#cc0000;"&gt;at java.awt.Container.dispatchEventImpl(Unknown Source)&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:trebuchet ms;color:#cc0000;"&gt;at java.awt.Window.dispatchEventImpl(Unknown Source)&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:trebuchet ms;color:#cc0000;"&gt;at java.awt.Component.dispatchEvent(Unknown Source)&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:trebuchet ms;color:#cc0000;"&gt;at java.awt.EventQueue.dispatchEvent(Unknown Source)&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:trebuchet ms;color:#cc0000;"&gt;at java.awt.EventDispatchThread.pumpOneEventForHierarchy(Unknown Source)&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:trebuchet ms;color:#cc0000;"&gt;at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:trebuchet ms;color:#cc0000;"&gt;at java.awt.EventDispatchThread.pumpEvents(Unknown Source)&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:trebuchet ms;color:#cc0000;"&gt;at java.awt.EventDispatchThread.run(Unknown Source)&lt;br /&gt;Dynamic libraries:&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:trebuchet ms;color:#cc0000;"&gt;0x00400000 - 0x0049B000 C:\Program Files\Internet Explorer\iexplore.exe&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:trebuchet ms;color:#cc0000;"&gt;0x7C900000 - 0x7C9B0000 C:\WINNT\system32\ntdll.dll&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:trebuchet ms;color:#cc0000;"&gt;0x7C800000 - 0x7C8F5000 C:\WINNT\system32\kernel32.dll&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:trebuchet ms;color:#cc0000;"&gt;0x77DD0000 - 0x77E6B000 C:\WINNT\system32\ADVAPI32.dll&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:trebuchet ms;color:#cc0000;"&gt;0x77E70000 - 0x77F02000 C:\WINNT\system32\RPCRT4.dll&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:trebuchet ms;color:#cc0000;"&gt;0x77FE0000 - 0x77FF1000 C:\WINNT\system32\Secur32.dll&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:trebuchet ms;color:#cc0000;"&gt;0x77F10000 - 0x77F58000 C:\WINNT\system32\GDI32.dll&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:trebuchet ms;color:#cc0000;"&gt;0x7E410000 - 0x7E4A0000 C:\WINNT\system32\USER32.dll&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:trebuchet ms;color:#cc0000;"&gt;0x77C10000 - 0x77C68000 C:\WINNT\system32\msvcrt.dll&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:trebuchet ms;color:#cc0000;"&gt;0x77F60000 - 0x77FD6000 C:\WINNT\system32\SHLWAPI.dll&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:trebuchet ms;color:#cc0000;"&gt;0x7C9C0000 - 0x7D1D6000 C:\WINNT\system32\SHELL32.dll&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:trebuchet ms;color:#cc0000;"&gt;0x774E0000 - 0x7761D000 C:\WINNT\system32\ole32.dll&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:trebuchet ms;color:#cc0000;"&gt;0x78130000 - 0x78257000 C:\WINNT\system32\urlmon.dll&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:trebuchet ms;color:#cc0000;"&gt;0x77120000 - 0x771AB000 C:\WINNT\system32\OLEAUT32.dll&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:trebuchet ms;color:#cc0000;"&gt;0x78000000 - 0x78045000 C:\WINNT\system32\iertutil.dll&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:trebuchet ms;color:#cc0000;"&gt;0x77C00000 - 0x77C08000 C:\WINNT\system32\VERSION.dll&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:Trebuchet MS;color:#cc0000;"&gt;......&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:Trebuchet MS;color:#cc0000;"&gt;....&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:Trebuchet MS;color:#cc0000;"&gt;....&lt;/span&gt;&lt;/em&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;strong&gt;&lt;u&gt;&lt;br /&gt;&lt;br /&gt;Initial Troubleshooting&lt;br /&gt;&lt;/u&gt;&lt;/strong&gt;&lt;/div&gt;&lt;div align="justify"&gt;Uninstalling and reinstalling jinitiator did not work. So, probed in Metalink to find out whether it is a known issue.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;Found only one relevant hit in Metalink - Doc ID: &lt;a href="https://metalink2.oracle.com/metalink/plsql/f?p=130:14:3026520170760242231::::p14_database_id,p14_docid,p14_show_header,p14_show_help,p14_black_frame,p14_font:NOT,422761.1,1,1,1,helvetica"&gt;422761.1&lt;/a&gt; - for this issue.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;strong&gt;&lt;u&gt;The Cause&lt;br /&gt;&lt;/u&gt;&lt;/strong&gt;&lt;/div&gt;&lt;div align="justify"&gt;As per the Note &lt;a href="https://metalink2.oracle.com/metalink/plsql/f?p=130:14:3026520170760242231::::p14_database_id,p14_docid,p14_show_header,p14_show_help,p14_black_frame,p14_font:NOT,422761.1,1,1,1,helvetica"&gt;422761.1&lt;/a&gt;, "This is a work station hardware issue related to a device driver associated with usually video cards. It also could cause by other device drivers."&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;strong&gt;&lt;u&gt;The Solution&lt;br /&gt;&lt;/u&gt;&lt;/strong&gt;&lt;/div&gt;&lt;div align="justify"&gt;Again, as per the Note &lt;a href="https://metalink2.oracle.com/metalink/plsql/f?p=130:14:3026520170760242231::::p14_database_id,p14_docid,p14_show_header,p14_show_help,p14_black_frame,p14_font:NOT,422761.1,1,1,1,helvetica"&gt;422761.1&lt;/a&gt;, there are 2 solutions.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;u&gt;Solution 1&lt;/u&gt;&lt;br /&gt;1. Add the following parameter to your Jinitiator Java Runtime Parameters:2. Control Panel &gt; Open Jinitiaitor 1.3.1.24 (or whatever version) &gt; [Tab] Basic &gt; Enter the following in your Java Runtime Parameters field:&lt;br /&gt;-Dsun.java2d.noddraw=true&lt;/div&gt;&lt;div align="justify"&gt;3. Click Apply&lt;/div&gt;&lt;div align="justify"&gt;4. Open your browser, then clear browser cache, and test.&lt;/div&gt;&lt;div align="justify"&gt;&lt;br /&gt;&lt;u&gt;Solution 2 &lt;/u&gt;&lt;br /&gt;To add to the environment:&lt;br /&gt;1. Start-&gt;Control Panel-&gt;System&lt;br /&gt;2. Click the Advanced Tab&lt;br /&gt;3. Click the Environment Variables button&lt;br /&gt;4. Click the New button&lt;br /&gt;5. For Variable name:_JAVA_OPTIONS&lt;br /&gt;6. For Variable value -Dsun.java2d.noddraw=true [or -Dsun.java2d.d3d=false ]&lt;br /&gt;7. Click OK&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;Followed solution 1 mentioned above and Voilà, the issue is resolved.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1102785860137074059-6315587319748314265?l=bkpappsdba.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='https://metalink2.oracle.com/metalink/plsql/f?p=130:14:3026520170760242231::::p14_database_id,p14_docid,p14_show_header,p14_show_help,p14_black_frame,p14_font:NOT,422761.1,1,1,1,helvetica' title='EXCEPTION_ACCESS_VIOLATION in Jinitiator and IE crashes'/><link rel='replies' type='application/atom+xml' href='http://bkpappsdba.blogspot.com/feeds/6315587319748314265/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1102785860137074059&amp;postID=6315587319748314265' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/6315587319748314265'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/6315587319748314265'/><link rel='alternate' type='text/html' href='http://bkpappsdba.blogspot.com/2009/03/exceptionaccessviolation-in-jinitiator.html' title='EXCEPTION_ACCESS_VIOLATION in Jinitiator and IE crashes'/><author><name>Praveen</name><uri>http://www.blogger.com/profile/09645880422225153776</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>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1102785860137074059.post-416335263114220450</id><published>2009-02-16T18:33:00.017+05:30</published><updated>2009-02-17T15:12:50.450+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='AppsLogin'/><category scheme='http://www.blogger.com/atom/ns#' term='java.lang.NoClassDefFoundError'/><category scheme='http://www.blogger.com/atom/ns#' term='11.5.10.2'/><category scheme='http://www.blogger.com/atom/ns#' term='java.lang.ExceptionInInitializerError'/><title type='text'>java.lang.ExceptionInInitializerError while trying to Access login page</title><content type='html'>&lt;p align="justify"&gt;Today morning, we (the DBAs) were faced with a strange issue. On Saturday (the 14th of February - (St.) Valentine's day!!), the UNIX boxes hosting our critical test instance went down for scheduled maintenance without any prior information. So, we could not bring down our databases and applications.&lt;/p&gt;&lt;br /&gt;&lt;p align="justify"&gt;As soon as the unix box came up, we encountered this issue. Let me briefly describe the environment, the issue, the analysis performed and of course, the solution to this most vexing problem.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;strong&gt;&lt;u&gt;Environment&lt;/u&gt;:&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;p align="justify"&gt;&lt;strong&gt;&lt;u&gt;Apps Version&lt;/u&gt;:&lt;/strong&gt; 11.5.10.2 with ATG RUP 5&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;u&gt;DB Version&lt;/u&gt;:&lt;/strong&gt; 10.2.0.3&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;u&gt;Architecture&lt;/u&gt;:&lt;/strong&gt; Two Node instance with database + admin on one tier and web server on another.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;u&gt;PS&lt;/u&gt;:&lt;/strong&gt; Another instance (development) exists on the same server with the same configuration, which was working fine.&lt;/p&gt;&lt;br /&gt;&lt;p align="justify"&gt;&lt;/p&gt;&lt;br /&gt;&lt;p align="justify"&gt;&lt;strong&gt;&lt;u&gt;Issue&lt;/u&gt;:&lt;/strong&gt;&lt;/p&gt;&lt;p align="justify"&gt;When trying to access the login page of Oracle Apps, received the below error. Even OAM login page was throwing the same error.&lt;/p&gt;&lt;p align="justify"&gt;&lt;em&gt;&lt;span style="font-family:courier new;color:#cc0000;"&gt;Request URI: /OA_HTML/AppsLocalLogin.jsp&lt;br /&gt;Exception:&lt;/span&gt;&lt;/em&gt;&lt;/p&gt;&lt;p align="justify"&gt;&lt;em&gt;&lt;span style="font-family:courier new;color:#cc0000;"&gt;java.lang.ExceptionInInitializerError&lt;/span&gt;&lt;/em&gt;&lt;br /&gt;&lt;/p&gt;&lt;p align="justify"&gt;&lt;em&gt;&lt;span style="font-family:courier new;color:#cc0000;"&gt;Request URI:/OA_HTML/AppsLocalLogin.jsp&lt;br /&gt;Exception:&lt;/span&gt;&lt;/em&gt;&lt;/p&gt;&lt;p align="justify"&gt;&lt;em&gt;&lt;span style="font-family:courier new;color:#cc0000;"&gt;java.lang.NoClassDefFoundError&lt;/span&gt;&lt;/em&gt;&lt;/p&gt;&lt;p align="justify"&gt;As soon as the services were bounced, we were receiving the first error. After some time, we received the second error (yes, truth is indeed stranger than fiction!!).&lt;/p&gt;&lt;br /&gt;&lt;p align="justify"&gt;&lt;/p&gt;&lt;br /&gt;&lt;p align="justify"&gt;&lt;strong&gt;&lt;u&gt;Analysis&lt;/u&gt;:&lt;/strong&gt;&lt;/p&gt;&lt;p align="justify"&gt;Since, we were receiving "NoClassDefFoundError", performed the following:&lt;/p&gt;&lt;p align="justify"&gt;1. Checked the CLASSPATH and AF_CLASSPATH variable and ensured that every path is valid.&lt;/p&gt;&lt;br /&gt;&lt;p align="justify"&gt;&lt;/p&gt;&lt;br /&gt;&lt;p align="justify"&gt;2. Checked all the class paths defined by wrapper.classpath in jserv.properties using the command below:&lt;/p&gt;&lt;p align="justify"&gt;&lt;em&gt;&lt;span style="font-family:times new roman;color:#6600cc;"&gt;for i in `grep classpath $IAS_ORACLE_HOME/Apache/Jserv/etc/jserv.properties grep -v "#" cut -d '=' -f2`&lt;br /&gt;do&lt;br /&gt;ls -ld $i &gt;&gt; /tmp/check_class_path.txt&lt;br /&gt;if [[ $? -eq 0 ]]; then&lt;br /&gt;continue&lt;br /&gt;else&lt;br /&gt;printf "\n\n '${i}' is not proper. \n\n"&lt;br /&gt;fi&lt;br /&gt;done&lt;/span&gt;&lt;/em&gt;&lt;/p&gt;&lt;br /&gt;&lt;p align="justify"&gt;I compared the output generated from the above script with that from the development instance that was working and found no discrepancies.&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p align="justify"&gt;3. Ran aoljtest.jsp and found that it was running fine till the step "Verify Guest User", where it was throwing "Page cannot be found" error.&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p align="justify"&gt;4. The above error set me thinking and I checked the GUEST username and password in the&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;div align="justify"&gt;dbc file&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;div align="justify"&gt;database (profile option)&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;div align="justify"&gt;CONTEXT_FILE&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;div align="justify"&gt;output of the below query &lt;em&gt;&lt;span style="font-family:times new roman;color:#6600cc;"&gt;"select fnd_web_sec.validate_login ('GUEST','&amp;lt;PASSWORD&amp;gt;') from dual;"&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p align="justify"&gt;and found it to be consistent.&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p align="justify"&gt;5. Checked a lot of Metalink Notes and documents and blogs and what not, but to no avail.&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p align="justify"&gt;6. Enabled debug in :&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;div align="justify"&gt;jserv.conf&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;div align="justify"&gt;jserv.properties&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;div align="justify"&gt;httpd.conf&lt;/div&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p align="justify"&gt;but no log file was informative enough to point me in the right direction.&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p align="justify"&gt;7. Meanwhile, the error log had been throwing the below error, which I analysed but could not make much headway and found it to be actually misleading.&lt;/p&gt;&lt;p align="left"&gt;&lt;em&gt;&lt;span style="font-family:courier new;color:#cc0000;"&gt;[Sun Feb 15 23:13:20 2009] [error] [client &amp;lt;IP_ADDRESS&amp;gt;] (78)File name too long: access to /redirectURL$url=http_3A$$ &amp;lt;hostname.domain_name&amp;gt;_3A&amp;lt;port_number&amp;gt;$oa*_servlets$ oracle.apps.fnd.sso.AppsLogin_3FrequestUrl$=$oa*_servlets$weboam$ oam$oamLogin_26cancelUrl$=http_3A$$ &amp;lt;hostname.domain_name&amp;gt;_3A&amp;lt;port_number&amp;gt;$oa*_servlets$ oracle.apps.fnd.sso.AppsLogin$forward=oam$oamLogin failed&lt;/span&gt;&lt;/em&gt;&lt;/p&gt;&lt;br /&gt;&lt;p align="justify"&gt;&lt;/p&gt;&lt;p align="justify"&gt;8. After exhausting all the options, I decided to take a break and promptly headed for lunch!&lt;/p&gt;&lt;br /&gt;&lt;p align="justify"&gt;&lt;/p&gt;&lt;br /&gt;&lt;p align="justify"&gt;&lt;/p&gt;&lt;p align="justify"&gt;9. Post lunch, I tried to re-examine the issue from a different perspective. As point 3 above states, I was receiving an error while trying to check the Guest username using aoljtest.jsp. Again checked the guest username and password in the palces mentioned in point 4 above and found them to be consistent.&lt;/p&gt;&lt;br /&gt;&lt;p align="justify"&gt;&lt;/p&gt;&lt;br /&gt;&lt;p align="justify"&gt;&lt;/p&gt;&lt;p align="justify"&gt;10. Finally (actually, I had found this note earlier, but ignored it because I found the guest username and password to be correct), I found Note: &lt;strong&gt;&lt;em&gt;&lt;span style="font-family:verdana;"&gt;&lt;a href="https://metalink2.oracle.com/metalink/plsql/f?p=130:14:5183072418822194181::::p14_database_id,p14_docid,p14_show_header,p14_show_help,p14_black_frame,p14_font:NOT,458064.1,1,1,1,helvetica"&gt;458064.1&lt;/a&gt;&lt;/span&gt;&lt;/em&gt;&lt;/strong&gt;, which I found relevant on three counts:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;div align="justify"&gt;It mentions about the "java.lang.ExceptionInInitializerError" error.&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;div align="justify"&gt;we were also on ATG RUP 5 (5473858), as the note mentions.&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;div align="justify"&gt;It also mentions that "Verify Guest user" ends with an error (though different from the one that I was receiving).&lt;/div&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p align="justify"&gt;So, I decided to follow the solution mentioned in that note.&lt;/p&gt;&lt;br /&gt;&lt;p align="justify"&gt;&lt;/p&gt;&lt;br /&gt;&lt;p align="justify"&gt;&lt;/p&gt;&lt;p align="justify"&gt;&lt;strong&gt;&lt;u&gt;Solution&lt;/u&gt;:&lt;/strong&gt;&lt;/p&gt;&lt;p align="left"&gt;1. a. Login directly to Forms via &lt;a href="http://&amp;lt;hostname&amp;gt;:&amp;lt;port&amp;gt;/dev60cgi/f60cgi"&gt;http://&amp;lt;hostname&amp;gt;:&amp;lt;port&amp;gt;/dev60cgi/f60cgi&lt;/a&gt;&lt;/p&gt;&lt;p align="justify"&gt;b. Set the value of system profile "Password Case Option" to "Insensitive"&lt;/p&gt;&lt;p align="justify"&gt;c. Save and close Oracle Applications&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;p align="left"&gt;2. On the operating system as the apps user (e.g. applmgr) execute these commands:&lt;br /&gt;&lt;br /&gt;a. &lt;em&gt;&lt;span style="font-family:times new roman;color:#6600cc;"&gt;cd $FND_TOP/secure/&amp;lt;SID&amp;gt;_&amp;lt;hostname&amp;gt;&lt;br /&gt;&lt;sid&gt;&lt;hostname&gt;&lt;br /&gt;&lt;/span&gt;&lt;/em&gt;b. &lt;em&gt;&lt;span style="font-family:times new roman;color:#6600cc;"&gt;java oracle.apps.fnd.security.AdminAppServer &amp;lt;apps username&amp;gt;/&amp;lt;apps password&amp;gt; UPDATE GUEST_USER_PWD=GUEST/&amp;lt;PASSWORD ALL UPPERCASE&amp;gt; DB_HOST=&amp;lt;host&amp;gt; DB_NAME=&amp;lt;SID&amp;gt; DB_PORT=&amp;lt;port&amp;gt;&lt;/span&gt;&lt;/em&gt;&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;p align="left"&gt;The values for GUEST_USER_PWD, DB_HOST, DB_NAME, and DB_PORT can be found in the $FND_TOP/secure/&amp;lt;SID&amp;gt;_hostname/&amp;lt;SID&amp;gt;.dbc file if required.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;p align="left"&gt;3. Verify that the following things are true:&lt;br /&gt;&lt;br /&gt;a. The GUEST password is updated and all upper-case in the $FND_TOP/secure/&amp;lt;SID&amp;gt;_&amp;lt;hostname&amp;gt;/&amp;lt;SID&amp;gt;.dbc file.&lt;br /&gt;&lt;br /&gt;b. That the profile GUEST_USER_PWD is set correctly after the password change. The SQL to run is:&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;em&gt;&lt;span style="font-family:courier new;color:#6600cc;"&gt;set serveroutput on&lt;br /&gt;set echo on&lt;br /&gt;set timing on&lt;br /&gt;set feedback on&lt;br /&gt;set long 10000&lt;br /&gt;set linesize 120&lt;br /&gt;set pagesize 132&lt;br /&gt;column SHORT_NAME format A30&lt;br /&gt;column NAME format A40&lt;br /&gt;column LEVEL_SET format a15&lt;br /&gt;column CONTEXT format a30&lt;br /&gt;column VALUE format A60 wrap&lt;br /&gt;select p.profile_option_name SHORT_NAME,&lt;br /&gt;n.user_profile_option_name NAME,&lt;br /&gt;decode(v.level_id,&lt;br /&gt;10001, 'Site',&lt;br /&gt;10002, 'Application',&lt;br /&gt;10003, 'Responsibility',&lt;br /&gt;10004, 'User',&lt;br /&gt;10005, 'Server',&lt;br /&gt;10007, 'SERVRESP',&lt;br /&gt;'UnDef') LEVEL_SET,&lt;br /&gt;decode(to_char(v.level_id),&lt;br /&gt;'10001', '',&lt;br /&gt;'10002', app.application_short_name,&lt;br /&gt;'10003', rsp.responsibility_key,&lt;br /&gt;'10005', svr.node_name,&lt;br /&gt;'10006', org.name,&lt;br /&gt;'10004', usr.user_name,&lt;br /&gt;'10007', 'Serv/resp',&lt;br /&gt;'UnDef') "CONTEXT",&lt;br /&gt;v.profile_option_value VALUE&lt;br /&gt;from fnd_profile_options p,&lt;br /&gt;fnd_profile_option_values v,&lt;br /&gt;fnd_profile_options_tl n,&lt;br /&gt;fnd_user usr,&lt;br /&gt;fnd_application app,&lt;br /&gt;fnd_responsibility rsp,&lt;br /&gt;fnd_nodes svr,&lt;br /&gt;hr_operating_units org&lt;br /&gt;where p.profile_option_id = v.profile_option_id (+)&lt;br /&gt;and p.profile_option_name = n.profile_option_name&lt;br /&gt;and upper(n.user_profile_option_name) = 'GUEST_USER_PWD'&lt;br /&gt;and usr.user_id (+) = v.level_value&lt;br /&gt;and rsp.application_id (+) = v.level_value_application_id&lt;br /&gt;and rsp.responsibility_id (+) = v.level_value&lt;br /&gt;and app.application_id (+) = v.level_value&lt;br /&gt;and svr.node_id (+) = v.level_value&lt;br /&gt;and org.organization_id (+) = v.level_value&lt;br /&gt;order by short_name, level_set;&lt;/span&gt;&lt;/em&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;c. That the following SQL returns 'Y':&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;color:#6600cc;"&gt;&lt;em&gt;SELECT fnd_web_sec.validate_login('GUEST','&lt;password&gt;') FROM dual;&lt;/em&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;4. Bounced the services and retried the login, which worked like a charm.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1102785860137074059-416335263114220450?l=bkpappsdba.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bkpappsdba.blogspot.com/feeds/416335263114220450/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1102785860137074059&amp;postID=416335263114220450' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/416335263114220450'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/416335263114220450'/><link rel='alternate' type='text/html' href='http://bkpappsdba.blogspot.com/2009/02/javalangnoclassdeffounderror-while.html' title='java.lang.ExceptionInInitializerError while trying to Access login page'/><author><name>Praveen</name><uri>http://www.blogger.com/profile/09645880422225153776</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-1102785860137074059.post-1400432092134628703</id><published>2009-02-05T16:19:00.009+05:30</published><updated>2009-07-28T17:31:53.578+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='UNIX'/><category scheme='http://www.blogger.com/atom/ns#' term='shell scripts'/><title type='text'>Flower brackets {} and variables in UNIX - A perfect match</title><content type='html'>&lt;div align="justify"&gt;When passing a variable in unix, the general convention is to use &lt;em&gt;&lt;span style="font-family:verdana;"&gt;&lt;strong&gt;$variable&lt;/strong&gt;&lt;/span&gt;&lt;/em&gt;. Although this does suffice in most cases but in some rare cases, it gives connotations totally different than what was originally intended, as shown in the below example.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;strong&gt;&lt;u&gt;The requirement&lt;br /&gt;&lt;/u&gt;&lt;/strong&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;Copy all files ending with ver to ver_old. For example, suppose I have a file called formver, I would like to copy it to formver_old.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;strong&gt;&lt;u&gt;The code&lt;br /&gt;&lt;/u&gt;&lt;/strong&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;below is the code that I wrote to achieve the above requirement.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;em&gt;&lt;span style="font-family:georgia;color:#993399;"&gt;for i in `ls *ver`&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;em&gt;&lt;span style="font-family:georgia;color:#993399;"&gt;do&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;em&gt;&lt;span style="font-family:georgia;color:#993399;"&gt;cp -p $i $i_old&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;em&gt;&lt;span style="font-family:georgia;color:#993399;"&gt;done&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;strong&gt;&lt;u&gt;&lt;br /&gt;&lt;br /&gt;The pitfall&lt;br /&gt;&lt;/u&gt;&lt;/strong&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;A cursory glance at the code indicates that it should run smoothly like a river. But it doent' and herein lies the catch. Let's have a look at the error and figure out what exactly is wrong with the above code.&lt;br /&gt;__________________________________________________________________&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:courier new;color:#cc0000;"&gt;&lt;em&gt;$ for i in `ls *ver`&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:courier new;color:#cc0000;"&gt;&lt;em&gt;&amp;gt; do&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:courier new;color:#cc0000;"&gt;&lt;em&gt;&amp;gt; cp -p $i $i_old&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:courier new;color:#cc0000;"&gt;&lt;em&gt;&amp;gt; done&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:courier new;color:#cc0000;"&gt;&lt;em&gt;cp: Insufficient arguments (1)&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:courier new;color:#cc0000;"&gt;&lt;em&gt;Usage: cp [-f] [-i] [-p] [-@] f1 f2 &lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:courier new;color:#cc0000;"&gt;&lt;em&gt;cp [-f] [-i] [-p] [-@] f1 ... fn d1 &lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:courier new;color:#cc0000;"&gt;&lt;em&gt;cp -r-R [-H-L-P] [-f] [-i] [-p] [-@] d1 ... dn-1 dn&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:courier new;color:#cc0000;"&gt;&lt;em&gt;cp: Insufficient arguments (1)&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:courier new;color:#cc0000;"&gt;&lt;em&gt;Usage: cp [-f] [-i] [-p] [-@] f1 f2 &lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:courier new;color:#cc0000;"&gt;&lt;em&gt;cp [-f] [-i] [-p] [-@] f1 ... fn d1 &lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:courier new;color:#cc0000;"&gt;&lt;em&gt;cp -r-R [-H-L-P] [-f] [-i] [-p] [-@] d1 ... dn-1 dn&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:courier new;color:#cc0000;"&gt;&lt;em&gt;cp: Insufficient arguments (1)&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:courier new;color:#cc0000;"&gt;&lt;em&gt;Usage: cp [-f] [-i] [-p] [-@] f1 &lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:courier new;color:#cc0000;"&gt;&lt;em&gt;cp [-f] [-i] [-p] [-@] f1 ... fn &lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:courier new;color:#cc0000;"&gt;&lt;em&gt;cp -r-R [-H-L-P] [-f] [-i] [-p] [-@] d1 ... dn-1 dn&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:courier new;color:#cc0000;"&gt;&lt;em&gt;cp: Insufficient arguments (1)&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:courier new;color:#cc0000;"&gt;&lt;em&gt;Usage: cp [-f] [-i] [-p] [-@] f1 &lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:courier new;color:#cc0000;"&gt;&lt;em&gt;cp [-f] [-i] [-p] [-@] f1 ... fn &lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:courier new;color:#cc0000;"&gt;&lt;em&gt;cp -r-R [-H-L-P] [-f] [-i] [-p] [-@] d1 ... dn-1 dn&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:courier new;color:#cc0000;"&gt;&lt;em&gt;cp: Insufficient arguments (1)&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:courier new;color:#cc0000;"&gt;&lt;em&gt;Usage: cp [-f] [-i] [-p] [-@] f1 &lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:courier new;color:#cc0000;"&gt;&lt;em&gt;cp [-f] [-i] [-p] [-@] f1 ... fn &lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:courier new;color:#cc0000;"&gt;&lt;em&gt;cp -r-R [-H-L-P] [-f] [-i] [-p] [-@] d1 ... dn-1 dn&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:courier new;color:#cc0000;"&gt;&lt;em&gt;cp: Insufficient arguments (1)&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:courier new;color:#cc0000;"&gt;&lt;em&gt;Usage: cp [-f] [-i] [-p] [-@] f1 &lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:courier new;color:#cc0000;"&gt;&lt;em&gt;cp [-f] [-i] [-p] [-@] f1 ... fn &lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:courier new;color:#cc0000;"&gt;&lt;em&gt;cp -r-R [-H-L-P] [-f] [-i] [-p] [-@] d1 ... dn-1 dn&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;__________________________________________________________________&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;Can you guess or pinpoint as to what exactly is wrong with the above code, which makes it throw this error?&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;It took me sometime but I finally figured it out. $i_old was being considered as a variable i.e., the shell was reading the variable as &lt;strong&gt;$i_old&lt;/strong&gt; and not as the variable $i appended with an underscore(_) and 'old'.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;strong&gt;&lt;u&gt;The solution&lt;br /&gt;&lt;/u&gt;&lt;/strong&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;The solution to this obviously is to use the flower brackets (braces/parantheses) for the variable $i so as to make it ubiquitous. Now the code looks like:&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;em&gt;&lt;span style="font-family:georgia;color:#993399;"&gt;for i in `ls *ver`&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;em&gt;&lt;span style="font-family:georgia;color:#993399;"&gt;do&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;em&gt;&lt;span style="font-family:georgia;color:#993399;"&gt;cp -p ${i} ${i}_old&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;em&gt;&lt;span style="font-family:georgia;color:#993399;"&gt;done&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;strong&gt;&lt;u&gt;&lt;br /&gt;&lt;br /&gt;The conclusion&lt;/u&gt;&lt;/strong&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;To conclude, I would like to say to my fellow DBAs who are also into shell scripting, watch out for small things like these, which might make or break your day! &lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1102785860137074059-1400432092134628703?l=bkpappsdba.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bkpappsdba.blogspot.com/feeds/1400432092134628703/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1102785860137074059&amp;postID=1400432092134628703' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/1400432092134628703'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/1400432092134628703'/><link rel='alternate' type='text/html' href='http://bkpappsdba.blogspot.com/2009/02/flower-brackets-and-variables-in-unix.html' title='Flower brackets {} and variables in UNIX - A perfect match'/><author><name>Praveen</name><uri>http://www.blogger.com/profile/09645880422225153776</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-1102785860137074059.post-6927261025818120575</id><published>2009-02-04T14:57:00.003+05:30</published><updated>2009-02-04T16:32:01.966+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='JDK 5'/><category scheme='http://www.blogger.com/atom/ns#' term='11.5.9'/><category scheme='http://www.blogger.com/atom/ns#' term='JDK 6'/><title type='text'>11.5.9 &amp; JDK 5 - Mutually exclusive</title><content type='html'>&lt;strong&gt;&lt;u&gt;Apps Configuration&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;Oracle Apps Version ==&gt; 11.5.9&lt;br /&gt;Node Type ==&gt; Multi-node&lt;br /&gt;RAC ==&gt; No&lt;br /&gt;OS &amp;amp; version ==&gt; Sun SPARC Solaris (64-Bit) 10 (5.10)&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;u&gt;Issue&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;div align="justify"&gt;Recently (last week, to be precise), I was researching an "Internal Server error" while opening Installed Base.&lt;/div&gt;&lt;br /&gt;&lt;div align="justify"&gt;The error log had error "client denied by server configuration" (not very helpful, I would say). The mod_jserv.log was much more informative and in fact, quite specific. Refer the note marked in red below.&lt;br /&gt;__________________________________________________________________&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;[28/01/2009 06:39:44:223] (ERROR) ajp12: Servlet Error: OracleJSP: oracle.jsp.provider.JspCompileException: &amp;lt;H3&amp;gt;Errors compiling$COMMON_TOP/_pages/_oa__html//_csiSwitchRespMain.java&amp;lt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:courier new;"&gt;/H3&amp;gt;&amp;lt;TABLE BORDER=1 WIDTH=100%&amp;gt;&amp;lt;TR&amp;gt;&amp;lt;TH ALIGN=CENTER&amp;gt;Line #&amp;lt;/TH&amp;gt;&amp;lt;TH ALIGN=CENTER&amp;gt;Error&amp;lt;/TH&amp;gt;&amp;lt;/TR&amp;gt;&amp;lt;TR&amp;gt;&amp;lt;TD WIDTH=7% VALIGN=TOP&amp;gt;&amp;lt;P ALIGN=CENTER&amp;gt;990&amp;lt;/TD&amp;gt;&amp;lt;TD&amp;gt; &lt;strong&gt;&lt;span style="color:#cc0000;"&gt;as of release 1.5, 'enum' is a keyword, and may not be used as an identifier (try -source 1.4 or lower to use 'enum' as an identifier)        Enumeration enum = request.getParameterNames();&lt;/span&gt;&lt;/strong&gt;                    &amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&amp;lt;TR&amp;gt;&amp;lt;TD WIDTH=7% VALIGN=TOP&amp;gt;&amp;lt;P ALIGN=CENTER&amp;gt;991&amp;lt;/TD&amp;gt;&amp;lt;TD&amp;gt; as of release 1.5, 'enum' is a keyword, and may not be used as an identifier (try -source 1.4 or lower to use 'enum' as an identifier)        while (enum.hasMoreElements())               &amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&amp;lt;TR&amp;gt;&amp;lt;TD WIDTH=7% VALIGN=TOP&amp;gt;&amp;lt;P ALIGN=CENTER&amp;gt;993&amp;lt;/TD&amp;gt;&amp;lt;TD&amp;gt; as of release 1.5, 'enum' is a keyword, and may not be used as an identifier (try -source 1.4 or lower to use 'enum' as an identifier)          String param = (String)enum.nextElement();&lt;/span&gt;&lt;br /&gt;__________________________________________________________________&lt;/div&gt;&lt;br /&gt;&lt;strong&gt;&lt;u&gt;Research&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;div align="justify"&gt;Now, the above error gave me an idea. I decided to check the Metalink Note &lt;a href="https://metalink2.oracle.com/metalink/plsql/f?p=130:14:3026520170760242231::::p14_database_id,p14_docid,p14_show_header,p14_show_help,p14_black_frame,p14_font:NOT,300482.1,1,1,1,helvetica"&gt;300482.1&lt;/a&gt; - Overview of Using Java with Oracle E-Business Suite Release 11i.&lt;/div&gt;&lt;br /&gt;&lt;div align="justify"&gt;This note clearly states that for 11.5.9, the JDK (Java SE) version supported is 1.4.2.&lt;/div&gt;&lt;br /&gt;&lt;div align="justify"&gt;Does that mean that JDK 5 and JDK 6 are not supported for 11.5.9? Not quite, as I found out.&lt;/div&gt;&lt;br /&gt;&lt;div align="justify"&gt;The Note &lt;a href="https://metalink2.oracle.com/metalink/plsql/f?p=130:14:3026520170760242231::::p14_database_id,p14_docid,p14_show_header,p14_show_help,p14_black_frame,p14_font:NOT,304099.1,1,1,1,helvetica"&gt;304099.1&lt;/a&gt; (Using J2SE Version 5.0 with Oracle E-Business Suite 11i) does NOT mention 11.5.9 anywhere, implying that JDK 5 is indeed not supported with 11.5.9.&lt;/div&gt;&lt;br /&gt;&lt;div align="justify"&gt;However, the Note &lt;a href="https://metalink2.oracle.com/metalink/plsql/f?p=130:14:3026520170760242231::::p14_database_id,p14_docid,p14_show_header,p14_show_help,p14_black_frame,p14_font:NOT,401561.1,1,1,1,helvetica"&gt;401561.1&lt;/a&gt; (Using J2SE Version 6 with Oracle E-Business Suite 11i) does mention that JDK 6 can be used with 11.5.9 provided (yes, as the ads say - conditions apply!) that you "&lt;span style="color:#663333;"&gt;&lt;strong&gt;&lt;span style="color:#993399;"&gt;ensure that your E-Business Suite Release 11i system has been upgraded to Maintenance Pack 11.5.9 CU2 or higher with ATG_PF.H RUP5 or higher on the 11.5.9 stream.&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;"&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;strong&gt;&lt;u&gt;Conclusion&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;div align="justify"&gt;&lt;strong&gt;This means that 11.5.9 is indeed supported with JDK 6 but NOT JDK 5&lt;/strong&gt; (of course, provided that the above conditions are satisfied).&lt;/div&gt;&lt;br /&gt;&lt;div align="justify"&gt;Because, 11.5.9 is NOT supported with JDK 5, I believe we are hitting the above issue (internal server error in installed base). As of now, there is no solution to this issue apart from &lt;/div&gt;1. downgrading JDK from 5 to 1.4.2&lt;br /&gt;2. modifying the xml to point to 1.4.2&lt;br /&gt;3. running autoconfig to ensure the changes are reflected.&lt;br /&gt;&lt;br /&gt;Signing off now hoping that the above solution works!&lt;br /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1102785860137074059-6927261025818120575?l=bkpappsdba.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bkpappsdba.blogspot.com/feeds/6927261025818120575/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1102785860137074059&amp;postID=6927261025818120575' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/6927261025818120575'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/6927261025818120575'/><link rel='alternate' type='text/html' href='http://bkpappsdba.blogspot.com/2009/02/1159-jdk-5-mutually-exclusive.html' title='11.5.9 &amp; JDK 5 - Mutually exclusive'/><author><name>Praveen</name><uri>http://www.blogger.com/profile/09645880422225153776</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-1102785860137074059.post-8745118002207872362</id><published>2009-02-04T12:19:00.007+05:30</published><updated>2009-02-04T14:57:16.204+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='UNIX'/><category scheme='http://www.blogger.com/atom/ns#' term='kernel bits'/><title type='text'>Find OS Kernel Bit in UNIX - Ready reckoner</title><content type='html'>Listed below is the ready reckoner for finding out the kernel bit information for Linux, Solaris, HP-UX and IBM AIX, which are the most commonly used OS for Oracle Apps.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;u&gt;Linux&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:georgia;color:#6600cc;"&gt;getconf LONG_BIT&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:georgia;color:#6600cc;"&gt;or&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:georgia;color:#6600cc;"&gt;uname -m (works for x86-64 bit servers. Not tested it in 32 bit servers)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;eg:&lt;br /&gt;&lt;em&gt;&lt;span style="font-family:courier new;color:#990000;"&gt;$ getconf LONG_BIT&lt;/span&gt;&lt;/em&gt;&lt;br /&gt;&lt;em&gt;&lt;span style="font-family:courier new;color:#990000;"&gt;64&lt;/span&gt;&lt;/em&gt;&lt;br /&gt;&lt;em&gt;&lt;span style="font-family:courier new;color:#990000;"&gt;$ uname -m&lt;/span&gt;&lt;/em&gt;&lt;br /&gt;&lt;em&gt;&lt;span style="font-family:courier new;color:#990000;"&gt;x86_64&lt;/span&gt;&lt;/em&gt;&lt;br /&gt;&lt;em&gt;&lt;span style="font-family:courier new;color:#990000;"&gt;$&lt;/span&gt;&lt;/em&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;u&gt;Sun SPARC Solaris&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:georgia;color:#6600cc;"&gt;isainfo -kv&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;eg:&lt;br /&gt;&lt;span style="font-family:courier new;color:#990000;"&gt;&lt;em&gt;$ isainfo -kv&lt;/em&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;color:#990000;"&gt;&lt;em&gt;64-bit sparcv9 kernel modules&lt;/em&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;color:#990000;"&gt;&lt;em&gt;$&lt;/em&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;u&gt;HP-UX&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:georgia;color:#6600cc;"&gt;getconf KERNEL_BITS&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;eg:&lt;br /&gt;&lt;em&gt;&lt;span style="font-family:courier new;color:#990000;"&gt;$ getconf KERNEL_BITS&lt;/span&gt;&lt;/em&gt;&lt;br /&gt;&lt;em&gt;&lt;span style="font-family:courier new;color:#990000;"&gt;64&lt;/span&gt;&lt;/em&gt;&lt;br /&gt;&lt;em&gt;&lt;span style="font-family:Courier New;color:#990000;"&gt;$&lt;/span&gt;&lt;/em&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;u&gt;IBM AIX&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:georgia;color:#6600cc;"&gt;bootinfo -K&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Not tested as I currently do not have any AIX servers to test on!&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;u&gt;Note 1&lt;/u&gt;:&lt;/strong&gt; To find whether a given executable is 32-bit or 64-bit, use the command&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:georgia;color:#6600cc;"&gt;file &amp;lt;executable_name&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;u&gt;eg:&lt;/u&gt;&lt;br /&gt;&lt;em&gt;&lt;span style="font-family:courier new;color:#990000;"&gt;$ file oracle&lt;/span&gt;&lt;/em&gt;&lt;br /&gt;&lt;em&gt;&lt;span style="font-family:courier new;color:#990000;"&gt;oracle: ELF 64-bit MSB executable SPARCV9 Version 1, dynamically linked, not stripped&lt;/span&gt;&lt;/em&gt;&lt;br /&gt;&lt;em&gt;&lt;span style="font-family:courier new;color:#990000;"&gt;$ file tnslsnr&lt;/span&gt;&lt;/em&gt;&lt;br /&gt;&lt;em&gt;&lt;span style="font-family:courier new;color:#990000;"&gt;tnslsnr: ELF 64-bit MSB executable SPARCV9 Version 1, dynamically linked, not stripped&lt;/span&gt;&lt;/em&gt;&lt;br /&gt;&lt;em&gt;&lt;span style="font-family:courier new;color:#990000;"&gt;$ file sqlplus&lt;/span&gt;&lt;/em&gt;&lt;br /&gt;&lt;em&gt;&lt;span style="font-family:courier new;color:#990000;"&gt;sqlplus: ELF 64-bit MSB executable SPARCV9 Version 1, dynamically linked, not stripped&lt;/span&gt;&lt;/em&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;u&gt;Note 2&lt;/u&gt;:&lt;/strong&gt; You can install a 32-bit executable on a 64-bit OS but not vice-versa. &lt;br /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1102785860137074059-8745118002207872362?l=bkpappsdba.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bkpappsdba.blogspot.com/feeds/8745118002207872362/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1102785860137074059&amp;postID=8745118002207872362' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/8745118002207872362'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/8745118002207872362'/><link rel='alternate' type='text/html' href='http://bkpappsdba.blogspot.com/2009/02/find-os-kernel-bit-in-unix-ready.html' title='Find OS Kernel Bit in UNIX - Ready reckoner'/><author><name>Praveen</name><uri>http://www.blogger.com/profile/09645880422225153776</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-1102785860137074059.post-6423064300743449982</id><published>2009-02-02T15:54:00.008+05:30</published><updated>2010-05-18T14:30:05.115+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='ORA_NLS10'/><category scheme='http://www.blogger.com/atom/ns#' term='ORA-07445'/><category scheme='http://www.blogger.com/atom/ns#' term='database crash'/><title type='text'>The curious case of database crash and ORA_NLS10</title><content type='html'>&lt;div align="justify"&gt;&lt;span style="font-family:lucida grande;color:#000000;"&gt;&lt;strong&gt;&lt;u&gt;Case Facts&lt;/u&gt;:&lt;br /&gt;&lt;br /&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:lucida grande;color:#000000;"&gt;Database Version ==&gt; 10.2.0.3.0&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:lucida grande;color:#000000;"&gt;Oracle Apps Version ==&gt; 11.5.10.2&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:lucida grande;color:#000000;"&gt;Node Type ==&gt; Multi-node&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:lucida grande;color:#000000;"&gt;RAC ==&gt; No&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;OS &amp;amp; version ==&gt; Sun SPARC Solaris (64-Bit) 10 (5.10)&lt;/div&gt;&lt;div align="justify"&gt;Symptom ==&gt; Database crashes with ORA-07445&lt;span style="font-family:lucida grande;color:#000000;"&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;br /&gt;&lt;/div&gt;&lt;/span&gt;&lt;div align="justify"&gt;&lt;span style="font-family:lucida grande;color:#000000;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;strong&gt;&lt;span style="color:#000000;"&gt;&lt;u&gt;Case Description&lt;/u&gt;:&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="color:#000000;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:lucida grande;color:#000000;"&gt;While trying to bring up an Oracle Apps instance, I found that the database was crashing with ORA-07445 errors (as below) as soon as I brought up the concurrent managers.&lt;/span&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:courier new;color:#ff0000;"&gt;_____________________________________________________________&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:courier new;color:#ff0000;"&gt;Mon Feb 2 00:26:24 2009&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:courier new;color:#ff0000;"&gt;Errors in file $ORACLE_HOME/admin/[CONTEXT_NAME]/udump/cpek_ora_6085.trc:&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:courier new;color:#ff0000;"&gt;ORA-07445: exception encountered: core dump [lfilic()+328] [SIGSEGV] [Address not mapped to object] [0x000000040] [] []&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:courier new;color:#ff0000;"&gt;ORA-29282: invalid file ID&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:courier new;color:#ff0000;"&gt;Mon Feb 2 00:26:27 2009&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:courier new;color:#ff0000;"&gt;Errors in file $ORACLE_HOME/admin/[CONTEXT_NAME]/udump/cpek_ora_5512.trc:&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:courier new;color:#ff0000;"&gt;ORA-07445: exception encountered: core dump [lfilic()+328] [SIGSEGV] [Address not mapped to object] [0x000000040] [] []&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:courier new;color:#ff0000;"&gt;Mon Feb 2 00:26:34 2009&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:courier new;color:#ff0000;"&gt;Errors in file $ORACLE_HOME/admin/[CONTEXT_NAME]/udump/cpek_ora_5468.trc:&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:courier new;color:#ff0000;"&gt;ORA-07445: exception encountered: core dump [lfilic()+328] [SIGSEGV] [Address not mapped to object] [0x000000040] [] []&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:courier new;color:#ff0000;"&gt;Mon Feb 2 00:26:51 2009&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:courier new;color:#ff0000;"&gt;Errors in file $ORACLE_HOME/admin/[CONTEXT_NAME]/udump/cpek_ora_5573.trc:&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:courier new;color:#ff0000;"&gt;ORA-07445: exception encountered: core dump [lfilic()+328] [SIGSEGV] [Address not mapped to object] [0x000000040] [] []&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:courier new;color:#ff0000;"&gt;Mon Feb 2 00:28:02 2009&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:courier new;color:#ff0000;"&gt;Errors in file $ORACLE_HOME/admin/[CONTEXT_NAME]/udump/cpek_ora_5486.trc:&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:courier new;color:#ff0000;"&gt;ORA-07445: exception encountered: core dump [lfilic()+328] [SIGSEGV] [Address not mapped to object] [0x000000040] [] []&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:courier new;color:#ff0000;"&gt;Mon Feb 2 00:28:37 2009&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:courier new;color:#ff0000;"&gt;.....&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:courier new;color:#ff0000;"&gt;..&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:courier new;color:#ff0000;"&gt;..&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:courier new;color:#ff0000;"&gt;..&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:courier new;color:#ff0000;"&gt;Mon Feb 2 00:38:10 2009&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:courier new;color:#ff0000;"&gt;Errors in file $ORACLE_HOME/admin/[CONTEXT_NAME]/udump/cpek_ora_5560.trc:&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:courier new;color:#ff0000;"&gt;ORA-07445: exception encountered: core dump [lfilic()+328] [SIGSEGV] [Address not mapped to object] [0x000000040] [] []&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:courier new;color:#ff0000;"&gt;Mon Feb 2 00:40:15 2009&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:courier new;color:#ff0000;"&gt;Incremental checkpoint up to RBA [0x27c.48028.0], current log tail at RBA [0x27d.1fc8.0]&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:courier new;color:#ff0000;"&gt;Mon Feb 2 00:42:30 2009&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:courier new;color:#ff0000;"&gt;Completed checkpoint up to RBA [0x27d.2.10], SCN: 10245291290327&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:courier new;color:#ff0000;"&gt;Mon Feb 2 00:48:19 2009&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:courier new;color:#ff0000;"&gt;MMNL: terminating instance due to error 472&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:courier new;color:#ff0000;"&gt;Instance terminated by MMNL, pid = 4493&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:courier new;color:#ff0000;"&gt;_____________________________________________________________&lt;/span&gt;&lt;/em&gt;&lt;em&gt;&lt;span style="font-family:courier new;color:#ff0000;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:Courier New;color:#ff0000;"&gt;&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;span style="font-family:lucida grande;"&gt;&lt;strong&gt;&lt;span style="color:#000000;"&gt;&lt;u&gt;Suspects&lt;/u&gt;:&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:Courier New;color:#000000;"&gt;&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;span style="font-family:lucida grande;color:#000000;"&gt;I found that this error is caused because the ORA_NLS10 variable is not set when the database was started or is set to an incorrect value.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;span style="color:#000000;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;strong&gt;&lt;span style="color:#000000;"&gt;&lt;u&gt;Case Resolution&lt;/u&gt;:&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="font-family:Courier New;color:#000000;"&gt;&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;span style="color:#000000;"&gt;1. set the env variable ORA_NLS10 as below:&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;span style="color:#000000;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;span style="color:#000000;"&gt;&lt;em&gt;&lt;span style="font-family:courier new;color:#6600cc;"&gt;export ORA_NLS10=$ORACLE_HOME/nls/data/9idata (for an Apps instance).&lt;/span&gt;&lt;/em&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;span style="color:#000000;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;span style="color:#000000;"&gt;2. Startup the database.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;span style="color:#000000;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;span style="color:#000000;"&gt;3. Startup all the Apps services.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;span style="color:#000000;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;strong&gt;&lt;span style="color:#000000;"&gt;&lt;u&gt;Witnesses&lt;/u&gt;:&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;strong&gt;&lt;span style="color:#000000;"&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;span style="color:#000000;"&gt;1. Metalink Note: 420069.1&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;span style="color:#000000;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;span style="color:#000000;"&gt;2. Metalink Note: 567472.1&lt;/span&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1102785860137074059-6423064300743449982?l=bkpappsdba.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bkpappsdba.blogspot.com/feeds/6423064300743449982/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1102785860137074059&amp;postID=6423064300743449982' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/6423064300743449982'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/6423064300743449982'/><link rel='alternate' type='text/html' href='http://bkpappsdba.blogspot.com/2009/02/curious-case-of-database-crash-and.html' title='The curious case of database crash and ORA_NLS10'/><author><name>Praveen</name><uri>http://www.blogger.com/profile/09645880422225153776</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-1102785860137074059.post-287045954192491200</id><published>2009-02-02T15:17:00.009+05:30</published><updated>2009-02-02T15:52:50.273+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='CONTEXT_FILE'/><category scheme='http://www.blogger.com/atom/ns#' term='AF Variables'/><title type='text'>AF Variables in CONTEXT_FILE - What they are and their use.</title><content type='html'>&lt;span style="font-family:verdana;font-size:100%;"&gt;&lt;div align="justify"&gt;I was trying to find something in the CONTEXT_FILE when I happened to notice the AF_CLASSPATH env variable (not that I haven't noticed it earlier). But this time, it set me thinking as to what might its purpose be since we already had a CLASSPATH variable and its value seemed to be the same as the AF_CLASSPATH variable.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;I found 3 variables starting with AF:&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;ol&gt;&lt;li&gt;&lt;div align="justify"&gt;AF_JRE_TOP&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;div align="justify"&gt;AF_CLASSPATH&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;div align="justify"&gt;AFJVAPRG.&lt;br /&gt;&lt;/div&gt;&lt;/li&gt;&lt;/ol&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;I wanted to find out what they were and why they were used.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;This is the explanation provided in Metalink Note &lt;a href="https://metalink2.oracle.com/metalink/plsql/f?p=130:14:3026520170760242231::::p14_database_id,p14_docid,p14_show_header,p14_show_help,p14_black_frame,p14_font:NOT,412709.1,1,1,1,helvetica"&gt;412709.1&lt;/a&gt; (Oracle Workflow Documentation Updates for 11i.ATG_PF.H.delta.5 (RUP 5))&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:georgia;color:#ff0000;"&gt;&lt;em&gt;AFJVAPRG - The location of the JDK or JRE executable for the concurrent processing tier.&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;br /&gt;&lt;span style="font-family:georgia;color:#ff0000;"&gt;&lt;em&gt;AF_CLASSPATH - The classpath for the concurrent processing tier.&lt;br /&gt;&lt;br /&gt;&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;Also, Note &lt;a href="https://metalink2.oracle.com/metalink/plsql/f?p=130:14:3026520170760242231::::p14_database_id,p14_docid,p14_show_header,p14_show_help,p14_black_frame,p14_font:NOT,373386.1,1,1,1,helvetica"&gt;373386.1&lt;/a&gt; has this to say about AF_CLASSPATH.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;em&gt;&lt;span style="font-family:georgia;color:#ff0000;"&gt;The AF_CLASSPATH variable is used by JAVA concurrent programs and must use literal (full) path values.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;By combining the above two notes, we can perhaps safely say that the AF variables are set for letting programs know the location of java (AFJVAPRG), JRE (AF_JRE_TOP) and the classpath (AF_CLASSPATH) on the concurrent node.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;Also, note that these variables are also set on the web node (and must be set to valid values too).&lt;/div&gt;&lt;div align="justify"&gt; &lt;/div&gt;&lt;div align="justify"&gt; &lt;/div&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1102785860137074059-287045954192491200?l=bkpappsdba.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bkpappsdba.blogspot.com/feeds/287045954192491200/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1102785860137074059&amp;postID=287045954192491200' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/287045954192491200'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/287045954192491200'/><link rel='alternate' type='text/html' href='http://bkpappsdba.blogspot.com/2009/02/af-variables-what-they-are-and-their.html' title='AF Variables in CONTEXT_FILE - What they are and their use.'/><author><name>Praveen</name><uri>http://www.blogger.com/profile/09645880422225153776</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-1102785860137074059.post-8199892612822789460</id><published>2009-01-23T12:21:00.006+05:30</published><updated>2009-02-02T15:53:34.263+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='CPU'/><category scheme='http://www.blogger.com/atom/ns#' term='11.5.9'/><category scheme='http://www.blogger.com/atom/ns#' term='desupported'/><title type='text'>11.5.9 Desupported from 1st July 2008</title><content type='html'>&lt;div align="justify"&gt;&lt;span style="font-family:trebuchet ms;"&gt;Yesterday, I was analysing CPU patches for a 11.5.9 instance. That is when I found out that 11.5.9 is desupported as far as CPU patches are concerned since July 2008. Below is the extract from the July 2008 CPU advisory for EBS (Note 605117.1).&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:Trebuchet MS;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div align="justify"&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;blockquote&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;strong&gt;Oracle E-Business Suite Release 11.5.9 has been desupported as of 01-July-2008.&lt;/strong&gt;&lt;/span&gt;&lt;/blockquote&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:Trebuchet MS;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;Hence, there would not be any further CPUs released by Oracle for 11.5.9. To verify this, I checked the Oct 2008 CPU advisory for EBS (note 738921.1), which expectedly did NOT contain any CPUs for 11.5.9.&lt;/div&gt;&lt;div align="justify"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1102785860137074059-8199892612822789460?l=bkpappsdba.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='https://metalink2.oracle.com/metalink/plsql/ml2_documents.showDocument?p_database_id=NOT&amp;p_id=605117.1' title='11.5.9 Desupported from 1st July 2008'/><link rel='replies' type='application/atom+xml' href='http://bkpappsdba.blogspot.com/feeds/8199892612822789460/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1102785860137074059&amp;postID=8199892612822789460' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/8199892612822789460'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/8199892612822789460'/><link rel='alternate' type='text/html' href='http://bkpappsdba.blogspot.com/2009/01/1159-desupported-from-1st-july-2008.html' title='11.5.9 Desupported from 1st July 2008'/><author><name>Praveen</name><uri>http://www.blogger.com/profile/09645880422225153776</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-1102785860137074059.post-5251845543508655170</id><published>2009-01-21T19:19:00.009+05:30</published><updated>2009-01-23T12:02:50.302+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Multi-org'/><title type='text'>Pre-requisites to "Convert to Multi-org"</title><content type='html'>&lt;div style="TEXT-ALIGN: justify" face="verdana"&gt;Many a time, DBAs are entrusted with the task of "convert to Multi-org" as soon as an Apps instance is installed. Though, the DBAs perform this task blindly, there is a lot (according to me) of setup work that needs to be completed, before "Convert to Multi-org" can succeed.&lt;br /&gt;&lt;br /&gt;I have tried, in this blog entry, to list out these tasks. Please go through the references mentioned below for explanation about the different terms/terminology like Legal Entity, Operating Unit etc.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="FONT-WEIGHT: bold"&gt;&lt;u&gt;Step I - Define Work Location&lt;/u&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Set the profile option HR:User Type for a given responsibility (that we are going to use to define the work location say Global HRMS Manager) to HR User.&lt;br /&gt;&lt;br /&gt;Global HRMS Manager (responsibility) --&gt; Work Structures --&gt; Location&lt;br /&gt;&lt;br /&gt;Provide:&lt;br /&gt;&lt;br /&gt;1. Location Name&lt;br /&gt;2. Location Address&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="FONT-WEIGHT: bold"&gt;&lt;u&gt;Step II - Define Business group&lt;/u&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Set the profile option HR:User Type for a given responsibility (that we are going to use to define the work location say Global HRMS Manager) to HR User.&lt;br /&gt;&lt;br /&gt;Global HRMS Manager (responsibility) --&gt; Work Structures --&gt; Organization --&gt; Description&lt;br /&gt;&lt;br /&gt;1. Select New.&lt;br /&gt;&lt;br /&gt;2. Provide the Business group name.&lt;br /&gt;&lt;br /&gt;3. Select Location as the one defined above.&lt;br /&gt;&lt;br /&gt;4. Select Business Group as the Organization Classification and save.&lt;br /&gt;&lt;br /&gt;5. Click on Others and fill the "Business Group Info."&lt;br /&gt;&lt;br /&gt;6. Select HR Organization as the Organization Classification and save.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="FONT-WEIGHT: bold"&gt;&lt;u&gt;Step III - Define Currencies&lt;/u&gt;&lt;/span&gt;&lt;u&gt;&lt;/u&gt; -- Not required as USD is already available. If you want any other currency to be defined, then follow the below navigation.&lt;br /&gt;&lt;br /&gt;General Ledger Super User (responsibility) --&gt; Setup --&gt; Currencies --&gt; Define&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="FONT-WEIGHT: bold"&gt;&lt;u&gt;Step IV - Define Value sets for Accounting key flexfield&lt;/u&gt;&lt;/span&gt;&lt;u&gt;&lt;/u&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="FONT-WEIGHT: bold"&gt;&lt;u&gt;Note 1&lt;/u&gt;:&lt;/span&gt; In order to create the set of books (SOB), the 3C's have to be defined:&lt;br /&gt;&lt;br /&gt;a. Currency&lt;br /&gt;b. Calendar&lt;br /&gt;c. Chart of Accounts (COA)&lt;br /&gt;&lt;br /&gt;&lt;span style="FONT-WEIGHT: bold"&gt;&lt;u&gt;Note 2&lt;/u&gt;:&lt;/span&gt; For creating a SOB, a minimum of 3 segments have to be defined. The maximum is 30.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;1. Create value sets for the key flex field.&lt;br /&gt;&lt;br /&gt;General Ledger Super User (responsibility) --&gt; Setup --&gt; Financials --&gt; Flexfields --&gt; Validation --&gt; Sets&lt;br /&gt;&lt;br /&gt;eg:&lt;br /&gt;Seg1 (value set/segment for org code) - Char, Max Length = 3, Indendependent&lt;br /&gt;Seg2 (value set/segment for cost centre) - Char, Max Length = 4, Indendependent&lt;br /&gt;Seg3 (value set/segment for natural accounting code) - Char, Max Length = 5, Indendependent&lt;br /&gt;&lt;br /&gt;2. Add values to the value set.&lt;br /&gt;&lt;br /&gt;General Ledger Super User (responsibility) --&gt; Setup --&gt; Financials --&gt; Flexfields --&gt; Validation --&gt; Values&lt;br /&gt;&lt;br /&gt;eg:&lt;br /&gt;&lt;span style="FONT-WEIGHT: bold"&gt;&lt;br /&gt;&lt;u&gt;For Seg1&lt;/u&gt;&lt;/span&gt;&lt;span style="FONT-WEIGHT: bold"&gt;&lt;u&gt;&lt;/u&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;001 - BKP1 (Org Name)&lt;br /&gt;002 - BKP2 (Org Name)&lt;br /&gt;003 - BKP3 (Org Name)&lt;br /&gt;&lt;br /&gt;&lt;span style="FONT-WEIGHT: bold"&gt;&lt;u&gt;&lt;/u&gt;&lt;/span&gt;&lt;span style="FONT-WEIGHT: bold"&gt;&lt;u&gt;For Seg2&lt;/u&gt;&lt;/span&gt;&lt;span style="FONT-WEIGHT: bold"&gt;&lt;u&gt;&lt;/u&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;0001 - HR (Cost Center)&lt;br /&gt;0002 - Admin (Cost Center)&lt;br /&gt;0003 - Finance (Cost Center)&lt;br /&gt;0004 - IT (Cost Center)&lt;br /&gt;&lt;br /&gt;&lt;span style="FONT-WEIGHT: bold"&gt;&lt;/span&gt;&lt;span style="FONT-WEIGHT: bold"&gt;&lt;u&gt;&lt;/u&gt;&lt;/span&gt;&lt;span style="FONT-WEIGHT: bold"&gt;&lt;u&gt;For Seg3&lt;/u&gt;&lt;/span&gt;&lt;span style="FONT-WEIGHT: bold"&gt;&lt;u&gt;&lt;/u&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;0001 - Expenses (Accounting Code)&lt;br /&gt;0002 - Salary (Accounting Code)&lt;br /&gt;0003 - Misc. Expenses (Accounting Code)&lt;br /&gt;0004 - PF (Accounting Code)&lt;br /&gt;0005 - Retained Earnings (Accounting Code) - Qualifier should be "Yes,Tes,Ownership/Stockholder's Equity/Fund Balance"&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;3. Define Key Flexfield (Chart of Accounts).&lt;br /&gt;&lt;br /&gt;General Ledger Super User (responsibility) --&gt; Setup --&gt; Financials --&gt; Flexfields --&gt; Key --&gt; Segments&lt;br /&gt;&lt;br /&gt;a. Search for Accounting Flexfield&lt;br /&gt;&lt;br /&gt;b. Provide Code Name = BKP_COA and Code_Title = BKP_Accounting Flexfield&lt;br /&gt;&lt;br /&gt;c. Check "Allow Dynamic Inserts".&lt;br /&gt;&lt;br /&gt;d. Click on Segments.&lt;br /&gt;&lt;br /&gt;e. Define 3 segments as below:&lt;br /&gt;&lt;br /&gt;eg:&lt;br /&gt;&lt;br /&gt;BKP_Seg1 -&gt; Column = Segment1, Value set name = Seg1, Qualifier = Balancing Segment&lt;br /&gt;BKP_Seg2 -&gt; Column = Segment2, Value set name = Seg2, Qualifier = Cost Center Segment&lt;br /&gt;BKP_Seg3 -&gt; Column = Segment3, Value set name = Seg3, Qualifier = Natural Account Segment&lt;br /&gt;&lt;br /&gt;f. Save the segments.&lt;br /&gt;&lt;br /&gt;g. Compile&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;u&gt;&lt;span style="FONT-WEIGHT: bold"&gt;Step V - Define Period Type/Accounting Calendar&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;br /&gt;&lt;br /&gt;1. Define accounting period type if not already defined. -- Not required as it is already defined.&lt;br /&gt;&lt;br /&gt;General Ledger Super User (responsibility) --&gt; Setup --&gt; Financials --&gt; Calendar --&gt; Types&lt;br /&gt;&lt;br /&gt;2. Define accounting period.&lt;br /&gt;&lt;br /&gt;General Ledger Super User (responsibility) --&gt; Setup --&gt; Financials --&gt; Calendar --&gt; Accounting&lt;br /&gt;&lt;br /&gt;eg: Name = BKP_CAL&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="FONT-WEIGHT: bold"&gt;&lt;u&gt;Step VI - Define Sets of Books&lt;/u&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;5. Define Set of books.&lt;br /&gt;&lt;br /&gt;General Ledger Super User (responsibility) --&gt; Setup --&gt; Financials --&gt; Books --&gt; Define&lt;br /&gt;&lt;br /&gt;eg:&lt;br /&gt;&lt;br /&gt;Name = BKP_SOB, COA = as defined in step 3, calendar name = as defined in step 4, retained earnings = 001.0001.0007&lt;br /&gt;&lt;br /&gt;&lt;span style="FONT-WEIGHT: bold"&gt;&lt;/span&gt;&lt;u&gt;&lt;/u&gt;&lt;span style="FONT-WEIGHT: bold"&gt;&lt;u&gt;Note&lt;/u&gt;&lt;/span&gt;&lt;u&gt;&lt;/u&gt;&lt;span style="FONT-WEIGHT: bold"&gt;:&lt;/span&gt; If you receive the below error in retained earnings tab, follow metalink note: 150161.1&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="COLOR: rgb(255,0,0)"&gt;APP-FND-00822: Program error: Invalid arguments to the flexfield routines. Please inform your support representative that:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="COLOR: rgb(255,0,0)"&gt;Routine FDFGVP was unable to find the segment qualifier. The flexfield user exits #FND LOADID, #FND POPID, or #FND VALID have been called incorrectly.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="COLOR: rgb(255,0,0)"&gt;Make sure the segment qualifiers specified match those defined in the Define Qualifiers form. (ATTYPE=DETAIL_POSTING_ALLOWED)&lt;/span&gt;&lt;br /&gt;&lt;span style="COLOR: rgb(255,0,0)"&gt;____________________________________________________________________&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="COLOR: rgb(255,0,0)"&gt;APP-FND-00730: This flexfield has an invalid value set. It may use a special value set that uses an Edit event user exit, and the user exit has failed. If you are using a form on a graphical user interface (GUI) you may have an invalid value set of a different type, possibly a table-validated value set where the table or view does not exist or where there is an invalid WHERE clause.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="COLOR: rgb(255,0,0)"&gt;Contact your system administrator or support representative to check and correct the value sets this flexfield uses.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="FONT-WEIGHT: bold"&gt;&lt;/span&gt;&lt;u&gt;&lt;/u&gt;&lt;span style="FONT-WEIGHT: bold"&gt;&lt;u&gt;Step VII - Define Organizations&lt;/u&gt;&lt;/span&gt;&lt;u&gt;&lt;/u&gt;&lt;br /&gt;&lt;br /&gt;1. Set the profile option HR:User Type for a given responsibility (that we are going to use to define the legal entity say Inventory) to HR User.&lt;br /&gt;&lt;br /&gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;Define Legal Entity&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;br /&gt;&lt;br /&gt;Inventory --&gt; Setup --&gt; Organizations --&gt; Organizations&lt;br /&gt;&lt;br /&gt;a. Name = BKP_LE&lt;br /&gt;&lt;br /&gt;b. Select Location as the one defined above and save.&lt;br /&gt;&lt;br /&gt;c. Select "GRE / Legal Entity" as the Organization Classification and save.&lt;br /&gt;&lt;br /&gt;d. Click on Others and fill in "Employer Identification" and save.&lt;br /&gt;&lt;br /&gt;e. Click on Others and fill in "Legal Entity Accounting" (specify the name of the set of books created above) and save.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;Define Operating Unit&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;br /&gt;&lt;br /&gt;Inventory --&gt; Setup --&gt; Organizations --&gt; Organizations&lt;br /&gt;&lt;br /&gt;a. Name = BKP_OU&lt;br /&gt;&lt;br /&gt;b. Select Location as the one defined above and save.&lt;br /&gt;&lt;br /&gt;c. Select "Operating Unit" as the Organization Classification and save.&lt;br /&gt;&lt;br /&gt;d. Click on Others and fill in "Operating Unit Information" (Legal Entity = as defined above, SOB = as defined in step VI) and save.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="FONT-WEIGHT: bold"&gt;&lt;/span&gt;&lt;u&gt;&lt;/u&gt;&lt;span style="FONT-WEIGHT: bold"&gt;&lt;u&gt;Step VIII - Set Profile Options&lt;/u&gt;&lt;/span&gt;&lt;u&gt;&lt;/u&gt;&lt;br /&gt;&lt;br /&gt;* Profile Option: HR : Business Group at site and responsibility level (to the business group defined above in step II)&lt;br /&gt;* Profile Option: HR : Security profile at site and responsibility level (to the business group defined above in step II)&lt;br /&gt;* Profile Option: MO: Operating Unit at site and responsibility level (to the Operating Unit defined above in step VII)&lt;br /&gt;* Profile Option: MO: Default Operating Unit at site and responsibility level (to the Operating Unit defined above in step VII)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="FONT-WEIGHT: bold"&gt;&lt;/span&gt;&lt;u&gt;&lt;/u&gt;&lt;span style="FONT-WEIGHT: bold"&gt;&lt;u&gt;Step IX - Convert to Multi-org&lt;/u&gt;&lt;/span&gt;&lt;u&gt;&lt;/u&gt;&lt;br /&gt;&lt;br /&gt;1. Stop all services.&lt;br /&gt;&lt;br /&gt;2. Run adadmin to "Convert to Multi-org".&lt;br /&gt;&lt;br /&gt;3. If you receive a error saying :&lt;br /&gt;&lt;br /&gt;&lt;span style="COLOR: rgb(255,0,0)"&gt;The worker completed and during post run of sub driver "admocnv.drv"&lt;/span&gt;&lt;br /&gt;&lt;span style="COLOR: rgb(255,0,0)"&gt;it failed as the following file does not exist&lt;/span&gt;&lt;br /&gt;&lt;span style="COLOR: rgb(255,0,0)"&gt;================================&lt;/span&gt;&lt;br /&gt;&lt;span style="COLOR: rgb(255,0,0)"&gt;Warning: File /u01/app/DEV/devappl/ar/11.5.0/patch/115/sql/arhmgmul.sql&lt;/span&gt;&lt;br /&gt;&lt;span style="COLOR: rgb(255,0,0)"&gt;does not exist&lt;/span&gt;&lt;br /&gt;&lt;span style="COLOR: rgb(255,0,0)"&gt;===============================&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;apply patch 2451368 as per Metalink Note: 284699.1&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="FONT-WEIGHT: bold"&gt;&lt;/span&gt;&lt;u&gt;&lt;/u&gt;&lt;span style="FONT-WEIGHT: bold"&gt;&lt;u&gt;References&lt;/u&gt;&lt;/span&gt;&lt;u&gt;&lt;/u&gt;&lt;span style="FONT-WEIGHT: bold"&gt;:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;1. http://www.oracleappshub.com/general-ledger/11i-setup-for-le-ou/&lt;br /&gt;&lt;br /&gt;2. Metalink Note:284699.1&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1102785860137074059-5251845543508655170?l=bkpappsdba.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bkpappsdba.blogspot.com/feeds/5251845543508655170/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1102785860137074059&amp;postID=5251845543508655170' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/5251845543508655170'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/5251845543508655170'/><link rel='alternate' type='text/html' href='http://bkpappsdba.blogspot.com/2009/01/pre-requisites-to-convert-to-multi-org.html' title='Pre-requisites to &quot;Convert to Multi-org&quot;'/><author><name>Praveen</name><uri>http://www.blogger.com/profile/09645880422225153776</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>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1102785860137074059.post-2836514715449734567</id><published>2009-01-13T14:39:00.007+05:30</published><updated>2009-01-23T12:01:35.984+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='MT882'/><category scheme='http://www.blogger.com/atom/ns#' term='WRT54GC'/><category scheme='http://www.blogger.com/atom/ns#' term='wireless'/><category scheme='http://www.blogger.com/atom/ns#' term='Configure'/><title type='text'>Configure Linksys Wireless Router WRT54GC with BSNL SmartAX MT882 modem</title><content type='html'>&lt;div style="TEXT-ALIGN: justify"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:verdana;"&gt;It has been a long time since I blogged (almost 2 months, to be precise), more due to paucity of time than anything else.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:verdana;"&gt;In the meantime, I have been busy configuring the Linksys Wireless Router and my new HTC smartphone.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:verdana;"&gt;I had to struggle a lot to configure the Linksys router WRT54GC to work with the BSNL (ISP) provided modem SmartAX MT882. So, I have prepared a list of steps that can be used to configure the Linksys router with BSNL (though the navigation is specific to SmartAX MT882, I believe the solution can be transposed on any other type of modem too).&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:verdana;"&gt;Click &lt;/span&gt;&lt;a style="FONT-FAMILY: verdana" href="http://www.indiabroadband.net/bsnl-broadband/12933-unable-configure-linksys-wrt54gc-router-work-bsnl-modem-router-mt882.html#post87191"&gt;here&lt;/a&gt;&lt;span style="font-family:verdana;"&gt; for the step by step configuration guide.&lt;/span&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/1102785860137074059-2836514715449734567?l=bkpappsdba.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.indiabroadband.net/bsnl-broadband/12933-unable-configure-linksys-wrt54gc-router-work-bsnl-modem-router-mt882.html#post87191' title='Configure Linksys Wireless Router WRT54GC with BSNL SmartAX MT882 modem'/><link rel='replies' type='application/atom+xml' href='http://bkpappsdba.blogspot.com/feeds/2836514715449734567/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1102785860137074059&amp;postID=2836514715449734567' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/2836514715449734567'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/2836514715449734567'/><link rel='alternate' type='text/html' href='http://bkpappsdba.blogspot.com/2009/01/configure-linksys-wireless-router.html' title='Configure Linksys Wireless Router WRT54GC with BSNL SmartAX MT882 modem'/><author><name>Praveen</name><uri>http://www.blogger.com/profile/09645880422225153776</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-1102785860137074059.post-6658309094820504492</id><published>2008-11-21T11:53:00.006+05:30</published><updated>2008-11-21T15:24:35.787+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='R12'/><category scheme='http://www.blogger.com/atom/ns#' term='installation'/><category scheme='http://www.blogger.com/atom/ns#' term='Solaris'/><title type='text'>R12 install and post install Issues in 64 Bit Solaris</title><content type='html'>&lt;div  style="font-family:verdana;"&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-weight: normal;font-family:georgia;font-size:100%;"  &gt;Recently, I installed R12 on Sun SPARC Solaris 64 Bit and I faced a few issues that I have listed below.&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;BR&gt;&lt;br /&gt;Issue 1&lt;br /&gt;&lt;br /&gt;&lt;/div&gt; &lt;div face="verdana"&gt; &lt;/div&gt; &lt;div style="font-family: verdana; color: rgb(0, 0, 0);"&gt;Installation errors with the below error in  &lt;timestamp&gt;.log.&lt;br /&gt;&lt;br /&gt;&lt;/timestamp&gt;&lt;/div&gt; &lt;div face="verdana"&gt; &lt;/div&gt; &lt;div  style="color: rgb(51, 0, 153); font-style: italic;font-family:trebuchet ms;"&gt;&lt;span style="font-size:85%;"&gt;Statusstring Configuring Database&lt;br /&gt;..&lt;br /&gt;Log file  located at ../ApplyDatabase_&lt;timestamp&gt;.log&lt;br /&gt;..&lt;br /&gt;RC-50004: Fatal:  Error occurred in ApplyDatabase:&lt;br /&gt;Control file creation failed&lt;br /&gt;Cannot  execute configure of database using RapidClone&lt;br /&gt;RW-50010: Error: - script has  returned an error: 1&lt;br /&gt;RW-50004: Error code received when running external  process.&lt;/timestamp&gt;&lt;/span&gt;&lt;/div&gt; &lt;div face="verdana"&gt; &lt;/div&gt; &lt;div style="font-family: verdana;"&gt;&lt;span style="font-size:85%;"&gt;&lt;u&gt;&lt;br /&gt;Error in  ApplyDatabase_&lt;timestamp&gt;.log&lt;/timestamp&gt;&lt;/u&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;span style=";font-family:verdana;font-size:85%;"  &gt; &lt;div&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 0, 153); font-style: italic;font-family:trebuchet ms;" &gt;WARNING: Default Temporary Tablespace not specified in  CREATE DATABASE command&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 0, 153); font-style: italic;font-family:trebuchet ms;" &gt;Default Temporary Tablespace will be necessary for a  locally managed database in future release&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 0, 153); font-style: italic;font-family:trebuchet ms;" &gt;Mon Nov 17 01:05:46 2008&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 0, 153); font-style: italic;font-family:trebuchet ms;" &gt;Errors  in file  /opt/apps/Release12/db/tech_st/10.2.0/admin/R12VIS_suomt06k/udump/r12vis_ora_3206.trc:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 0, 153); font-style: italic;font-family:trebuchet ms;" &gt;ORA-01565:  error in identifying file  '/opt/apps/Release12/db/apps_st/data/sys5.dbf'&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 0, 153); font-style: italic;font-family:trebuchet ms;" &gt;ORA-27037: unable to obtain  file status&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 0, 153); font-style: italic;font-family:trebuchet ms;" &gt;SVR4 Error: 25: Inappropriate ioctl for device&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;&lt;strong&gt;&lt;u&gt;Cause&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;&lt;/div&gt; &lt;div&gt;ST Patch 5752399 was not included in 12.0.4 media as it  was not detected before the media was cut. Likelyhood of occurance is limited to  specific hardware setup.&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;&lt;br /&gt;&lt;strong&gt;&lt;u&gt;Solution&lt;/u&gt;&lt;/strong&gt;&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;Apply Patch 5752399 while installation is  underway.&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;   1. Wipe out the failed installation and restart a new  one.&lt;br /&gt;2. Closely monitor the progress to catch the time it starts copying  the datafiles.&lt;br /&gt;3. While datafiles are being copied go ahead and apply  patch 5752399 with following steps before rapidinstall calls the  adcrdb.sh.&lt;br /&gt;1. cd &lt;oracle_home&gt;/rdbms/lib&lt;br /&gt;2. mv  config.s config.s.before5752399&lt;br /&gt;3. cp config.s.ouibak.3  config.s&lt;br /&gt;4. Apply the patch 5752399&lt;br /&gt;5. Try SQL*Plus and  make sure it doesn't fail with ORA-3113&lt;br /&gt;4. If above steps are completed  before adcrdb.sh, install will continue successfully, otherwise repeat the steps  but faster.&lt;/oracle_home&gt;&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;&lt;br /&gt;&lt;strong&gt;&lt;u&gt;References&lt;/u&gt;:  &lt;/strong&gt;NOTE:565966.1&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:180%;"&gt;&lt;strong&gt;Issue 2&lt;br /&gt;&lt;br /&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="color: rgb(0, 0, 0);"&gt; &lt;/div&gt; &lt;div style="color: rgb(0, 0, 0);"&gt;&lt;span style="font-size:100%;"&gt;Unzip of appltop failed during  install with the below error.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div style="color: rgb(51, 0, 153); font-style: italic; font-family: trebuchet ms;"&gt;Unzip Failed:&lt;/div&gt; &lt;div style="color: rgb(51, 0, 153); font-style: italic; font-family: trebuchet ms;"&gt; &lt;/div&gt; &lt;div style="color: rgb(51, 0, 153); font-style: italic; font-family: trebuchet ms;"&gt;Cannot execute install of appltop&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;&lt;br /&gt;&lt;strong&gt;&lt;u&gt;Cause&lt;br /&gt;&lt;br /&gt;&lt;/u&gt;&lt;/strong&gt;&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;APPL_TOP zip files were not unzipped  correctly.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;&lt;strong&gt;&lt;u&gt;Solution&lt;br /&gt;&lt;br /&gt;&lt;/u&gt;&lt;/strong&gt;&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;Unzip all the APPL_TOP zip files once more. That did not work unfortunately. Then, I downloaded the zip file which has an issue once more from edelivery and proceeded with the installation.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;&lt;strong&gt;&lt;u&gt;References&lt;/u&gt;: &lt;/strong&gt;NA&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-size:180%;"&gt;Issue 3&lt;/span&gt;&lt;/strong&gt;&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div style="color: rgb(0, 0, 0);"&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;HTTP services weren't started after  install. Output of opmn log file  (/opt/apps/Release12/inst/apps/R12VIS_suomt06k/logs/appl/admin/log/adopmnctl.txt)  as below.&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/span&gt;&lt;span style=";font-family:verdana;font-size:85%;"  &gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 0, 153); font-style: italic;font-family:trebuchet ms;" &gt;11/17/08-07:18:57 :: adopmnctl.sh: Starting Oracle  Process Manager (OPMN)&lt;/span&gt;&lt;/div&gt; &lt;div style="color: rgb(51, 0, 153); font-style: italic; font-family: trebuchet ms;"&gt; &lt;/div&gt; &lt;div style="color: rgb(51, 0, 153); font-style: italic; font-family: trebuchet ms;"&gt;libopmnoraclenls.so: unable to load  ÿ¿òPÿ¿ò\206ÿ¿ò\211ÿ¿ò\214&lt;br /&gt;main: NLS initialization  failed!!&lt;br /&gt;libopmnoraclenls.so: unable to load ÿ¿òHÿ¿ò~&lt;br /&gt;main: NLS  initialization failed!!&lt;br /&gt;libopmnoraclenls.so: unable to load  ÿ¿ñÈÿ¿ñþÿ¿ò^Aÿ¿ò^D&lt;br /&gt;main: NLS initialization failed!!&lt;br /&gt;opmnctl: opmn start  failed.&lt;/div&gt; &lt;div style="color: rgb(51, 0, 153); font-style: italic; font-family: trebuchet ms;"&gt; &lt;/div&gt; &lt;div style="color: rgb(51, 0, 153); font-style: italic; font-family: trebuchet ms;"&gt;11/17/08-07:18:58 :: adopmnctl.sh: exiting with status  2&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;&lt;br /&gt;&lt;strong&gt;&lt;u&gt;Cause&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;This issue is due to the libclntsh.so.10.1 library not  being present under the lib32 folder.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;&lt;strong&gt;&lt;u&gt;Solution&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;1) Simply copy the file libclntsh.so.10.1 file from a  working&lt;br /&gt;environment  to non-working environment into the lib32  directory.&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;But, this is applicable only to the same version of  OS.&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;OR&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;2) You can generate libclntsh.so.10.1 by executing the  following command&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;$10.1.3_OH/bin/genclntsh -32&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;3) Setting the correct oracle home to 10.1.3 then running  that ./bin/genclntsh helps:&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;&lt;br /&gt;If you run with the -32 option it updates the ./lib32  version of libclntsh.so.10.1&lt;br /&gt;If you run without the -32 option it updates the  ./lib version of libclntsh.so.10.1&lt;br /&gt;( and similarly if it was set to 10.1.2,  libclntsh.so.10.1 will be created in 10.1.2/lib )&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;So it is very important to set OH to 10.1.3.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;&lt;strong&gt;&lt;u&gt;References&lt;/u&gt;:&lt;/strong&gt;  NOTE:413109.1&lt;br /&gt;&lt;br /&gt;&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-size:180%;"&gt;Issue 4&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;When attempting to open any forms, the following error  occurs:&lt;br /&gt;&lt;br /&gt;&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div style="color: rgb(51, 0, 153); font-style: italic; font-family: trebuchet ms;"&gt;ERROR&lt;br /&gt;FRM-40833: Could not completely load the dynamic  user exit libraries.&lt;br /&gt;User exit FND did not execute.&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;&lt;strong&gt;&lt;u&gt;&lt;br /&gt;Cause&lt;br /&gt;&lt;br /&gt;&lt;/u&gt;&lt;/strong&gt;&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;Relink generated a corrupted $FND_TOP/bin/fndfmxit.so due  to missing $GMA_TOP/lib/libgma.a.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;&lt;strong&gt;&lt;u&gt;Solution&lt;br /&gt;&lt;br /&gt;&lt;/u&gt;&lt;/strong&gt;&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;1. Copy the library libgma.a from a backup taken after  installation of RUP3 patch to $GMA_TOP/lib&lt;br /&gt;2. Relink fndfmxit.so by  running:&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;   adrelink.sh force=y "fnd fndfmxit.so"&lt;br /&gt;&lt;br /&gt;&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;&lt;strong&gt;&lt;u&gt;References&lt;/u&gt;:&lt;/strong&gt;  NOTE:554927.1&lt;br /&gt;&lt;br /&gt;&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-size:180%;"&gt;Issue 5&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;Concurrent Managers weren't coming up. The error in the  ICM log file ($APPLCSF/$APPLLOG/&lt;sid&gt;_&lt;mmdd&gt;.mgr)&lt;br /&gt;&lt;br /&gt;&lt;/mmdd&gt;&lt;/sid&gt;&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div style="font-style: italic; color: rgb(51, 0, 153); font-family: trebuchet ms;"&gt;ld.so.1: FNDLIBR: fatal:  /opt/apps/Release12/apps/tech_st/10.1.2/lib/libclntsh.so.10.1: wrong ELF class:  ELFCLASS64&lt;br /&gt;Killed&lt;br /&gt;The &lt;a title="mailto:R12VIS_1117@R12VIS" href="mailto:R12VIS_1117@R12VIS"&gt;&lt;span title="mailto:R12VIS_1117@R12VIS"&gt;R12VIS_1117@R12VIS&lt;/span&gt;&lt;/a&gt; internal concurrent  manager has terminated with status 137 - giving up.&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;&lt;br /&gt;&lt;strong&gt;&lt;u&gt;Cause&lt;br /&gt;&lt;br /&gt;&lt;/u&gt;&lt;/strong&gt;&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;Using a 64 bit executable and trying to link to 32 bit  libraries.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;&lt;strong&gt;&lt;u&gt;Solution&lt;br /&gt;&lt;br /&gt;&lt;/u&gt;&lt;/strong&gt;&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;1) You can generate libclntsh.so.10.1 under  $10.1.2_ORACLE_HOME/lib32 by executing the following command&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;$10.1.2_OH/bin/genclntsh -32&lt;br /&gt;&lt;br /&gt;&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;&lt;span class="922042512-18112008"&gt;&lt;strong&gt;&lt;u&gt;References&lt;/u&gt;:&lt;/strong&gt; NOTE:604084.1, NOTE:413109.1&lt;/span&gt;&lt;/div&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1102785860137074059-6658309094820504492?l=bkpappsdba.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bkpappsdba.blogspot.com/feeds/6658309094820504492/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1102785860137074059&amp;postID=6658309094820504492' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/6658309094820504492'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/6658309094820504492'/><link rel='alternate' type='text/html' href='http://bkpappsdba.blogspot.com/2008/11/r12-install-and-post-install-issues-in.html' title='R12 install and post install Issues in 64 Bit Solaris'/><author><name>Praveen</name><uri>http://www.blogger.com/profile/09645880422225153776</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-1102785860137074059.post-7248372382321211801</id><published>2008-11-06T11:46:00.006+05:30</published><updated>2008-11-06T12:45:36.349+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='jdbc connection'/><title type='text'>Check JDBC Connection String using java</title><content type='html'>&lt;div style="text-align: justify;"&gt;Sometimes, I have faced a situation wherein the tnsping to the database is working but the JDBC connection fails. So, in order to check the JDBC connection string, one has to use a java program, which unfortunately isn't my forte.&lt;br /&gt;&lt;br /&gt;Thankfully, my friend, Padmaraj, who is a SME on java gave me a small piece of code which works wonderfully well.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;u&gt;&lt;/u&gt;&lt;/span&gt;&lt;blockquote&gt;&lt;span style="font-weight: bold;"&gt;&lt;u&gt;Note&lt;/u&gt;&lt;/span&gt;: Save the below java program as ReadCharacter.java, else the program won't work.&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 51, 255);font-size:85%;" &gt;&lt;span style="font-family:courier new;"&gt;// Program to check the JDBC Connection string.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;import java.sql.Connection;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;import java.sql.DriverManager;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;import java.sql.ResultSet;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;import java.sql.Statement;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;public class ReadCharacter {&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;        public static void main(String[] args) {&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;                Connection dbConnection;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;                Statement stmt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;                String sqlStmt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;//              For Oracle 9.2&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;                String thin = "jdbc:oracle:thin:@[db_host]:[db_port]:[oracle_sid]";&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;                String name = "[username]";&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;                String pass = "[password]";&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;                String table = "V$INSTANCE";&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;                try{&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;                        pt("Getting Connection....");&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;                        Class.forName("oracle.jdbc.driver.OracleDriver");&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;            dbConnection = DriverManager.getConnection(thin, name, pass);&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;            pl(" Got");&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;            pt("Creating statment....");&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;            sqlStmt = "SELECT instance_name, host_name from " + table;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;            stmt = dbConnection.createStatement();&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;            pl(" Got");&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;            pt("Excuting statment (" + sqlStmt + ")....");&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;            ResultSet rs = stmt.executeQuery(sqlStmt);&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;            pl(" Excuted");&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;            while(rs.next()) {&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;                String n = rs.getString("instance_name");&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;                String a = rs.getString(2);&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;                pl("Instance_Name = " +  n + ", Host_Name = " + a );&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;            }&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;            pt("Closing Result set...");&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;            rs.close();&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;            pl(" Closed");&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;            pt("Closed statment....");&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;            stmt.close();&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;            pl(" Closed");&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;            pt("Closing Connection....");&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;                        dbConnection.close();&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;                        pl(" Closed");&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;                } catch (Exception e) {&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;                        e.printStackTrace();&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;                }&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;        }&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;        static void pt(String s) {&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;                System.out.print(s);&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;        }&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;        static void pl(String s) {&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;                System.out.println(s);&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;        }&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1102785860137074059-7248372382321211801?l=bkpappsdba.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bkpappsdba.blogspot.com/feeds/7248372382321211801/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1102785860137074059&amp;postID=7248372382321211801' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/7248372382321211801'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/7248372382321211801'/><link rel='alternate' type='text/html' href='http://bkpappsdba.blogspot.com/2008/11/check-jdbc-connection-string-using-java.html' title='Check JDBC Connection String using java'/><author><name>Praveen</name><uri>http://www.blogger.com/profile/09645880422225153776</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-1102785860137074059.post-6284359503797181860</id><published>2008-10-30T09:14:00.011+05:30</published><updated>2008-11-03T15:55:38.985+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='HTB'/><title type='text'>Deploy HTB in 10gAS</title><content type='html'>In this post, I shall talk about deploying HTB in 10gAS.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;u&gt;Pre-requisites&lt;/u&gt;:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;1. Oracle Applications E-Business Suite (EBS) 11.5.10.2&lt;br /&gt;2. Oracle 10g AS 10.1.2.0.2&lt;br /&gt;3. Standalone OC4J 10.1.2.0.2&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;u&gt;Steps&lt;/u&gt;:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;1. Apply ATG RUP 4 patches (pre and post requisites).&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;2. Apply the HTB v5.3 patches (4178883 -- Patch 11i.HC_PF.E and 5178799 -- HC_PF: 11I.HC_PF.E ROLLUP 3 and their pre and post requisites).&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;u&gt;&lt;/u&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;div style="text-align: justify;"&gt;&lt;blockquote&gt;&lt;span style="font-weight: bold;"&gt;&lt;u&gt;Note&lt;/u&gt;&lt;/span&gt;: Ensure that standalone OC4J is installed (unzipped)  and the OC4J environment variable is set before applying patches 4178883 (Patch 11i.HC_PF.E) and 5178799 (HC_PF: 11I.HC_PF.E ROLLUP 3). See &lt;a href="http://bkpappsdba.blogspot.com/2008/10/deploy-htb-on-standalone-oc4j.html"&gt;previous post&lt;/a&gt; for explanation.&lt;br /&gt;&lt;/blockquote&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;3. Install Oracle 10gAS 10.1.2.0.2 on a server other than that hosting Oracle Apps (EBS). If it is installed on the same server as EBS (web tier - if one has a multi-node install), it does make life simple!&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;4. Copy over the APPL_TOP and the JAVA_TOP from the Oracle Applications EBS web tier to the Oracle 10g AS server.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;5. Create a new OC4J Instance in the newly installed Oracle 10g AS.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_K-3r97qs4h4/SQlZiSqkrDI/AAAAAAAAApA/h7bObPicWQM/s1600-h/HTB_10gAS_SS1.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 243px;" src="http://1.bp.blogspot.com/_K-3r97qs4h4/SQlZiSqkrDI/AAAAAAAAApA/h7bObPicWQM/s400/HTB_10gAS_SS1.jpg" alt="" id="BLOGGER_PHOTO_ID_5262836085219961906" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;6. Enter the OC4J Instance name (say HTB) and click on CREATE.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_K-3r97qs4h4/SQlajPb6iII/AAAAAAAAApI/6UHf7EFpFzw/s1600-h/HTB_10gAS_SS2.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 243px;" src="http://2.bp.blogspot.com/_K-3r97qs4h4/SQlajPb6iII/AAAAAAAAApI/6UHf7EFpFzw/s400/HTB_10gAS_SS2.jpg" alt="" id="BLOGGER_PHOTO_ID_5262837201044670594" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;7. Click "OK" on the confirmation page.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;8. New OC4J Instance HTB seen in the front page.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_K-3r97qs4h4/SQlbDH2VE7I/AAAAAAAAApQ/CKc9moWYr4U/s1600-h/HTB_10gAS_SS3.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 243px;" src="http://1.bp.blogspot.com/_K-3r97qs4h4/SQlbDH2VE7I/AAAAAAAAApQ/CKc9moWYr4U/s400/HTB_10gAS_SS3.jpg" alt="" id="BLOGGER_PHOTO_ID_5262837748763792306" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;9. Replace the JDBC library files in &lt;10gas_oracle_home&gt;/jdbc/lib with the JDBC library files from $JAVA_TOP using the following commands:&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 51, 51);font-size:85%;" &gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;mv $10gAS_ORACLE_HOME/jdbc/lib/classes12dms.jar $10gAS_ORACLE_HOME/jdbc/lib/classes12dms.jarO&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;mv $10gAS_ORACLE_HOME/jdbc/lib/nls_charset12.jar $10gAS_ORACLE_HOME/jdbc/lib/nls_charset12.jarO&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;cp -p $JAVA_TOP/jdbc14.zip $10gAS_ORACLE_HOME/jdbc/lib/classes12dms.jar&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;cp -p $JAVA_TOP/nls_charset12.zip $10gAS_ORACLE_HOME/jdbc/lib/nls_charset12.jar&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;10. Copy the dbc file from $FND_TOP/secure/&amp;lt;CONTEXT_NAME&amp;gt;/&amp;lt;sid&amp;gt;.dbc to $10gAS_ORACLE_HOME/j2ee/&amp;lt;APPLICATION_NAME&amp;gt;/.&lt;context_name&gt;&lt;sid&gt;&lt;application_name&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;11. Navigate to the new OC4J Instance and modify the server properties.&lt;br /&gt;&lt;br /&gt;HTB (New OC4J Instance) ==&gt;   Administration ==&gt;   Server Properties&lt;br /&gt;&lt;br /&gt;Under the section &lt;span style="font-weight: bold;"&gt;Command Line Options&lt;/span&gt;,  &lt;/application_name&gt;&lt;/sid&gt;&lt;/context_name&gt;add the below in the field &lt;context_name&gt;&lt;sid&gt;&lt;application_name&gt;&lt;span style="font-weight: bold;"&gt;java options&lt;/span&gt; and click on apply.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 51, 51);font-size:85%;" &gt;&lt;span style="font-family:courier new;"&gt;-server -Xmx1024M -Xms1024M -Djava.security.policy=&amp;lt;10gAS_ORACLE_HOME&amp;gt;/j2ee/&amp;lt;NEW_OC4J_INSTANCE&amp;gt;/config/java2.policy -Djava.awt.headless=true -DClientMode=local -DworkflowSupported=N -Djbo.323.compatible=true -DDBCFile=&amp;lt;10gAS_ORACLE_HOME&amp;gt;/j2ee/&amp;lt;NEW_OC4J_INSTANCE&amp;gt;/&amp;lt;SID&amp;gt;.dbc -DJTFDBCFILE=&amp;lt;10gAS_ORACLE_HOME&amp;gt;/j2ee/&amp;lt;NEW_OC4J_INSTANCE&amp;gt;/&amp;lt;SID&amp;gt;.dbc -DLONG_RUNNING_JVM=true -Ddedicated.rmicontext=true -Djbo.connectfailover=false -DAFLOG_ENABLED=true -DAFLOG_LEVEL=EXCEPTION -DAFLOG_MODULE=%ctb%,%hct% -DAFLOG_FILENAME=./aflog_c&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/application_name&gt;&lt;/sid&gt;&lt;/context_name&gt;&lt;div style="text-align: justify;"&gt;&lt;div style="text-align: left;"&gt;&lt;context_name&gt;&lt;sid&gt;&lt;application_name&gt;12. Modify the application.xml under $10gAS_ORACLE_HOME/j2ee/&amp;lt;NEW_OC4J_INSTANCE&amp;gt;/config file to include the $CTB_TOP and $JAVA_TOP.&lt;/application_name&gt;&lt;/sid&gt;&lt;/context_name&gt;&lt;br /&gt;&lt;/div&gt;&lt;context_name&gt;&lt;sid&gt;&lt;application_name&gt;&lt;/application_name&gt;&lt;/sid&gt;&lt;/context_name&gt;&lt;/div&gt;&lt;context_name&gt;&lt;sid&gt;&lt;application_name&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-style: italic; color: rgb(102, 51, 51);font-family:courier new;" &gt;&amp;lt;library path="/oracle/ashtb/htbappl/ctb/11.5.0"/&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 51, 51);font-family:courier new;" &gt;&amp;lt;library path="/oracle/ashtb/htbcomn/java"/&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;13. Start the new OC4J Instance.&lt;br /&gt;&lt;br /&gt;Navigation: &amp;lt;HOST_NAME.DOMAIN&amp;gt;   ==&gt;   OC4J:&amp;lt;NEW_OC4J_INSTANCE&amp;gt;    ==&gt;   HOME&lt;br /&gt;&lt;br /&gt;Click on the Start button.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;14. Once the new OC4J instance is started, deploy the htb.ear file.&lt;br /&gt;&lt;br /&gt;a. Download the htb.ear under $CTB_TOP/java/ear file to the local desktop to any location (say C:\htb).&lt;br /&gt;&lt;br /&gt;b. Navigate to &amp;lt;HOST_NAME.DOMAIN&amp;gt;   ==&gt;   OC4J:&amp;lt;NEW_OC4J_INSTANCE&amp;gt;   ==&gt;    Applications&lt;br /&gt;&lt;br /&gt;c. Click on "Deploy EAR File".&lt;br /&gt;&lt;br /&gt;d. Enter the below information:&lt;br /&gt;&lt;br /&gt;J2EE Application = &amp;lt;PATH to the htb.ear file on the local machine&amp;gt;&lt;br /&gt;&lt;br /&gt;Application Name = HTB&lt;br /&gt;&lt;br /&gt;Parent Application = Defualt&lt;br /&gt;&lt;br /&gt;Click on Continue.&lt;br /&gt;&lt;br /&gt;e. In the next screen - URL Mapping for Web Modules - click Next.&lt;br /&gt;&lt;br /&gt;f. Click on "Next" without changing anything in the Resource Reference Mappings window.&lt;br /&gt;&lt;br /&gt;&lt;/application_name&gt;&lt;/sid&gt;&lt;/context_name&gt;&lt;div style="text-align: justify;"&gt;&lt;context_name&gt;&lt;sid&gt;&lt;application_name&gt;g. In the User Manager window, all the data is entered by default apart from the &lt;span style="font-weight: bold;"&gt;DBC_FILE_PATH&lt;/span&gt;. Enter the path to the DBC file under $10gAS_ORACLE_HOME/j2ee/&amp;lt;NEW_OC4J_INSTANCE&amp;gt; and click on Next.&lt;/application_name&gt;&lt;/sid&gt;&lt;/context_name&gt;&lt;br /&gt;&lt;context_name&gt;&lt;sid&gt;&lt;application_name&gt;&lt;/application_name&gt;&lt;/sid&gt;&lt;/context_name&gt;&lt;/div&gt;&lt;context_name&gt;&lt;sid&gt;&lt;application_name&gt;&lt;br /&gt;h. In the Review window, click on "Deploy".&lt;br /&gt;&lt;br /&gt;g. Click on OK in the confirmation screen.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;15. Modify the file data-sources.xml (10gAS_ORACLE_HOME/j2ee/&amp;lt;NEW_OC4J_INSTANCE&amp;gt;/config):&lt;br /&gt;&lt;br /&gt;Add the below line:&lt;span style="color: rgb(102, 51, 51);font-size:85%;" &gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;   &amp;lt;data-source&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;                class="com.evermind.sql.DriverManagerDataSource"&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;                name="OracleDS"&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;                location="jdbc/OracleCoreDS"&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;                xa-location="jdbc/xa/OracleXADS"&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;                ejb-location="jdbc/OracleDS"&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;                connection-driver="oracle.jdbc.driver.OracleDriver"&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;                username="apps"&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;                password="apps" url="jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=&amp;lt;DB_HOST_NAME.DOMAIN&amp;gt;)(PORT=&amp;lt;DB_PORT&amp;gt;))(CONNECT_DATA=(SID=&amp;lt;SID&amp;gt;)))"&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;                inactivity-timeout="600"&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;                max-connections="100"&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;                min-connections="100"&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;                stmt-cache-size="200"&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;    /&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;We are done as far as deployment of HTB in 10gAS is concerned.&lt;br /&gt;&lt;br /&gt;&lt;/application_name&gt;&lt;/sid&gt;&lt;/context_name&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1102785860137074059-6284359503797181860?l=bkpappsdba.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bkpappsdba.blogspot.com/feeds/6284359503797181860/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1102785860137074059&amp;postID=6284359503797181860' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/6284359503797181860'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/6284359503797181860'/><link rel='alternate' type='text/html' href='http://bkpappsdba.blogspot.com/2008/10/deploy-htb-in-10gas.html' title='Deploy HTB in 10gAS'/><author><name>Praveen</name><uri>http://www.blogger.com/profile/09645880422225153776</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://1.bp.blogspot.com/_K-3r97qs4h4/SQlZiSqkrDI/AAAAAAAAApA/h7bObPicWQM/s72-c/HTB_10gAS_SS1.jpg' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1102785860137074059.post-8604656611103706147</id><published>2008-10-29T16:51:00.003+05:30</published><updated>2008-11-03T18:08:33.521+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='sql scripts'/><category scheme='http://www.blogger.com/atom/ns#' term='Patches'/><title type='text'>Useful Oracle Apps (EBS) Patch Queries</title><content type='html'>1. Query to find the time taken for a patch to be applied.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 0, 0);font-family:courier new;font-size:85%;"  &gt;col name for a15&lt;br /&gt;col orig_patch_name for a15&lt;br /&gt;col runtime for a30&lt;br /&gt;SELECT NAME,&lt;br /&gt;    ORIG_PATCH_NAME,&lt;br /&gt;    to_char(START_DATE,'DD-MON-YYYY::HH24:MI:SS') START_DATE,&lt;br /&gt;    to_char(END_DATE,'DD-MON-YYYY::HH24:MI:SS') END_DATE,&lt;br /&gt;    TO_CHAR(FLOOR((end_date - start_date) * 24)) || ' hrs ' ||&lt;br /&gt;    TO_CHAR(FLOOR((end_date - start_date) * (24 * 60)) - (FLOOR((end_date - start_date) * 24) * 60)) || ' min ' ||&lt;br /&gt;    TO_CHAR(FLOOR((end_date - start_date) * (24 * 60 * 60)) - (FLOOR((end_date - start_date) * 24 * 60) * 60)) || ' sec '&lt;br /&gt;    RUNTIME,&lt;br /&gt;    SUCCESS_FLAG&lt;br /&gt;FROM applsys.ad_patch_runs&lt;br /&gt;JOIN applsys.ad_patch_drivers&lt;br /&gt;USING (patch_driver_id)&lt;br /&gt;JOIN applsys.ad_appl_tops&lt;br /&gt;USING (appl_top_id)&lt;br /&gt;where orig_patch_name like '%&amp;amp;patch_number%'&lt;br /&gt;ORDER BY ad_patch_runs.creation_date DESC;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;2. Note 364439.1 argues that checking ad_bugs for applied patches might not always be the good idea to check whether a given patch or a list of patches are applied. Instead it lists the below pl/sql procedure that can be used.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;a. Query to find whether a list of patches were applied or not.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 0, 0);font-size:85%;" &gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;set serveroutput on&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;DECLARE&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;  TYPE p_patch_array_type is varray(10) of varchar2(10);&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;  --&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;  p_patchlist p_patch_array_type;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;  p_appltop_name        varchar2(50);&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;  p_patch_status        varchar2(15);&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;  p_appl_top_id         number;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;  --&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;  CURSOR alist IS&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;    select appl_top_id, name&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;    from ad_appl_tops;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;  --&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;  procedure println(msg in varchar2)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;  is&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;  begin&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;    dbms_output.enable;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;    dbms_output.put_line(msg);&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;  end;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;  --&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;BEGIN&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;  open alist;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;  --&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;  p_patchlist:= p_patch_array_type('3240000','3460000','4204335','4125550','3942483','4733943');&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;  --&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;  LOOP&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;    FETCH alist INTO p_appl_top_id,p_appltop_name;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;    EXIT WHEN alist%NOTFOUND;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;    --&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;    IF p_appltop_name NOT IN ('GLOBAL','*PRESEEDED*')&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;    THEN&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;      println(p_appltop_name || ':');&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;      for i in 1..p_patchlist.count&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;      loop&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;        p_patch_status := ad_patch.is_patch_applied('11i',p_appl_top_id,p_patchlist(i));&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;        println('..Patch ' || p_patchlist(i) || ' was ' || p_patch_status);&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;      end loop;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;    END if;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;    println('.');&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;  END LOOP;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;  --&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;  close alist;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;END;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;/&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;b. Query to find whether a single patch was applied or not -- My customisation!&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 0, 0);font-size:85%;" &gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;set serveroutput on;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;DECLARE&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;  p_appltop_name        varchar2(50);&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;  p_patch_status        varchar2(15);&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;  p_appl_top_id         number;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;  --&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;  cursor atoplist is&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;    select appl_top_id, name from ad_appl_tops;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;  --&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;  procedure println(msg in varchar2)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;    is&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;    begin&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;      dbms_output.enable;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;      dbms_output.put_line(msg);&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;    end;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;  --&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;BEGIN&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;  open atoplist;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;  --&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;  LOOP&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;    FETCH atoplist INTO p_appl_top_id,p_appltop_name;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;    EXIT WHEN atoplist%NOTFOUND;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;    --&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;    IF p_appltop_name NOT IN ('GLOBAL','*PRESEEDED*')&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;    THEN&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;      println(p_appltop_name || ':');&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;      p_patch_status := ad_patch.is_patch_applied('11i',p_appl_top_id,&amp;amp;bug);&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;      println('..Patch ' || &amp;amp;bug || ' was ' || p_patch_status);&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;    END if;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;    println('.');&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;  END LOOP;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;  --&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;  close atoplist;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;END;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;/&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1102785860137074059-8604656611103706147?l=bkpappsdba.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bkpappsdba.blogspot.com/feeds/8604656611103706147/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1102785860137074059&amp;postID=8604656611103706147' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/8604656611103706147'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/8604656611103706147'/><link rel='alternate' type='text/html' href='http://bkpappsdba.blogspot.com/2008/10/useful-patch-queries.html' title='Useful Oracle Apps (EBS) Patch Queries'/><author><name>Praveen</name><uri>http://www.blogger.com/profile/09645880422225153776</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-1102785860137074059.post-5656684739911201614</id><published>2008-10-29T16:39:00.007+05:30</published><updated>2009-09-08T11:21:58.406+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='UNIX'/><category scheme='http://www.blogger.com/atom/ns#' term='shell scripts'/><title type='text'>Shell script to monitor processes</title><content type='html'>&lt;div style="TEXT-ALIGN: justify"&gt;Many a time, one is faced with a situation where one needs to monitor a process to its completion. For example, if one is performing a clone, one has to copy the source files to the target or if one is performing a backup of any instance, the cp or tar commands that one has fired has to be monitored to its completion.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="TEXT-ALIGN: justify"&gt;I generally use a customised script (as below) during those situations to monitor the processes.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="COLOR: rgb(102,51,102); FONT-STYLE: italicfont-size:85%;" &gt;&lt;span style="font-family:courier new;"&gt;while true&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;do&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;ps -fu &amp;lt;owner_of_the_process&amp;gt;  grep &amp;lt;cp or rman or process_id&amp;gt;  wc -l&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;printf "\n\nPress Ctrl+C to exit this loop.......\n\n"&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;sleep &amp;lt;the_number_of_seconds_this_process_should_sleep&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;done&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1102785860137074059-5656684739911201614?l=bkpappsdba.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bkpappsdba.blogspot.com/feeds/5656684739911201614/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1102785860137074059&amp;postID=5656684739911201614' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/5656684739911201614'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/5656684739911201614'/><link rel='alternate' type='text/html' href='http://bkpappsdba.blogspot.com/2008/10/script-to-monitor-processes-to.html' title='Shell script to monitor processes'/><author><name>Praveen</name><uri>http://www.blogger.com/profile/09645880422225153776</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-1102785860137074059.post-2076765221805778093</id><published>2008-10-24T16:20:00.005+05:30</published><updated>2008-10-29T15:19:14.590+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='HTB'/><title type='text'>Deploy HTB on standalone OC4J</title><content type='html'>In this post, I shall talk about deploying HTB with standalone OC4J.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;u&gt;&lt;/u&gt;&lt;/span&gt;&lt;blockquote&gt;&lt;span style="font-weight: bold;"&gt;&lt;u&gt;Note&lt;/u&gt;&lt;/span&gt;: This needs to be done on the web tier in case you have a multi-node installation.&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;1. Download standalone OC4J from &lt;a href="http://www.oracle.com/technology/software/products/ias/htdocs/utilsoft.html"&gt;here&lt;/a&gt;. As far as I know, only OC4J versions upto 10.1.2.0.2 are certified with HTB.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;2. Unzip the downloaded file to any directory.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;3. Install the standalone OC4J using the below command:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-style: italic; color: rgb(102, 51, 102);font-family:courier new;" &gt;$java -jar oc4j.jar –install&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;blockquote&gt;&lt;span style="font-weight: bold;"&gt;&lt;u&gt;Note&lt;/u&gt;&lt;/span&gt;: During the installation, you would be asked the enter the admin username (? - I do not really remember if it asks for admin username. If not, then the default username is admin) and the password. Do remember both as they are needed to stop OC4J.&lt;/blockquote&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;4. Create a file called custom&lt;$TWO_TASK&gt;.env under APPL_TOP.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-style: italic; color: rgb(102, 51, 102);font-family:courier new;" &gt;#!/bin/sh&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 51, 102);font-family:courier new;" &gt;OC4J_HOME=&amp;lt;Path_To_OC4J_Directory&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 51, 102);font-family:courier new;" &gt;export OC4J_HOME&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;5. Apply the patches 4178883 (Patch 11i.HC_PF.E) and 5178799 (HC_PF: 11I.HC_PF.E ROLLUP 3) and their pre and post requisites.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-weight: bold;"&gt;&lt;u&gt;&lt;/u&gt;&lt;/span&gt;&lt;blockquote&gt;&lt;span style="font-weight: bold;"&gt;&lt;u&gt;Note&lt;/u&gt;&lt;/span&gt;: It is interesting to note that the OC4J_HOME environment variable needs to be set for patches 4178883 and 5178799 to complete successfully since they run Autoconfig and during the Autoconfig run, if the environment variable OC4J_HOME is not set, then it will error with:&lt;br /&gt;&lt;/blockquote&gt;&lt;/div&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-style: italic; color: rgb(102, 51, 102);font-family:courier new;" &gt;&lt;/span&gt;&lt;/span&gt;&lt;blockquote&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-style: italic; color: rgb(102, 51, 102);font-family:courier new;" &gt;Executing script in InstantiateFile:&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 51, 102);font-family:courier new;" &gt;/oracle/applhtb/htbcomn/admin/install/HTB_dseiq-lab-vm2/ctbjdbc.sh&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 51, 102);font-family:courier new;" &gt;script returned:&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 51, 102);font-family:courier new;" &gt;****************************************************&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 51, 102);font-family:courier new;" &gt;ERRORCODE = 1 ERRORCODE_END&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 51, 102);font-family:courier new;" &gt;.end std out.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 51, 102);font-family:courier new;" &gt;mv: cannot stat `/jdbc/lib/classes12dms.jar': No such file or directory&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 51, 102);font-family:courier new;" &gt;sed: can't read /tmp/tmp.txt: No such file or directory&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 51, 102);font-family:courier new;" &gt;mv: cannot stat `/jdbc/lib/nls_charset12.jar': No such file or directory&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 51, 102);font-family:courier new;" &gt;sed: can't read /tmp/tmp.txt: No such file or directory&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 51, 102);font-family:courier new;" &gt;cp: cannot create regular file `/jdbc/lib/classes12dms.jar': No such file or directory&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 51, 102);font-family:courier new;" &gt;sed: can't read /tmp/tmp.txt: No such file or directory&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 51, 102);font-family:courier new;" &gt;cp: cannot create regular file `/jdbc/lib/nls_charset12.jar': No such file or directory&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 51, 102);font-family:courier new;" &gt;sed: can't read /tmp/tmp.txt: No such file or directory&lt;/span&gt;&lt;/span&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;6. Perform any post patching steps such as compile apps schema, generate message files and compile flex fields.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;7. Copy the htb.ear file to $OC4J_HOME&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 51, 102);font-size:85%;" &gt;&lt;span style="font-family:courier new;"&gt;cp –p $CTB_TOP/java/ear/htb.ear $OC4J_HOME/j2ee/home&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;8. Modify the file $OC4J_HOME/j2ee/home/config/application.xml to update the library paths. Add the following lines:&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 51, 102);font-family:courier new;font-size:85%;"  &gt;&amp;lt;library path="&amp;lt;Absolute Path to the $CTB_TOP&amp;gt;"/&amp;gt;&lt;br /&gt;&amp;lt;library path="&amp;lt;Absolute Path to the $JAVA_TOP&amp;gt;"/&amp;gt;&lt;br /&gt;&amp;lt;library path="../../../jdbc/lib/classes12dms.jar"/&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;9. Verify the ports in the XML config files - Make sure the default ports used in the following files are available in the host, else choose any free port available and edit the files&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-style: italic; color: rgb(102, 51, 102);font-family:courier new;" &gt;$OC4J_HOME/j2ee/home/config/rmi.xml&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 51, 102);font-family:courier new;" &gt;$OC4J_HOME/j2ee/home/config/jms.xml&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 51, 102);font-family:courier new;" &gt;$OC4J_HOME/j2ee/home/config/http-web-site.xml&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;10. Replace the JDBC library files in /jdbc/lib with the JDBC library files from $JAVA_TOP using the following commands:&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 51, 102);font-size:85%;" &gt;&lt;span style="font-family:courier new;"&gt;mv $OC4J_HOME/jdbc/lib/classes12dms.jar $OC4J_HOME/jdbc/lib/classes12dms.jarO&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;mv $OC4J_HOME/jdbc/lib/nls_charset12.jar $OC4J_HOME/jdbc/lib/nls_charset12.jarO&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;cp -p $JAVA_TOP/jdbc14.zip $OC4J_HOME/jdbc/lib/classes12dms.jar&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;cp -p $JAVA_TOP/nls_charset12.zip $OC4J_HOME/jdbc/lib/nls_charset12.jar&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;11. Edit the file '$OC4J_HOME/j2ee/home/config/data-sources.xml'&lt;br /&gt;&lt;br /&gt;Replace the existing &amp;lt;data-source&amp;gt; with the following &amp;lt;data-source&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 51, 102);font-family:courier new;" &gt;&amp;lt;data-source class="com.evermind.sql.DriverManagerDataSource"&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 51, 102);font-family:courier new;" &gt;name="OracleAppsDS"&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 51, 102);font-family:courier new;" &gt;location="jdbc/OracleAppsCoreDS"&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 51, 102);font-family:courier new;" &gt;ejb-location="jdbc/OracleAppsDS"&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 51, 102);font-family:courier new;" &gt;xa-location="jdbc/OracleAppsXADS"&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 51, 102);font-family:courier new;" &gt;connection-driver="oracle.jdbc.driver.OracleDriver"&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 51, 102);font-family:courier new;" &gt;username="apps"&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 51, 102);font-family:courier new;" &gt;password=""&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 51, 102);font-family:courier new;" &gt;url="jdbc:oracle:thin:@host:port:SID"&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 51, 102);font-family:courier new;" &gt;inactivity-timeout="30000"&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 51, 102);font-family:courier new;" &gt;/&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 51, 102);font-family:courier new;" &gt;Replace "&amp;lt;appspass&amp;gt;" with the actual apps password and "@HOST:PORT:SID" with "@&amp;lt;real host name&amp;gt;:&amp;lt;DB Port#&amp;gt;:&amp;lt;ORACLESID&amp;gt;.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;12. Post-install steps for Outbound Message - create a directory htbclient under $OC4J_HOME. $OC4J_HOME/htbclient will now be addressed as $HTBCLIENT.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 51, 102);font-size:85%;" &gt;&lt;span style="font-family:courier new;"&gt;$ cd $OC4J_HOME&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;$ mkdir htbclient&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;13. Copy the following jar files into $HTBCLIENT&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 51, 102);font-size:85%;" &gt;&lt;span style="font-family:courier new;"&gt;$ cp -p $OC4J_HOME/j2ee/home/oc4j.jar .&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;$ cp -p $OC4J_HOME/j2ee/home/oc4jclient.jar .&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;$ cp -p $OC4J_HOME/j2ee/home/lib/servlet.jar .&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;$ cp -p $OC4J_HOME/j2ee/home/lib/ejb.jar .&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;$ cp -p $OC4J_HOME/j2ee/home/lib/jndi.jar .&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;$ cp -p $OC4J_HOME/j2ee/home/lib/jta.jar .&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;$ cp -p $OC4J_HOME/j2ee/home/lib/jmxri.jar .&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;$ cp -p $OC4J_HOME/j2ee/home/lib/jaas.jar .&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;$ cp -p $OC4J_HOME/diagnostics/lib/ojdl.jar .&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;14. Update the AF_CLASSPATH in $APPL_TOP/admin/adovars.env to point to&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 51, 102);font-size:85%;" &gt;&lt;span style="font-family:courier new;"&gt;AF_CLASSPATH=$HTBCLIENT:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/jre/lib/i18n.jar:$JAVA_TOP/appsborg2.zip:$IAS_HOME/rdbms/jlib/aqapi.jar:$IAS_HOME/rdbms/jlib/jmscommon.jar:$HTBCLIENT/oc4j.jar:$HTBCLIENT/oc4jclient.jar$HTBCLIENT/servlet.jar:$HTBCLIENT/jms.jar:$HTBCLIENT/ejb.jar:$HTBCLIENT/jndi.jar:$HTBCLIENT/jta.jar:$ORACLE_HOME/forms60/java:$HTBCLIENT/jmxri.jar:$HTBCLIENT/jaas.jar:$HTBCLIENT/ojdl.jar:$JAVA_TOP&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-style: italic; color: rgb(102, 51, 102);font-family:courier new;" &gt;Where:&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 51, 102);font-family:courier new;" &gt;$OC4J_HOME is the home directory where OC4J is installed.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 51, 102);font-family:courier new;" &gt;$HTBCLIENT is the directory you created under $OC4J_HOME. For example:&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 51, 102);font-family:courier new;" &gt;$OC4J_HOME/htbclient.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 51, 102);font-family:courier new;" &gt;$IAS_HOME is the location where Oracle E-Business Suite installs Oracle iAS.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 51, 102);font-family:courier new;" &gt;The E-Business Suite ships with its own application server install, and&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 51, 102);font-family:courier new;" &gt;$IAS_HOME refers to that installation.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 51, 102);font-family:courier new;" &gt;$JAVA_HOME is where the JDK is installed.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 51, 102);font-family:courier new;" &gt;Please remove the following jar files if present, from the AF_CLASSPATH:&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 51, 102);font-family:courier new;" &gt;bc4jdomorcl.jar and bc4jct.jar.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;div style="text-align: justify;"&gt;&lt;blockquote&gt;&lt;span style="font-weight: bold;"&gt;&lt;u&gt;Note&lt;/u&gt;&lt;/span&gt;: Also modify the AF_CLASSPATH variable in the XML file so that the next time autoconfig is run, the value of the AF_CLASSPATH is not overwritten.&lt;/blockquote&gt;&lt;/div&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;15. Create a file called jndi.properties under $HTBCLIENT with the following lines&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-style: italic; color: rgb(102, 51, 102);font-family:courier new;" &gt;java.naming.factory.initial=com.evermind.server.rmi.RMIInitialContextFactory&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 51, 102);font-family:courier new;" &gt;java.naming.provider.url=ormi://:/htb&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;16. Start the OC4J Container&lt;br /&gt;&lt;br /&gt;Navigate to $OC4J_HOME/j2ee/home&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;Use the following case sensitive parameters (the dbc file should be located in $FND_TOP/secure):&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 51, 102);font-size:85%;" &gt;&lt;span style="font-family:courier new;"&gt;     -Djbo.323.compatible=true&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;     -DDBCFile=&amp;lt;absolute path to the dbc file including the file name&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;     -DJTFDBCFILE=&amp;lt;absolute path to the dbc file including the file name&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt; For example (increase memory if required):&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-style: italic; color: rgb(102, 51, 102);font-family:courier new;" &gt;java -Xmx512M -Xms512M -DworkflowSupported=&amp;lt;N - if the worflow need to be disabled (OR) Y - if the workflow need to be enabled&amp;gt; -Djbo.323.compatible=true -DDBCFile=&amp;lt;absolute path to the dbc file including the file name&amp;gt; -DJTFDBCFILE=&amp;lt;absolute path to the dbc file including the file name&amp;gt; -jar oc4j.jar&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;A message is displayed indicating that the OC4J container has been initialized.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;17. Deploy the htb.ear file&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 51, 102);font-size:85%;" &gt;&lt;span style="font-family:courier new;"&gt;$ cd $OC4J_HOME/j2ee/home&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;java -Xmx512M -Xms512M -jar admin.jar ormi://&amp;lt;host_name&amp;gt;:&amp;lt;rmi_port&amp;gt; admin admin -deploy -file htb.ear -deploymentName htb&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: left;"&gt;&lt;blockquote&gt;&lt;span style="font-weight: bold;"&gt;&lt;u&gt;Note&lt;/u&gt;&lt;/span&gt;: You can get the RMI port number from the file $OC4J_HOME/j2ee/home/config/rmi.xml&lt;/blockquote&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;18. Update the orion-application.xml files to include the absolute path to the dbc file name&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 51, 102);font-size:85%;" &gt;&lt;span style="font-family:courier new;"&gt;      $OC4J_HOME/j2ee/home/application-deployments/htb/orion-application.xml&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;      $OC4J_HOME/j2ee/home/applications/htb/META-INF/orion-application.xml&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;     &amp;lt;property name="DBC_FILE_PATH" value="&amp;lt;enter absolute path here&amp;gt;" /&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;19.  Shutdown the oc4j container:&lt;br /&gt;&lt;br /&gt;cd $OC4J_HOME/j2ee/home&lt;br /&gt;&lt;br /&gt;java -jar admin.jar ormi://&amp;lt;host_name&amp;gt;:&amp;lt;rmi port&amp;gt; &amp;lt;admin_username&amp;gt; &amp;lt;admin_password&amp;gt; -shutdown force&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;u&gt;&lt;/u&gt;&lt;/span&gt;&lt;blockquote&gt;&lt;span style="font-weight: bold;"&gt;&lt;u&gt;Note&lt;/u&gt;&lt;/span&gt;: The admin username and passwords are the same ones created during the installation of OC4J (Step 3).&lt;/blockquote&gt;&lt;br /&gt;20. Restart oc4j server - use the same steps as noted above.&lt;br /&gt;&lt;br /&gt;21. Update the jserv.properties file to include the following lines between &lt;#Begin customizations&gt; and &lt;#End customizations&gt;:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-style: italic; color: rgb(102, 51, 102);font-family:courier new;" &gt;wrapper.bin.parameters=-DAdaptorCatalog=$JAVA_TOP/oracle/apps/ctb/tools/bridge/catalog.xml&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;u&gt;&lt;/u&gt;&lt;/span&gt;&lt;blockquote&gt;&lt;span style="font-weight: bold;"&gt;&lt;u&gt;Note&lt;/u&gt;&lt;/span&gt;: Use physical path for $JAVA_TOP&lt;/blockquote&gt;&lt;span style="font-style: italic; color: rgb(102, 51, 102);font-size:85%;" &gt;&lt;span style="font-family:courier new;"&gt;wrapper.bin.parameters=-DClientMode=local&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;22. Run the below sqls for DQM Setup and Implementation.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 51, 102);font-size:85%;" &gt;&lt;span style="font-family:courier new;"&gt;cd $AR_TOP/patch/115/sql&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;sqlplus apps_username/apps_password @arhdqcgr.sql&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;sqlplus apps_username/apps_password @ARHDCTXS.pls ctxsys_username ctxsys_password apps_username&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;sqlplus apps_username/apps_password @arhdqcpr.sql ctxsys_username ctxsys_password apps_username&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;23. Restart the application services after disabling Maintenance Mode.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;24. Modify the following profile options:&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 51, 102);font-size:85%;" &gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Profile Option Name = "FND: Framework Compatibility Mode"&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Profile Option Application Name = Clinical Transaction Base (Short_name = CTB)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Profile Option Value = 11.5.10&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Profile Option Name = "FND: Migrated to JRAD"&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Profile Option Application Name = Clinical Transaction Base (Short_name = CTB)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Profile Option Value = Y&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;This completes the deployment of HTB on standalone OC4J.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1102785860137074059-2076765221805778093?l=bkpappsdba.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bkpappsdba.blogspot.com/feeds/2076765221805778093/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1102785860137074059&amp;postID=2076765221805778093' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/2076765221805778093'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/2076765221805778093'/><link rel='alternate' type='text/html' href='http://bkpappsdba.blogspot.com/2008/10/deploy-htb-on-standalone-oc4j.html' title='Deploy HTB on standalone OC4J'/><author><name>Praveen</name><uri>http://www.blogger.com/profile/09645880422225153776</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-1102785860137074059.post-6995696673258701175</id><published>2008-10-21T12:59:00.004+05:30</published><updated>2008-10-21T13:17:24.209+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='HTB'/><title type='text'>Patch List for HTB v5.3</title><content type='html'>This is the patch list that I followed for applying HTB v5.3 on a 11.5.10.2 EBS installation with database running 10g R2 (10.2.0.2).&lt;br /&gt;&lt;br /&gt;Once all the patches are applied, you can safely say that HTB is indeed installed on the EBS installation!&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;4119792     --    RDBMS Server: Patch INS_OEMAGENT.MK IS NOT USING THE GLIBC STUBS&lt;/li&gt;&lt;li&gt;4186352     --    LIBOLAPAPI9.SO FILE MISSING FROM RDBMS 9.2.0.6.0 PATCHSET&lt;/li&gt;&lt;li&gt;4712852     --    Minipack 11i.AD.I.4&lt;/li&gt;&lt;li&gt;5478710     --    11i.ADX.F&lt;/li&gt;&lt;li&gt;5658489     --    CPUJAN2007:TECHNOLOGY STACK COMPONENTS FOR CRITICAL PATCH UPDATE JAN 2007&lt;/li&gt;&lt;li&gt;5891161     --    JDBC Patch&lt;/li&gt;&lt;li&gt;5225940     --    POST ADX-F FIXES &lt;/li&gt;&lt;li&gt;3349676     --    SERVICEBEAN OAF5.7 ARU V4&lt;/li&gt;&lt;li&gt;3634650     --    ONE-OFF PATCH FOR BUG#3634321 ON SERVICEBEAN 11.5.57 ARU V4&lt;/li&gt;&lt;li&gt;3821746     --    BI BEANS CATALOG PATCH V5 - BASED ON BI BEANS V3.1.0.54&lt;/li&gt;&lt;li&gt;4318480     --    HEALTHCARE SERVICEBEAN 11.5.10 ARU ROLLUP V1&lt;/li&gt;&lt;li&gt;5449280     --    FILE IN PATCH IS NOT A KNOWN ORACLE APPLICATIONS FILE: JTF MEDIA RUN_ENABLED.GIF &lt;/li&gt;&lt;li&gt;3904641     --    CPU Oct 05 : 2004-S291E &lt;/li&gt;&lt;li&gt;5021981     --    CPUApr06: 5018818 for EBS 11.5.1-11.5.10RUP3 &lt;/li&gt;&lt;li&gt;5565583     --    BI &lt;/li&gt;&lt;li&gt;5046719     --    CPUApr2006: 5046719 :TECHNOLOGY STACK COMPONENTS FOR CRITICAL PATCH UPDATE APR 2006 &lt;/li&gt;&lt;li&gt;5452096     --    RE-APPLYING ATG RUP4 4676589 FAILS ON FNDDECLDIAG.LDT, OAMDIAG.LDT OR EBIZSEC.LDT &lt;/li&gt;&lt;li&gt;4676589     --    11i.ATG_PF.H RUP4&lt;/li&gt;&lt;li&gt;3865683     --    RELEASE 11.5.10 PRODUCTS NAME PATCH &lt;/li&gt;&lt;li&gt;5487856     --    ONE-OFF REQUEST FOR BUG 5262377: HEALTHCARE BC4J PERFORMANCE FIXES &lt;/li&gt;&lt;li&gt;4696889     --    CONCURRENCY ISSUE &lt;/li&gt;&lt;li&gt;4919821     --    1OFF:4279469:PF.F:11510:ISSUE WITH DATE TRANSFORMATION&lt;/li&gt;&lt;li&gt;4407281     --    CONSOLIDATED HTML ADMIN UI BUGS ON TOP OF 11.5.10&lt;/li&gt;&lt;li&gt;4585760     --    CTB AUTOCONFIG SCRIPTS HAVE INVALID SYNTAX FOR SOLARIS &lt;/li&gt;&lt;li&gt;2267681     --    ADSPLICE FILES FOR ORACLE APPLICATIONS PRODUCT (CTB)&lt;/li&gt;&lt;li&gt;2592520     --    ADSPLICE FILES FOR ORACLE APPLICATIONS PRODUCT (HCT)&lt;/li&gt;&lt;li&gt;2955037     --    ADSPLICE FILES FOR ORACLE APPLICATIONS PRODUCT (HCP)&lt;/li&gt;&lt;li&gt;4178883     --    Patch 11i.HC_PF.E&lt;/li&gt;&lt;li&gt;5178799     --    HC_PF: 11i.HC_PF.E Rollup 3&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;In the next two posts, I shall talk about deploying HTB in a standalone OC4J installation and in a 10gAS installation.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1102785860137074059-6995696673258701175?l=bkpappsdba.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bkpappsdba.blogspot.com/feeds/6995696673258701175/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1102785860137074059&amp;postID=6995696673258701175' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/6995696673258701175'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/6995696673258701175'/><link rel='alternate' type='text/html' href='http://bkpappsdba.blogspot.com/2008/10/patch-list-for-htb-v53.html' title='Patch List for HTB v5.3'/><author><name>Praveen</name><uri>http://www.blogger.com/profile/09645880422225153776</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-1102785860137074059.post-1093779641666493506</id><published>2008-10-17T18:07:00.006+05:30</published><updated>2008-11-03T15:41:48.425+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='HTB'/><title type='text'>Oracle HTB - A brief Introduction</title><content type='html'>&lt;div style="text-align: justify;"&gt;I am not sure how many people have worked with Oracle HTB (Healthcare Transaction Base), but I have been part of two projects, which involved implementation and maintenance of Oracle HTB. It was a good learning process for me and I enjoyed working on it thoroughly.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;What exactly is HTB?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Below is an extract from the &lt;a href="https://metalink.oracle.com/CSP/main/article?cmd=show&amp;amp;type=NOT&amp;amp;id=336528.1"&gt;HTB Implementation Guide&lt;/a&gt; (which is for the base version 5 - 11i.HC_PF.E.  The latest version I believe is 6) on what exactly is Oracle HTB:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Oracle Healthcare Transaction Base (HTB) is a comprehensive data repository and serviceinfrastructure that provides independent software vendors, system integrators, and provider organizations with a state of the art software platform that lets them build robust and scalable healthcare applications.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;HTB software components let HTB based applications centralize and consolidate patient, provider, and healthcare data, including business rules that span the enterprise.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;HTB provides a unified data model based on the &lt;/span&gt;&lt;a style="font-style: italic;" href="http://www.interfaceware.com/manual/what_is_hl7.html"&gt;HL7&lt;/a&gt;&lt;span style="font-style: italic;"&gt; version3 &lt;/span&gt;&lt;a style="font-style: italic;" href="http://www.hl7.org/about/hl7about.htm#RIM"&gt;Reference Information Model (RIM)&lt;/a&gt;&lt;span style="font-style: italic;"&gt;.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;As far as I know, HTB requires the following components (of Oracle):&lt;br /&gt;&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Oracle E-Business Suite (11i or R12)&lt;/li&gt;&lt;li&gt;Oracle 10g AS or standalone OC4J (for deploying HTB)&lt;/li&gt;&lt;li&gt;Oracle 10g AS SOA Suite 10.1.0.3.0 and above (for integrating HTB with third party applications using web services).&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;In my next post, I shall take up the procedure to install HTB in EBS 11i.&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1102785860137074059-1093779641666493506?l=bkpappsdba.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bkpappsdba.blogspot.com/feeds/1093779641666493506/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1102785860137074059&amp;postID=1093779641666493506' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/1093779641666493506'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/1093779641666493506'/><link rel='alternate' type='text/html' href='http://bkpappsdba.blogspot.com/2008/10/oracle-htb-brief-introduction.html' title='Oracle HTB - A brief Introduction'/><author><name>Praveen</name><uri>http://www.blogger.com/profile/09645880422225153776</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-1102785860137074059.post-6477922442325268150</id><published>2008-10-17T15:55:00.010+05:30</published><updated>2008-10-17T18:04:38.494+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='developer 6i'/><category scheme='http://www.blogger.com/atom/ns#' term='reoprts 6i'/><category scheme='http://www.blogger.com/atom/ns#' term='forms 6i'/><title type='text'>Developer 6i Patchset Version</title><content type='html'>&lt;div style="text-align: justify;"&gt;If one would like to find out their Develper patchset version, they can easily refer metalink note &lt;a href="https://metalink.oracle.com/CSP/main/article?cmd=show&amp;amp;type=NOT&amp;amp;id=232313.1"&gt;232313.1&lt;/a&gt; titled Information on Previous Versions of Developer 6i Patchsets. However, this note only lists the developer patchsets till patchset 15. In case anyone has an older installation, they would not know where to look.&lt;br /&gt;&lt;br /&gt;Incidentally, one of our installations is on developer patchset 12 (forms/reports version is 6.0.8.21.3). I had a tough time to find out that we were indeed on developer patchset 12! Hence, this blog entry.&lt;br /&gt;&lt;br /&gt;In order to find the current Developer 6i patchset version from the forms/reports 6i version,  two metalink notes &lt;a href="https://metalink.oracle.com/CSP/main/article?cmd=show&amp;amp;type=NOT&amp;amp;id=266541.1"&gt;266541.1&lt;/a&gt; and &lt;a href="https://metalink.oracle.com/CSP/main/article?cmd=show&amp;amp;type=NOT&amp;amp;id=74145.1"&gt;74145.1&lt;/a&gt; are available. However, Note &lt;a href="https://metalink.oracle.com/CSP/main/article?cmd=show&amp;amp;type=NOT&amp;amp;id=266541.1"&gt;266541.1&lt;/a&gt; provides stale information since it does not include information on the latest two developer patchsets 18 and 19.&lt;br /&gt;&lt;br /&gt;So, Metalink note &lt;a href="https://metalink.oracle.com/CSP/main/article?cmd=show&amp;amp;type=NOT&amp;amp;id=74145.1"&gt;74145.1&lt;/a&gt; seems to be the best bet in finding out the correct developer patchset version.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;u&gt;Note&lt;/u&gt;&lt;/span&gt;: All the metalink links that I have used are from the new metalink, which requires Adobe Flash Player 9.&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1102785860137074059-6477922442325268150?l=bkpappsdba.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='https://metalink.oracle.com/CSP/main/article?cmd=show&amp;type=NOT&amp;id=74145.1' title='Developer 6i Patchset Version'/><link rel='replies' type='application/atom+xml' href='http://bkpappsdba.blogspot.com/feeds/6477922442325268150/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1102785860137074059&amp;postID=6477922442325268150' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/6477922442325268150'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/6477922442325268150'/><link rel='alternate' type='text/html' href='http://bkpappsdba.blogspot.com/2008/10/developer-6i-patchset-version.html' title='Developer 6i Patchset Version'/><author><name>Praveen</name><uri>http://www.blogger.com/profile/09645880422225153776</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-1102785860137074059.post-5964830459205894607</id><published>2008-10-17T12:37:00.008+05:30</published><updated>2008-11-03T18:10:18.449+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='UNIX'/><category scheme='http://www.blogger.com/atom/ns#' term='shell scripts'/><category scheme='http://www.blogger.com/atom/ns#' term='Process_id'/><title type='text'>Find the UNIX Process ID given a port number</title><content type='html'>One of my colleagues had started the MWA server (telnet server) and it was running on port number 9198. However, when I queried the processes (ps -ef | grep mwa), I could not find the process which had kick started the MWA server.&lt;br /&gt;&lt;br /&gt;This had me thinking and I resolved to find the process ID. However, the utility lsof was not installed on the OS (Sun Sparc Solaris 5.10) . When I probed further (googled! actually), I found a script on &lt;a href="http://onlineappsdba.com/index.php/2008/06/10/how-to-find-pid-listening-particular-port-on-linuxsolaris-10/"&gt;onlineappsdba&lt;/a&gt;, which I found helpful.&lt;br /&gt;&lt;br /&gt;I had to modify that script suitably to exclude processes not owned by the current user. I also referred another &lt;a href="http://technopark02.blogspot.com/2007/11/solaris-who-which-process-is-on-other.html"&gt;blog&lt;/a&gt;, to complete my script.&lt;br /&gt;&lt;br /&gt;______________________________________________________&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 0, 0);font-family:courier new;" &gt;#&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 0, 0);font-family:courier new;" &gt;# Make sure the logfile directory exists&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 0, 0);font-family:courier new;" &gt;#&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 0, 0);font-family:courier new;" &gt;if [ ! -d ${HOME}/bkp/log ]; then&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 0, 0);font-family:courier new;" &gt;  mkdir -p ${HOME}/bkp/log&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 0, 0);font-family:courier new;" &gt;fi;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 0, 0);font-family:courier new;" &gt;if [ $# -ne 1 ]; then&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 0, 0);font-family:courier new;" &gt;  echo "To run the program, please provide the port number as the arguement"&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 0, 0);font-family:courier new;" &gt;  printf "\n\t ${usage} \n\n"&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 0, 0);font-family:courier new;" &gt;  exit 1;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 0, 0);font-family:courier new;" &gt;fi&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 0, 0);font-family:courier new;" &gt;port_num="$1"&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 0, 0);font-family:courier new;" &gt;echo&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 0, 0);font-family:courier new;" &gt;printf "\n Finding the PID given the port number '${port_num}'.............. \n"&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 0, 0);font-family:courier new;" &gt;echo&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 0, 0);font-family:courier new;" &gt;for i in `ls -l /proc | grep ${cur_user} | awk '{print $9}'`&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 0, 0);font-family:courier new;" &gt;do&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 0, 0);font-family:courier new;" &gt;pfiles $i | grep AF_INET | grep ${port_num}&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 0, 0);font-family:courier new;" &gt;if [ $? -eq 0 ]&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 0, 0);font-family:courier new;" &gt;then&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 0, 0);font-family:courier new;" &gt;echo "Port ${port_num} owned by pid $i" &gt;&gt; ${LOG_DIR}/pid_from_port.txt&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 0, 0);font-family:courier new;" &gt;else&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 0, 0);font-family:courier new;" &gt;continue;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 0, 0);font-family:courier new;" &gt;fi&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 0, 0);font-family:courier new;" &gt;done&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 0, 0);font-family:courier new;" &gt;clear&lt;br /&gt;if [ -s ${LOG_DIR}/pid_from_port.txt ]; then&lt;br /&gt;echo&lt;br /&gt;cat ${LOG_DIR}/pid_from_port.txt&lt;br /&gt;echo&lt;br /&gt;else&lt;br /&gt;echo&lt;br /&gt;echo "Can not find the process that owns the port ${port_num}"&lt;br /&gt;echo&lt;br /&gt;fi&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 0, 0);font-family:courier new;" &gt;# Remove the temporary file.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 0, 0);font-family:courier new;" &gt;rm -f ${LOG_DIR}/pid_from_port.txt&lt;/span&gt;&lt;br /&gt;______________________________________________________&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1102785860137074059-5964830459205894607?l=bkpappsdba.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bkpappsdba.blogspot.com/feeds/5964830459205894607/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1102785860137074059&amp;postID=5964830459205894607' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/5964830459205894607'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/5964830459205894607'/><link rel='alternate' type='text/html' href='http://bkpappsdba.blogspot.com/2008/10/find-process-id-given-port-number.html' title='Find the UNIX Process ID given a port number'/><author><name>Praveen</name><uri>http://www.blogger.com/profile/09645880422225153776</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-1102785860137074059.post-8185339721156673117</id><published>2008-10-15T16:16:00.007+05:30</published><updated>2008-10-17T12:29:58.664+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='sqlprompt'/><category scheme='http://www.blogger.com/atom/ns#' term='login.sql'/><title type='text'>Customising SQL Prompt in pre-10g Oracle Homes</title><content type='html'>&lt;div  style="text-align: justify;font-family:verdana;"&gt;&lt;span style="font-size:100%;"&gt;I always say that the risk of running a script in an instance wherein it is not meant to be run, is always high, if the SQL prompt in SQL*PLUS is unchanged  i.e., if it is  retained as "SQL&gt;". This risk can be mitigated, to a great extent, if not fully, by customising the SQL prompt to something like '&lt;span style="font-weight: bold; font-style: italic;"&gt;USER@SID&gt;&lt;/span&gt;'.&lt;br /&gt;&lt;br /&gt;This can be achieved in Oracle 10g quite easily &lt;/span&gt;&lt;span style="font-size:100%;"&gt;(refer my &lt;a href="http://bkpappsdba.blogspot.com/2008/07/many-time-dbas-and-developers-tend-to.html"&gt;earlier post&lt;/a&gt;).&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;Releases prior to Oracle 10g did not have the special pre-defined variable "_USER", which can be set in glogin.sql. However, there exist a lot of workarounds for customising the SQL Prompt and retaining it!&lt;br /&gt;&lt;br /&gt;I have detailed below one such workaround.&lt;/span&gt;&lt;/div&gt;&lt;span style=";font-family:verdana;font-size:100%;"  &gt;&lt;br /&gt;1. Modify the .profile of each user and add the environment variable SQLPATH to it so that our scripts can be accessed from anywhere.&lt;br /&gt;&lt;br /&gt;e.g: export SQLPATH=/u019/app/oracle/govtt/govttora/8.0.6/sqlplus/admin;/u018/app/oracle/govtt/govttdb/9.2.0/sqlplus/admin&lt;br /&gt;&lt;br /&gt;2. Create two files login.sql and connect.sql under $ORACLE_HOME/sqlplus/admin or under any directory that is defined in the SQLPATH, with the following contents:&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:verdana;font-size:100%;"  &gt;___________________________________________________________&lt;/span&gt;&lt;br /&gt;&lt;span style=";font-family:verdana;font-size:100%;"  &gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;login.sql&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 0, 0);font-family:courier new;" &gt;col prom new_value prom&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 0, 0);font-family:courier new;" &gt;set termout off&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 0, 0);font-family:courier new;" &gt;define prom='NOT CONNECTED'&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 0, 0);font-family:courier new;" &gt;select upper(sys_context('USERENV','SESSION_USER'))|| '@'|| upper(sys_context('USERENV','DB_NAME')) prom&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 0, 0);font-family:courier new;" &gt;from dual;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 0, 0);font-family:courier new;" &gt;set sqlprompt "&amp;amp;prom&gt; "&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 0, 0);font-family:courier new;" &gt;set termout on&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;connect.sql&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 0, 0); font-style: italic;font-family:courier new;" &gt;connect &amp;amp;1&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 0, 0); font-style: italic;font-family:courier new;" &gt;@login.sql&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;___________________________________________________________&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;3. Whenever one wants to switch between users, use the command @connect instead of connect. If we do not use @connect, then the new user would not be displayed in the sqlprompt. This is as illustrated below:&lt;br /&gt;&lt;br /&gt;___________________________________________________________&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 0, 0);font-family:courier new;" &gt;$ sqlplus apps&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 0, 0);font-family:courier new;" &gt;SQL*Plus: Release 8.0.6.0.0 - Production on Tue Oct 14 07:35:38 2008&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 0, 0);font-family:courier new;" &gt;(c) Copyright 1999 Oracle Corporation.  All rights reserved.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 0, 0);font-family:courier new;" &gt;Enter password:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 0, 0);font-family:courier new;" &gt;Connected to:&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 0, 0);font-family:courier new;" &gt;Oracle9i Enterprise Edition Release 9.2.0.7.0 - Production&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 0, 0);font-family:courier new;" &gt;With the Partitioning, OLAP and Oracle Data Mining options&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 0, 0);font-family:courier new;" &gt;JServer Release 9.2.0.7.0 - Production&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 0, 0);font-family:courier new;" &gt;&lt;br /&gt;APPS@ORCL&gt; @connect system&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 0, 0);font-family:courier new;" &gt;Enter password:&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 0, 0);font-family:courier new;" &gt;Connected.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 0, 0);font-family:courier new;" &gt;&lt;br /&gt;SYSTEM@ORCL&gt; sho user&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 0, 0);font-family:courier new;" &gt;USER is "SYSTEM"&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 0, 0);font-family:courier new;" &gt;&lt;br /&gt;SYSTEM@ORCL&gt; conn apps&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 0, 0);font-family:courier new;" &gt;Enter password:&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 0, 0);font-family:courier new;" &gt;Connected.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 0, 0);font-family:courier new;" &gt;&lt;br /&gt;SYSTEM@ORCL&gt; sho user&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 0, 0);font-family:courier new;" &gt;USER is "APPS"&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:verdana;font-size:100%;"  &gt;___________________________________________________________&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1102785860137074059-8185339721156673117?l=bkpappsdba.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bkpappsdba.blogspot.com/feeds/8185339721156673117/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1102785860137074059&amp;postID=8185339721156673117' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/8185339721156673117'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/8185339721156673117'/><link rel='alternate' type='text/html' href='http://bkpappsdba.blogspot.com/2008/10/customising-sql-prompt-in-pre-10g.html' title='Customising SQL Prompt in pre-10g Oracle Homes'/><author><name>Praveen</name><uri>http://www.blogger.com/profile/09645880422225153776</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-1102785860137074059.post-2072032987693940386</id><published>2008-09-23T12:54:00.008+05:30</published><updated>2008-11-03T18:15:22.063+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Interview'/><category scheme='http://www.blogger.com/atom/ns#' term='Questions'/><title type='text'>Interesting Oracle Applications (EBS) Interview Questions</title><content type='html'>&lt;div style="text-align: justify;"&gt;Below are some interesting interview questions that I have faced over the years.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;ol style="text-align: justify;"&gt;&lt;li&gt;What is the difference between a concurrent manager and a cron job?&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;Can one patch a CRS Oracle home with the CRS services up?&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;Suppose, there are 2 nodes node1 and node2 with CRS cluster and one wants to patch node1. Can it be done with node2 being up?&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;Suppose one fires a select statement and the data does not in the library cache, then the data, obviously, has to be fetched from the data files. Which background process is used for this purpose?&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;What are the sizing requirements for say, a 100 concurrent users Oracle Apps Installation?&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;What is the difference between a shared appl_top and a staged appl_top?&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;/ol&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1102785860137074059-2072032987693940386?l=bkpappsdba.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bkpappsdba.blogspot.com/feeds/2072032987693940386/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1102785860137074059&amp;postID=2072032987693940386' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/2072032987693940386'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/2072032987693940386'/><link rel='alternate' type='text/html' href='http://bkpappsdba.blogspot.com/2008/09/interesting-interview-questions.html' title='Interesting Oracle Applications (EBS) Interview Questions'/><author><name>Praveen</name><uri>http://www.blogger.com/profile/09645880422225153776</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-1102785860137074059.post-5312432668703682893</id><published>2008-07-28T11:51:00.009+05:30</published><updated>2008-09-22T12:10:15.934+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='wms idle'/><category scheme='http://www.blogger.com/atom/ns#' term='Miscellaneous'/><category scheme='http://www.blogger.com/atom/ns#' term='windows'/><category scheme='http://www.blogger.com/atom/ns#' term='shutdown'/><title type='text'>Solution to "End Program - WMS Idle"</title><content type='html'>&lt;div style="text-align: center;"&gt;&lt;div style="text-align: justify;"&gt;&lt;span&gt;Though this topic is unrelated any Apps DBA topics, I found it necessary to share the solution so that everyone benifits out of it&lt;span style="font-weight: bold;"&gt;!&lt;/span&gt;&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;&lt;br /&gt;Issue:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;I used to receive the below error message whenever I tried to shutdown windows XP. A rather vexing problem, no doubt.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp0.blogger.com/_K-3r97qs4h4/SI1mLu6nKAI/AAAAAAAAAfM/0cSTXOHWBws/s1600-h/EndProgramWMSIdle.jpg"&gt;&lt;img style="cursor: pointer;" src="http://bp0.blogger.com/_K-3r97qs4h4/SI1mLu6nKAI/AAAAAAAAAfM/0cSTXOHWBws/s400/EndProgramWMSIdle.jpg" alt="" id="BLOGGER_PHOTO_ID_5227947094205474818" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Cause:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;This message appears because when windows is trying to shutdown and end all the running processes, the WMS idle process keeps working. Thus an end-program message appears. The two most common reasons for this are:&lt;br /&gt;&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Scout service run by Nero 7 &lt;/li&gt;&lt;li&gt;Microsoft Office Communicator 2005&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Solution:&lt;br /&gt;&lt;/span&gt;&lt;p style="text-align: justify;"&gt;The fix is simple, disable the Nero 7 scout service if it is enabled. &lt;/p&gt; &lt;p&gt;For this, go to  &lt;strong&gt;Start &gt; All Programs &gt; Nero &gt; Tools &gt; Nero Scout&lt;/strong&gt;. &lt;/p&gt; &lt;p&gt;On this screen ,&lt;strong&gt;Uncheck Enable the Nero scout.&lt;/strong&gt;&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp2.blogger.com/_K-3r97qs4h4/SI1naUVuX6I/AAAAAAAAAfU/Tu_1RigKG3M/s1600-h/DisableNeroScout_thumb.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp2.blogger.com/_K-3r97qs4h4/SI1naUVuX6I/AAAAAAAAAfU/Tu_1RigKG3M/s400/DisableNeroScout_thumb.jpg" alt="" id="BLOGGER_PHOTO_ID_5227948444281102242" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;This will fix the issue for most of the users, for the rest of you who are not using Nero are most probably getting this error because of Microsoft Office Communicator 2005. For that you need to either manually exit the communicator 2005 from the system tray before you shutdown windows, or also you can &lt;a href="http://support.microsoft.com/kb/921113" target="_blank"&gt;use this hot-fix provided by Microsoft for WMI Idle error message.&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;References:&lt;/span&gt; &lt;a href="http://www.troublefixers.com/end-program-wms-idle-message-on-windows-shutdown/"&gt;http://www.troublefixers.com/end-program-wms-idle-message-on-windows-shutdown/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1102785860137074059-5312432668703682893?l=bkpappsdba.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bkpappsdba.blogspot.com/feeds/5312432668703682893/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1102785860137074059&amp;postID=5312432668703682893' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/5312432668703682893'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/5312432668703682893'/><link rel='alternate' type='text/html' href='http://bkpappsdba.blogspot.com/2008/07/solution-to-end-program-wms-idle.html' title='Solution to &quot;End Program - WMS Idle&quot;'/><author><name>Praveen</name><uri>http://www.blogger.com/profile/09645880422225153776</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://bp0.blogger.com/_K-3r97qs4h4/SI1mLu6nKAI/AAAAAAAAAfM/0cSTXOHWBws/s72-c/EndProgramWMSIdle.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1102785860137074059.post-3773993767020636439</id><published>2008-07-22T12:16:00.001+05:30</published><updated>2008-07-22T12:41:57.635+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='mod_security'/><category scheme='http://www.blogger.com/atom/ns#' term='Apache'/><title type='text'>Version of mod_security with EBS 11.5.10.2</title><content type='html'>&lt;span style="font-size:100%;"&gt;Though it was a bit tough to find out the version of Mod_security that is shipped with E-Business Suite 11.5.10.2, I finally managed to do it, thanks to Metalink Fora!&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;The version that comes with&lt;b&gt; eBS 11.5.10.2 is 1.8.4&lt;/b&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;. Below is how you find out the version of mod_security shipped with your version of eBS.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:Arial;font-size:100%;"  &gt;$ strings $IAS_ORACLE_HOME/Apache/Apache/libexec/mod_security.so | grep mod_security/&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;/span&gt;&lt;p style="font-family: verdana;"&gt; &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1102785860137074059-3773993767020636439?l=bkpappsdba.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bkpappsdba.blogspot.com/feeds/3773993767020636439/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1102785860137074059&amp;postID=3773993767020636439' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/3773993767020636439'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/3773993767020636439'/><link rel='alternate' type='text/html' href='http://bkpappsdba.blogspot.com/2008/07/version-of-modsecurity-with-ebs-115102.html' title='Version of mod_security with EBS 11.5.10.2'/><author><name>Praveen</name><uri>http://www.blogger.com/profile/09645880422225153776</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>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1102785860137074059.post-9186397136579240916</id><published>2008-07-22T12:07:00.001+05:30</published><updated>2008-07-22T12:42:38.463+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='mod_security'/><category scheme='http://www.blogger.com/atom/ns#' term='Apache'/><title type='text'>Introduction to Mod_Security</title><content type='html'>&lt;p  style="font-family:verdana;"&gt;&lt;span style="font-size:100%;"&gt;&lt;b&gt;What Is ModSecurity?&lt;/b&gt;&lt;/span&gt; &lt;/p&gt;  &lt;p  style="text-align: justify;font-family:verdana;"&gt;&lt;span style="font-size:100%;"&gt;ModSecurity is a web application firewall that can work either embedded or as a reverse proxy. It provides protection from a range of attacks against web applications and allows for HTTP traffic monitoring, logging and real-time analysis. [7]&lt;/span&gt;&lt;/p&gt;&lt;div  style="text-align: justify;font-family:verdana;"&gt;  &lt;/div&gt;&lt;p  style="text-align: justify;font-family:verdana;"&gt;&lt;span style="font-size:100%;"&gt;mod_security is an Apache module (for Apache 1 and 2) that provides intrusion detection and prevention for web applications. It aims at shielding web applications from known and unknown attacks, such as SQL injection attacks, cross-site scripting, path traversal attacks, etc. [6]&lt;/span&gt;&lt;/p&gt;&lt;div  style="text-align: justify;font-family:verdana;"&gt;  &lt;/div&gt;&lt;p  style="text-align: justify;font-family:verdana;"&gt;&lt;span style="font-size:100%;"&gt;mod_security is an Apache module designed as a sort of web application firewall. It’s most useful for preventing SQL Injection and Cross Site Scripting (or XSS). [2]&lt;/span&gt;&lt;/p&gt;&lt;div face="verdana" style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p  style="text-align: justify;font-family:verdana;"&gt;&lt;span style="font-size:100%;"&gt;It is also an open source project that aims to make the web application firewall technology available to everyone. [7]&lt;/span&gt; &lt;/p&gt;&lt;div face="verdana" style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt; &lt;/div&gt;&lt;p  style="text-align: justify;font-family:verdana;"&gt;&lt;span style="font-size:100%;"&gt;&lt;b&gt;SQL Injection&lt;/b&gt;&lt;/span&gt; &lt;/p&gt;&lt;div face="verdana" style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p  style="text-align: justify;font-family:verdana;"&gt;&lt;span style="font-size:100%;"&gt;SQL injection is a technique that exploits a security vulnerability occurring in the database layer of an application. The vulnerability is present when user input is either incorrectly filtered for string literal escape characters embedded in SQL statements or user input is not strongly typed and thereby unexpectedly executed. It is in fact an instance of a more general class of vulnerabilities that can occur whenever one programming or scripting language is embedded inside another.&lt;/span&gt;&lt;/p&gt;&lt;div face="verdana" style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt; &lt;/div&gt;&lt;p  style="text-align: justify;font-family:verdana;"&gt;&lt;span style="font-size:100%;"&gt;&lt;b&gt;Cross-site scripting (XSS)&lt;/b&gt;&lt;/span&gt; &lt;/p&gt;&lt;div style="text-align: justify; font-family: verdana;"&gt;  &lt;/div&gt;&lt;p  style="text-align: justify;font-family:verdana;"&gt;&lt;span style="font-size:100%;"&gt;Cross-site scripting (XSS) is a type of computer security vulnerability typically found in web applications which allow code injection by malicious web users into the web pages viewed by other users. Examples of such code include HTML code and client-side scripts. An exploited cross-site scripting vulnerability can be used by attackers to bypass access controls such as the same origin policy. Vulnerabilities of this kind have been exploited to craft powerful phishing attacks and browser exploits. As of 2007, cross-site scripting carried out on websites were roughly 80% of all documented security vulnerabilities. Often during an attack "everything looks fine" to the end-user who may be exposed to unauthorized access, theft of sensitive data and financial loss.&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify; font-family: verdana;"&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt; &lt;/div&gt;&lt;p  style="text-align: justify;font-family:verdana;"&gt;&lt;span style="font-size:100%;"&gt;&lt;b&gt;References:&lt;/b&gt;&lt;/span&gt; &lt;/p&gt;&lt;div style="text-align: justify; font-family: verdana;"&gt;  &lt;/div&gt;&lt;div style="text-align: justify; font-family: verdana;"&gt;&lt;span style="font-size:100%;"&gt;1. &lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;a href="http://www.onlamp.com/pub/a/apache/2003/11/26/mod_security.html" target="_blank"&gt;&lt;u&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;http://www.onlamp.com/pub/a/&lt;wbr&gt;apache/2003/11/26/mod_&lt;wbr&gt;security.html&lt;/span&gt;&lt;/u&gt;&lt;/a&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;2. &lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;a href="http://tylermuth.wordpress.com/2008/06/02/mod_security/" target="_blank"&gt;&lt;u&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;http://tylermuth.wordpress.&lt;wbr&gt;com/2008/06/02/mod_security/&lt;/span&gt;&lt;/u&gt;&lt;/a&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;3. &lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;a href="http://www.modsecurity.org/documentation/known-issues-1.8.x.html" target="_blank"&gt;&lt;u&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;http://www.modsecurity.org/&lt;wbr&gt;documentation/known-issues-1.&lt;wbr&gt;8.x.html&lt;/span&gt;&lt;/u&gt;&lt;/a&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;4. &lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;a href="http://www.modsecurity.org/documentation/support-request-checklist.html" target="_blank"&gt;&lt;u&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;http://www.modsecurity.org/&lt;wbr&gt;documentation/support-request-&lt;wbr&gt;checklist.html&lt;/span&gt;&lt;/u&gt;&lt;/a&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;5. Metalink Note ID: 456388.1 - How to enable and test mod_security in HTTP Server&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;6. &lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;a href="http://www.howtoforge.com/apache_mod_security" target="_blank"&gt;&lt;u&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;http://www.howtoforge.com/&lt;wbr&gt;apache_mod_security&lt;/span&gt;&lt;/u&gt;&lt;/a&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;7. &lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;a href="http://www.modsecurity.org/" target="_blank"&gt;&lt;u&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;http://www.modsecurity.org&lt;/span&gt;&lt;/u&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;p style="font-family: verdana;"&gt; &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1102785860137074059-9186397136579240916?l=bkpappsdba.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bkpappsdba.blogspot.com/feeds/9186397136579240916/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1102785860137074059&amp;postID=9186397136579240916' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/9186397136579240916'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/9186397136579240916'/><link rel='alternate' type='text/html' href='http://bkpappsdba.blogspot.com/2008/07/what-is-modsecurity-modsecurity-is-web.html' title='Introduction to Mod_Security'/><author><name>Praveen</name><uri>http://www.blogger.com/profile/09645880422225153776</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-1102785860137074059.post-8210182260448543189</id><published>2008-07-21T15:21:00.001+05:30</published><updated>2008-11-03T18:16:22.165+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='database size'/><title type='text'>Find the size of an Oracle database</title><content type='html'>&lt;div style="text-align: justify;"&gt;A very common question in any interview is "How do you find the size of a database?" This question can be answered in numerous ways. For e.g., some might say that the size of the database is the sum of the size of each datafile. Some might add the size of the tempfiles to the afore mentioned answer.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;However, according to me, the size of the database can be calculated as below:&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;Database size = size of datafiles + size of tempfiles + size of redologs + size of controlfiles&lt;br /&gt;&lt;br /&gt;The above formula can be put to use using the below mentioned SQL.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;set serveroutput on&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;declare&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;DB_SIZE number;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;dfsize number;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;tfsize number;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;rlsize number;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;cfsize number;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;begin&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;select sum(bytes)/1024/1024 "DATA_FILE_SIZE" into dfsize from dba_data_files;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;select sum(bytes)/1024/1024 "TEMP_FILE_SIZE" into tfsize from dba_temp_files;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;select sum(bytes)/1024/1024 "REDO_LOG_SIZE" into rlsize from v$log;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;select (BLOCK_SIZE * (1 + FILE_SIZE_BLKS))/1024/1024 "CONTROL_FILE_SIZE" into cfsize from sys.v_$controlfile where rownum = 1;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;DB_SIZE:=round((dfsize+tfsize+rlsize+cfsize)/1024,3);&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;dbms_output.put_line('-------------------------------------');&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;dbms_output.put_line('The Database Size is ' || DB_SIZE || ' Gigabytes');&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;dbms_output.put_line('-------------------------------------');&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;end;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;/&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;Eg:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;SQL &gt; set serveroutput on&lt;br /&gt;SQL &gt; declare&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;  2  DB_SIZE number;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;  3  dfsize number;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;  4  tfsize number;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;  5  rlsize number;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;  6  cfsize number;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;  7  begin&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;  8  select sum(bytes)/1024/1024 "DATA_FILE_SIZE" into dfsize from dba_data_files;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;  9  select sum(bytes)/1024/1024 "TEMP_FILE_SIZE" into tfsize from dba_temp_files;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt; 10  select sum(bytes)/1024/1024 "REDO_LOG_SIZE" into rlsize from v$log;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt; 11 select (BLOCK_SIZE * (1 + FILE_SIZE_BLKS))/1024/1024 "CONTROL_FILE_SIZE" into cfsize from sys.v_$controlfile where rownum = 1;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt; 12  DB_SIZE:=round((dfsize+tfsize+rlsize+cfsize)/1024,3);&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt; 13  dbms_output.put_line('-------------------------------------');&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt; 14  dbms_output.put_line('The Database Size is ' || DB_SIZE || ' Gigabytes');&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt; 15  dbms_output.put_line('-------------------------------------');&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt; 16  end;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt; 17  /&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;-------------------------------------&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;The Database Size is 88.259 Gigabytes&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;-------------------------------------&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;PL/SQL procedure successfully completed.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1102785860137074059-8210182260448543189?l=bkpappsdba.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bkpappsdba.blogspot.com/feeds/8210182260448543189/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1102785860137074059&amp;postID=8210182260448543189' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/8210182260448543189'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/8210182260448543189'/><link rel='alternate' type='text/html' href='http://bkpappsdba.blogspot.com/2008/07/find-size-of-database_21.html' title='Find the size of an Oracle database'/><author><name>Praveen</name><uri>http://www.blogger.com/profile/09645880422225153776</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-1102785860137074059.post-2451674175865518123</id><published>2008-07-21T12:11:00.000+05:30</published><updated>2008-07-21T15:27:28.115+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='controlfile'/><title type='text'>Find the size of the control files</title><content type='html'>&lt;span style=";font-family:verdana;font-size:100%;"  &gt;Below is the SQL statement to find the size of the control files.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;select (BLOCK_SIZE * (1 + FILE_SIZE_BLKS))/1024/1024 "CONTROL_FILE_SIZE (MB)" from sys.v_$controlfile where rownum = 1;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;OR&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-style: italic;"&gt;select distinct (BLOCK_SIZE * (1 + FILE_SIZE_BLKS))/1024/1024 "CONTROL_FILE_SIZE (MB)" from sys.v_$controlfile;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Eg:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;SQL &gt; select (BLOCK_SIZE * (1 + FILE_SIZE_BLKS))/1024/1024 "CONTROL_FILE_SIZE (MB)" from sys.v_$controlfile where rownum = 1;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;CONTROL_FILE_SIZE (MB)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;----------------------&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;    18.515625&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;SQL &gt; select distinct (BLOCK_SIZE * (1 + FILE_SIZE_BLKS))/1024/1024 "CONTROL_FILE_SIZE (MB)" from sys.v_$controlfile;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;CONTROL_FILE_SIZE (MB)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;----------------------&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;    18.515625&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-style: italic;"&gt;SQL &gt; select distinct (BLOCK_SIZE * (1 + FILE_SIZE_BLKS)) "CONTROL_FILE_SIZE (BYTES)" from sys.v_$controlfile;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-style: italic;"&gt;CONTROL_FILE_SIZE (BYTES)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;-------------------------&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;19415040&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;$ ls -slrt &lt;path_to_controlfile&gt;&lt;path_to_controlfile&gt;[path_to_Controlfile]/cntrl0*&lt;br /&gt;18984 -rw-rw----  1 oracle dba 19415040 Jul 21 02:56 &lt;/path_to_controlfile&gt;&lt;/path_to_controlfile&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-style: italic;"&gt;[path_to_Controlfile]&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-style: italic;"&gt;&lt;path_to_controlfile&gt;&lt;/path_to_controlfile&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-style: italic;"&gt;/cntrl03.dbf&lt;br /&gt;18984 -rw-rw----  1 oracle dba 19415040 Jul 21 02:56 &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-style: italic;"&gt;&lt;path_to_controlfile&gt;&lt;/path_to_controlfile&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-style: italic;"&gt;[path_to_Controlfile]&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-style: italic;"&gt;/cntrl02.dbf&lt;br /&gt;18984 -rw-rw----  1 oracle dba 19415040 Jul 21 02:56 &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-style: italic;"&gt;[path_to_Controlfile]&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-style: italic;"&gt;&lt;path_to_controlfile&gt;&lt;/path_to_controlfile&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-style: italic;"&gt;/cntrl01.dbf&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-style: italic;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;&lt;span style="font-weight: bold;"&gt;Note:&lt;/span&gt; 1 block needs to be added to the file_size_blks to allow for the file header.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1102785860137074059-2451674175865518123?l=bkpappsdba.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bkpappsdba.blogspot.com/feeds/2451674175865518123/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1102785860137074059&amp;postID=2451674175865518123' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/2451674175865518123'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/2451674175865518123'/><link rel='alternate' type='text/html' href='http://bkpappsdba.blogspot.com/2008/07/find-size-of-control-files.html' title='Find the size of the control files'/><author><name>Praveen</name><uri>http://www.blogger.com/profile/09645880422225153776</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-1102785860137074059.post-1947594258939836728</id><published>2008-07-03T12:56:00.002+05:30</published><updated>2008-10-15T16:19:22.121+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='sqlprompt'/><category scheme='http://www.blogger.com/atom/ns#' term='glogin.sql'/><title type='text'>Customising SQL Prompt in 10g Database/Oracle Home</title><content type='html'>&lt;p align="justify"&gt;&lt;span style="font-family:verdana;"&gt;Many a time, DBAs and Developers tend to run scripts, accidentally, in instances that they do not actually intend to. In extreme cases, this might result in disastrous consequences, sometimes even leading to recovering/restoring the database from a backup.&lt;/span&gt;&lt;/p&gt;&lt;p align="justify"&gt;&lt;span style="font-family:Verdana;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;p align="justify"&gt;&lt;span style="font-family:verdana;"&gt;This mistake can easily be avoided if the sql prompt displays the username and/or the SID in lieu of just "SQL&gt;".&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="justify"&gt;&lt;span style="font-family:Verdana;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;p align="justify"&gt;&lt;span style="font-family:verdana;"&gt;Whenever sqlplus is invoked, 2 files are executed: &lt;strong&gt;glogin.sql&lt;/strong&gt; and &lt;strong&gt;login.sql&lt;/strong&gt; (if it exists) in the order mentioned. These 2 files are located under &lt;strong&gt;$ORACLE_HOME/sqlplus/admin&lt;/strong&gt;.&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;p align="justify"&gt;&lt;span style="font-family:verdana;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;p align="justify"&gt;&lt;span style="font-family:verdana;"&gt;Modify the file glogin.sql and add the below line:&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;p align="justify"&gt;&lt;span style="font-family:courier new;"&gt;&lt;em&gt;&lt;strong&gt;&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="justify"&gt;&lt;span style="font-family:courier new;"&gt;&lt;em&gt;&lt;strong&gt;set sqlprompt "&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;&lt;a href="mailto:_user"&gt;&lt;span style="font-family:courier new;"&gt;&lt;em&gt;&lt;strong&gt;_user'@'_connect_identifier&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:courier new;"&gt;&lt;em&gt;&lt;strong&gt; &gt; "&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="justify"&gt;&lt;span style="font-family:verdana;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;p align="justify"&gt;&lt;span style="font-family:verdana;"&gt;The net result of this is that the sqlprompt will appear as below whenever you login to sqlplus:&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;p align="justify"&gt;&lt;span style="font-family:Verdana;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="justify"&gt;&lt;a href="mailto:system@ORCL"&gt;&lt;span style="font-family:verdana;"&gt;system@ORCL&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:verdana;"&gt;&gt; &lt;/span&gt;&lt;/p&gt;&lt;p align="justify"&gt;&lt;span style="font-family:verdana;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;p align="justify"&gt;&lt;span style="font-family:verdana;"&gt;where system is the username and ORCL is the SID.&lt;/span&gt;&lt;/p&gt;&lt;p align="justify"&gt;&lt;span style="font-family:verdana;"&gt;&lt;strong&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;p align="justify"&gt;&lt;span style="font-family:verdana;"&gt;&lt;strong&gt;Note:&lt;/strong&gt; One drawback of this method, if it may be called so, is that whenever one logs in to sqlplus using /nolog option, only the &lt;/span&gt;&lt;a href="mailto:"&gt;&lt;span style="font-family:verdana;"&gt;'@'&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:verdana;"&gt; character is displayed as the connection to the database is yet to be established. As soon as the connection is established, the username and SID are again populated in the sqlprompt. Incidentally, this is a new feature in 10g, wherein the glogin.sql and login.sql files are executed after the connect command.&lt;/span&gt;&lt;/p&gt;&lt;strong&gt;&lt;/strong&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1102785860137074059-1947594258939836728?l=bkpappsdba.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bkpappsdba.blogspot.com/feeds/1947594258939836728/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1102785860137074059&amp;postID=1947594258939836728' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/1947594258939836728'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1102785860137074059/posts/default/1947594258939836728'/><link rel='alternate' type='text/html' href='http://bkpappsdba.blogspot.com/2008/07/many-time-dbas-and-developers-tend-to.html' title='Customising SQL Prompt in 10g Database/Oracle Home'/><author><name>Praveen</name><uri>http://www.blogger.com/profile/09645880422225153776</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>
