You can use ad utility adlicmgr to licence product in Oracle Apps.
How you put Applications 11i in Maintenance mode ?
Unknown on
How you put Applications 11i in Maintenance mode ?
[applmgr@srvr33 appltop]$ . APPSdb4_srvr33.env
[applmgr@srvr33 appltop]$ adadmin
AD Administration Main Menu --------------------------------------------------
1. Generate Applications Files menu
2. Maintain Applications Files menu
3. Compile/Reload Applications Database Entities menu
4. Maintain Applications Database Entities menu
5. Change Maintenance Mode
6. Exit AD Administration
Enter your choice [6] : 5
Change Maintenance Mode
----------------------------------------
Maintenance Mode is currently: [Enabled].
Maintenance mode should normally be enabled when patching
Oracle Applications and disabled when users are logged on
to the system. See the Oracle Applications Maintenance
Utilities manual for more information about maintenance mode.
Please select an option:
1. Enable Maintenance Mode
2. Disable Maintenance Mode
3. Return to Main Menu
Here internally call bellow Script
@$AD_TOP/patch/115/sql/adsetmmd.sql
You can also put your application in maintencemode from backend :
Enable Maintenance mode :
[applmgr@srvr33 appltop]$ . APPSdb4_srvr33.env
[applmgr@srvr33 appltop]$ adadmin
AD Administration Main Menu --------------------------------------------------
1. Generate Applications Files menu
2. Maintain Applications Files menu
3. Compile/Reload Applications Database Entities menu
4. Maintain Applications Database Entities menu
5. Change Maintenance Mode
6. Exit AD Administration
Enter your choice [6] : 5
Change Maintenance Mode
----------------------------------------
Maintenance Mode is currently: [Enabled].
Maintenance mode should normally be enabled when patching
Oracle Applications and disabled when users are logged on
to the system. See the Oracle Applications Maintenance
Utilities manual for more information about maintenance mode.
Please select an option:
1. Enable Maintenance Mode
2. Disable Maintenance Mode
3. Return to Main Menu
Here internally call bellow Script
@$AD_TOP/patch/115/sql/adsetmmd.sql
You can also put your application in maintencemode from backend :
Enable Maintenance mode :
SQL> @$AD_TOP/patch/115/sql/adsetmmd.sql ENABLE
SQL> select fnd_profile.value(‘APPS_MAINTENANCE_MODE’) from dual; –> to check
SQL> select fnd_profile.value(‘APPS_MAINTENANCE_MODE’) from dual; –> to check
Disable Maintenance mode :
SQL> @$AD_TOP/patch/115/sql/adsetmmd.sql DISABLE
SQL> select fnd_profile.value(‘APPS_MAINTENANCE_MODE’) from dual; –> to check
SQL> select fnd_profile.value(‘APPS_MAINTENANCE_MODE’) from dual; –> to check
How to find log files locations in 11i and R12
Unknown on Wednesday, 23 May 2012
How to find log files locations in 11i and R12
The following log files location could help you to find-out issues and errors from your application 11i instance.
Database Tier Logs are
Alert Log File location:
$ORACLE_HOME/admin/$CONTEXT_NAME/bdump/alert_$SID.log
Trace file location:
$ORACLE_HOME/admin/SID_Hostname/udump
Application Tier Logs
Start/Stop script log files location:
$COMMON_TOP/admin/log/CONTEXT_NAME/
OPMN log file location
$ORACLE_HOME/opmn/logs/ipm.log
Apache, Jserv, JVM log files locations:
$IAS_ORACLE_HOME/Apache/Apache/logs/ssl_engine_log
$IAS_ORACLE_HOME/Apache/Apache/logs/ssl_request_log
$IAS_ORACLE_HOME/Apache/Apache/logs/access_log
$IAS_ORACLE_HOME/Apache/Apache/logs/error_log
$IAS_ORACLE_HOME/Apache/JServ/logs
Concurrent log file location:
$APPL_TOP/admin/PROD/log or $APPLLOG/$APPLCSF
Patch log file location:
$APPL_TOP/admin/PROD/log
Worker Log file location:
$APPL_TOP/admin/PROD/log
AutoConfig log files location:
Application Tier:
$APPL_TOP/admin/SID_Hostname/log//DDMMTime/adconfig.log
Database Tier:
$ORACLE_HOME/appsutil/log/SID_Hostname/DDMMTime/adconfig.log
Error log file location:
Application Tier:
$APPL_TOP/admin/PROD/log
Database Tier :
$ORACLE_HOME/appsutil/log/SID_Hostname
In Oracle Applications R12, the log files are located in $LOG_HOME (which translates to $INST_TOP/logs)
Below list of log file locations could be helpful for you:
Concurrent Reqeust related logs
$LOG_HOME/appl/conc - > location for concurrent requests log and out files
$LOG_HOME/appl/admin - > location for mid tier startup scripts log files
Apache Logs (10.1.3 Oracle Home which is equivalent to iAS Oracle Home - Apache, OC4J and OPMN)
$LOG_HOME/ora/10.1.3/Apache - > Location for Apache Error and Access log files
$LOG_HOME/ora/10.1.3/j2ee - > location for j2ee related log files
$LOG_HOME/ora/10.1.3/opmn - > location for opmn related log files
Forms & Reports related logs (10.1.2 Oracle home which is equivalent to 806 Oracle Home)
$LOG_HOME/ora/10.1.2/forms
$LOG_HOME/ora/10.1.2/reports
Startup/Shutdown Log files location:
$INST_TOP/apps/$CONTEXT_NAME/logs/appl/admin/log
Patch log files location:
$APPL_TOP/admin/$SID/log/
Clone and AutoConfig log files location in Oracle E-Business Suite Release 12
Logs for the adpreclone.pl are located:
On the database tier:
RDBMS $ORACLE_HOME/appsutil/log/< context >/StageDBTier_< timestamp >.log
On the application tier:
$INST_TOP/admin/log/StageAppsTier_< timestamp >.log
Where the logs for the admkappsutil.pl are located?
On the application tier:
$INST_TOP/admin/log/MakeAppsUtil_< timestamp >.log
Logs for the adcfgclone.pl are located:
On the database tier:
RDBMS $ORACLE_HOME/appsutil/log/< context >/ApplyDBTier_< timestamp >.log
On the application tier:
$INST_TOP/admin/log/ApplyAppsTier_< timestamp >.log
.
Logs for the adconfig are located:
On the database tier:
RDBMS $ORACLE_HOME/appsutil/log/< context >/< timestamp >/adconfig.log
RDBMS $ORACLE_HOME/appsutil/log/< context >/< timestamp >/NetServiceHandler.log
On the application tier:
$INST_TOP/admin/log/< timestamp >/adconfig.log
$INST_TOP/admin/log/< timestamp >/NetServiceHandler.log
The following log files location could help you to find-out issues and errors from your application 11i instance.
Database Tier Logs are
Alert Log File location:
$ORACLE_HOME/admin/$CONTEXT_NAME/bdump/alert_$SID.log
Trace file location:
$ORACLE_HOME/admin/SID_Hostname/udump
Application Tier Logs
Start/Stop script log files location:
$COMMON_TOP/admin/log/CONTEXT_NAME/
OPMN log file location
$ORACLE_HOME/opmn/logs/ipm.log
Apache, Jserv, JVM log files locations:
$IAS_ORACLE_HOME/Apache/Apache/logs/ssl_engine_log
$IAS_ORACLE_HOME/Apache/Apache/logs/ssl_request_log
$IAS_ORACLE_HOME/Apache/Apache/logs/access_log
$IAS_ORACLE_HOME/Apache/Apache/logs/error_log
$IAS_ORACLE_HOME/Apache/JServ/logs
Concurrent log file location:
$APPL_TOP/admin/PROD/log or $APPLLOG/$APPLCSF
Patch log file location:
$APPL_TOP/admin/PROD/log
Worker Log file location:
$APPL_TOP/admin/PROD/log
AutoConfig log files location:
Application Tier:
$APPL_TOP/admin/SID_Hostname/log//DDMMTime/adconfig.log
Database Tier:
$ORACLE_HOME/appsutil/log/SID_Hostname/DDMMTime/adconfig.log
Error log file location:
Application Tier:
$APPL_TOP/admin/PROD/log
Database Tier :
$ORACLE_HOME/appsutil/log/SID_Hostname
In Oracle Applications R12, the log files are located in $LOG_HOME (which translates to $INST_TOP/logs)
Below list of log file locations could be helpful for you:
Concurrent Reqeust related logs
$LOG_HOME/appl/conc - > location for concurrent requests log and out files
$LOG_HOME/appl/admin - > location for mid tier startup scripts log files
Apache Logs (10.1.3 Oracle Home which is equivalent to iAS Oracle Home - Apache, OC4J and OPMN)
$LOG_HOME/ora/10.1.3/Apache - > Location for Apache Error and Access log files
$LOG_HOME/ora/10.1.3/j2ee - > location for j2ee related log files
$LOG_HOME/ora/10.1.3/opmn - > location for opmn related log files
Forms & Reports related logs (10.1.2 Oracle home which is equivalent to 806 Oracle Home)
$LOG_HOME/ora/10.1.2/forms
$LOG_HOME/ora/10.1.2/reports
Startup/Shutdown Log files location:
$INST_TOP/apps/$CONTEXT_NAME/logs/appl/admin/log
Patch log files location:
$APPL_TOP/admin/$SID/log/
Clone and AutoConfig log files location in Oracle E-Business Suite Release 12
Logs for the adpreclone.pl are located:
On the database tier:
RDBMS $ORACLE_HOME/appsutil/log/< context >/StageDBTier_< timestamp >.log
On the application tier:
$INST_TOP/admin/log/StageAppsTier_< timestamp >.log
Where the logs for the admkappsutil.pl are located?
On the application tier:
$INST_TOP/admin/log/MakeAppsUtil_< timestamp >.log
Logs for the adcfgclone.pl are located:
On the database tier:
RDBMS $ORACLE_HOME/appsutil/log/< context >/ApplyDBTier_< timestamp >.log
On the application tier:
$INST_TOP/admin/log/ApplyAppsTier_< timestamp >.log
.
Logs for the adconfig are located:
On the database tier:
RDBMS $ORACLE_HOME/appsutil/log/< context >/< timestamp >/adconfig.log
RDBMS $ORACLE_HOME/appsutil/log/< context >/< timestamp >/NetServiceHandler.log
On the application tier:
$INST_TOP/admin/log/< timestamp >/adconfig.log
$INST_TOP/admin/log/< timestamp >/NetServiceHandler.log
When you apply C driver patch does it require database to be Up & Why ?
Unknown on
When you apply C driver patch does it require database to be Up & Why ?
Yes , database & db listener should be Up when you apply any driver patch in apps. even if driver is not updating any database object connection is required to validate apps & other schema and to upload patch history information in database tables.
Yes , database & db listener should be Up when you apply any driver patch in apps. even if driver is not updating any database object connection is required to validate apps & other schema and to upload patch history information in database tables.
Modes of the Patching?
Unknown on
Modes of the Patching?
- Test mode (apply=n), With the Test mode, we can see the effects applying the patch will have on your system before applying the patch.
- Pre-install mode (preinstall= y), Pre-install mode of Autopatch is used when the version of Oracle Applications AutoPatch works with is different than the version of Oracle Applications in the database. We use this mode during upgrade process.
- Non-interactive mode (adpatch defaultsfile= $APPL_TOP/ admin/<SID>/log)
RMAN Cross check Commands
Unknown on
RMAN Cross check Commands
Crosscheck is needed when an archivelog or file is manually removed i.e., not deleted by RMAN. This command ensures the data about backups in recovery catalog or controlfile is synchronized with corresponding data on disk
The crosscheck command does not delete any file that is unable to find out, but updates their repository records to expired
Use the crosscheck command to synchronize the physical reality of backups and copies with their logical records in the RMAN repository
For example
RMAN> crosscheck backupset 326;
You will get O/P as backup piece found it to be available, which confirms that the backup files exist and are usable.
Crosscheck is needed when an archivelog or file is manually removed i.e., not deleted by RMAN. This command ensures the data about backups in recovery catalog or controlfile is synchronized with corresponding data on disk
The crosscheck command does not delete any file that is unable to find out, but updates their repository records to expired
Use the crosscheck command to synchronize the physical reality of backups and copies with their logical records in the RMAN repository
For example
RMAN> crosscheck backupset 326;
You will get O/P as backup piece found it to be available, which confirms that the backup files exist and are usable.
Validate Commands for RMAN
Unknown on
Validate Commands for RMAN
The validate commands helps you ensure that the backed-up files exist in the proper location and they are readable and free from any logical and physical corruption for exampme
RMAN> validate backupset 9
The following command doesn’t restore any data files. It only validates the contents of the backup sets are restorable
RMAN> run {
Allocate channel d1 type disk;
Restore database validate;
}
The “finished restore” message indicates database can be recovered if necessary
The validate commands helps you ensure that the backed-up files exist in the proper location and they are readable and free from any logical and physical corruption for exampme
RMAN> validate backupset 9
The following command doesn’t restore any data files. It only validates the contents of the backup sets are restorable
RMAN> run {
Allocate channel d1 type disk;
Restore database validate;
}
The “finished restore” message indicates database can be recovered if necessary
Reports commands for RMAN
Unknown on
Reports commands for RMAN
Use the report commands to answer for the following question
- which files need a backup?
- which files or backups are obsolete and can be deleted
- which files have not been backed up recently and etc….
- if you have retention policy configured, then you can just run report need backup to determine which files need backups
RMAN> report need backup
- To report the database structure at a specified point in time
RMAN> report schema
- Which backup can be delete (obsolete)
RMAN> report obsolete
- Which files are not recoverable
RMAN> report unrecoverable
- To delete obsolete backup
RMAN> delete obsolete
RMAN List commands
Unknown on
RMAN List commands
The primary purpose of list command is to determine which backups or copies are available
- To list backup sets, backup pieces and proxy copies
RMAN> list backup
- To list backups by file
RMAN> list backup by file
- To list backups in summary mode
RMAN> list backup summary
- To list backups of all files in database
RMAN> list backup of database;
- To list copy of specified datafile
RMAN> list copy of datafile ‘/disk1/oradata/tbs_1.f ’;
- To list specified backup set
RMAN> list backupset 213
- To list a backup by tag
RMAN> list backup TAG ‘weekly _full_db_bk’
- To list archivelog files
RMAN> list archivelog all;
RMAN-Show commands
Unknown on
RMAN-Show commands
- To show all RMAN configuration settings
RMAN> show all;
- To show retention policy configuration settings
RMAN> show retention policy
- To show the automatic channel settings
RMAN> show channel
- To show the default device type
RMAN> show default device type
- To show the number of identical copies of each backup
RMAN> show archivelog backup copies
RMAN> show datafile copies
- To show the maximum size for RMAN backup sets
RMAN> show maxsetsize
- To show the snapshot controlfile filename
RMAN> show snapshot controlfile;
Steps for RMAN CLONING
Unknown on
Steps for RMAN CLONING
Step – 1
Create a new init.ora(parameter file) file for the auxiliary database. Create physical directories like udump, cdump, bdump. If your target db datafiles and log files directories are different from source then mention following converters in parameter file
. DB_file_name_convert
. LOG_file_name_convert
Step – 2
Start the auxiliary db instance in nomount stage. Target should be in mount or open stage
Sql> startup nomount
Step – 3
Create network files. Create listener at auxiliary side and tns at catalog
Step – 4
Connect to recovery catalog to target database and auxiliary database
RMAN> connect catalog rman/rman target sys/sys@to-target auxiliary sys/sys@to-auxiliary
Step – 5
After connecting all three databases take a backup of target database
RMAN> backup database plus archivelog;
Step – 6
Issue the RMAN duplicate command OS follows
RMAN> duplicate target database to AUX (dbname)
If you use above command, the files are restored to the target database, after which an incomplete recovery is performed and new database is opened with resetlogs command.
Step – 1
Create a new init.ora(parameter file) file for the auxiliary database. Create physical directories like udump, cdump, bdump. If your target db datafiles and log files directories are different from source then mention following converters in parameter file
. DB_file_name_convert
. LOG_file_name_convert
Step – 2
Start the auxiliary db instance in nomount stage. Target should be in mount or open stage
Sql> startup nomount
Step – 3
Create network files. Create listener at auxiliary side and tns at catalog
Step – 4
Connect to recovery catalog to target database and auxiliary database
RMAN> connect catalog rman/rman target sys/sys@to-target auxiliary sys/sys@to-auxiliary
Step – 5
After connecting all three databases take a backup of target database
RMAN> backup database plus archivelog;
Step – 6
Issue the RMAN duplicate command OS follows
RMAN> duplicate target database to AUX (dbname)
If you use above command, the files are restored to the target database, after which an incomplete recovery is performed and new database is opened with resetlogs command.
Analyzing the Oracle Apps 11i JVM logs
Unknown on Sunday, 20 May 2012
Analyzing the Oracle Apps 11i JVM logs
In order to analyze Oracle apps 11i JVM, lets open stdout file for one of Group, I have selected OACoreGroup here, log file ($IAS_ORACLE_HOME/Apache/Jserv/logs/jvm), open file like OACoreGroup.X.stdout you should see output like below if GC(Grabage Collector) is set in Verbose mode.
48561.624: [GC 325980K->170382K(519168K), 0.2751056 secs]
49307.880: [GC 334862K->179171K(519168K), 0.2660486 secs]
50236.662: [GC 343651K->187797K(519168K), 0.2518720 secs]
50515.494: [Full GC[Unloading class sun. reflect. Generated Method Accessor 143]
[Unloading class sun. reflect. GeneratedMethodAccessor136]
[Unloading class sun. reflect. GeneratedMethodAccessor74]
Here first entry is time since JVM was started so each time you bounce Apache it will be reset to 0. So difference between two entries is seconds after which GC (Garbage Collector) was executed. First entry in bracket [ is Heap Size at start of GC & Second entry is Heap Size after GC was executed. Number mentioned in round bracket () is heap size currently attocated in K. If you see GC running very frequently , you can start thinking of increasing JVM heap size
First three entries were for Minor Garbage Collector & fourth one is FULL GC is for Full Garbage Collector.
In order to analyze Oracle apps 11i JVM, lets open stdout file for one of Group, I have selected OACoreGroup here, log file ($IAS_ORACLE_HOME/Apache/Jserv/logs/jvm), open file like OACoreGroup.X.stdout you should see output like below if GC(Grabage Collector) is set in Verbose mode.
48561.624: [GC 325980K->170382K(519168K), 0.2751056 secs]
49307.880: [GC 334862K->179171K(519168K), 0.2660486 secs]
50236.662: [GC 343651K->187797K(519168K), 0.2518720 secs]
50515.494: [Full GC[Unloading class sun. reflect. Generated Method Accessor 143]
[Unloading class sun. reflect. GeneratedMethodAccessor136]
[Unloading class sun. reflect. GeneratedMethodAccessor74]
Here first entry is time since JVM was started so each time you bounce Apache it will be reset to 0. So difference between two entries is seconds after which GC (Garbage Collector) was executed. First entry in bracket [ is Heap Size at start of GC & Second entry is Heap Size after GC was executed. Number mentioned in round bracket () is heap size currently attocated in K. If you see GC running very frequently , you can start thinking of increasing JVM heap size
First three entries were for Minor Garbage Collector & fourth one is FULL GC is for Full Garbage Collector.
Where to find the Apps 11i JVM logs ?
Unknown on
Where to find the Apps 11i JVM logs ?
JVM log location is defined in java.sh ( found in $IAS_ORACLE_HOME/Apache/Apache/bin) Oracle Apps 11i JVM log file directory is defined by parameter JVMLOGDIR ( $IAS_ORACLE_HOME/Apache/Jserv/logs/jvm ) and log file are defined by STDOUTLOG & STDERRLOG. Example of JVM log files are
OACoreGroup.0.stderr ,OACoreGroup.0.stdout, DiscoGroup.0.stdout, DiscoGroup.0.stderr, XmlSvcsGrp.0.stderr, XmlSvcsGrp.0.stdout
- where 0 denotes first JVM & if 1 denotes second JVM. stderr records error encountered in JVM & stdout records other information like GC(Gargbage Collecter).
JVM log location is defined in java.sh ( found in $IAS_ORACLE_HOME/Apache/Apache/bin) Oracle Apps 11i JVM log file directory is defined by parameter JVMLOGDIR ( $IAS_ORACLE_HOME/Apache/Jserv/logs/jvm ) and log file are defined by STDOUTLOG & STDERRLOG. Example of JVM log files are
OACoreGroup.0.stderr ,OACoreGroup.0.stdout, DiscoGroup.0.stdout, DiscoGroup.0.stderr, XmlSvcsGrp.0.stderr, XmlSvcsGrp.0.stdout
- where 0 denotes first JVM & if 1 denotes second JVM. stderr records error encountered in JVM & stdout records other information like GC(Gargbage Collecter).
How to increase the No. Of JVM’s
Unknown on
How to increase the No. Of JVM’s
Since you know the place where number of JVM’s are stored in Apps 11i in Context File , so you can change them as per your requirement. There are basically following Groups with their own JVM’s.
OACoreGroup, where most of Java request goes
DiscoGroup, which serve your Discoverer related requests
FormsGroup, for Forms (If they are running in Servlet Mode, confirm it again)
XmlSvcsGroup, for XML Services
In Context File
disco_nprocs oa_var=”s_disco_nprocs” osd=”Solaris” 1 /disco_nprocs Sets 1 JVM Process for Discoverer.
oacore_nprocs oa_var=”s_oacore_nprocs” 1 /oacore_nprocs Sets 1 JVM for for OACoreGroup
Similarly , s_forms_servlet_nprocs & s_xmlsvcs_nprocs for Forms & XML Services resp.
These Groups are defined in configuration file for Jserv i.e. jserv.conf under $IAS_ORA/Apache/Jserv/conf ; like
ApJServGroup OACoreGroup
ApJServGroup DiscoGroup
ApJServGroup FormsGroup
ApJServGroup XmlSvcsGrp
Since you know the place where number of JVM’s are stored in Apps 11i in Context File , so you can change them as per your requirement. There are basically following Groups with their own JVM’s.
OACoreGroup, where most of Java request goes
DiscoGroup, which serve your Discoverer related requests
FormsGroup, for Forms (If they are running in Servlet Mode, confirm it again)
XmlSvcsGroup, for XML Services
In Context File
disco_nprocs oa_var=”s_disco_nprocs” osd=”Solaris” 1 /disco_nprocs Sets 1 JVM Process for Discoverer.
oacore_nprocs oa_var=”s_oacore_nprocs” 1 /oacore_nprocs Sets 1 JVM for for OACoreGroup
Similarly , s_forms_servlet_nprocs & s_xmlsvcs_nprocs for Forms & XML Services resp.
These Groups are defined in configuration file for Jserv i.e. jserv.conf under $IAS_ORA/Apache/Jserv/conf ; like
ApJServGroup OACoreGroup
ApJServGroup DiscoGroup
ApJServGroup FormsGroup
ApJServGroup XmlSvcsGrp
How & Where to check JVM related configuration in Oracle Apps 11i?
Unknown on Saturday, 19 May 2012
How & Where to check JVM related configuration in Oracle Apps 11i?
Open CONTEXT file under $APPL_TOP/admin (xml file) which is of pattern $SID_$HOSTNAME.xml
There are two important lines in CONTEXT file which will help you in understanding JVM
. jvm_options oa_var=”s_jvm_options” osd=”Solaris” -verbose:gc -Xmx512M -Xms128M -XX:MaxPermSize=128M -XX:NewRatio=2 -XX:+PrintGCTimeStamps -XX:+UseTLAB /jvm_options
- Verbose:gc means JVM is configured to print output when gc(Garbage Collector) runs.
- Xmx is maximum memory allocated to JVM in above example its 512 MB.
- Xms is JVM will start with this much memory i.e. 128 MB.
Now Check another line in 11i Context file like
oacore_nprocs oa_var=”s_oacore_nprocs”2/oacore_nprocs
Which means that there are two JVM’s for OACore Group. Usually default its 1 JVM in my Instance I changed it to 2, to cater huge Self Service users in my case.
Open CONTEXT file under $APPL_TOP/admin (xml file) which is of pattern $SID_$HOSTNAME.xml
There are two important lines in CONTEXT file which will help you in understanding JVM
. jvm_options oa_var=”s_jvm_options” osd=”Solaris” -verbose:gc -Xmx512M -Xms128M -XX:MaxPermSize=128M -XX:NewRatio=2 -XX:+PrintGCTimeStamps -XX:+UseTLAB /jvm_options
- Verbose:gc means JVM is configured to print output when gc(Garbage Collector) runs.
- Xmx is maximum memory allocated to JVM in above example its 512 MB.
- Xms is JVM will start with this much memory i.e. 128 MB.
Now Check another line in 11i Context file like
oacore_nprocs oa_var=”s_oacore_nprocs”2/oacore_nprocs
Which means that there are two JVM’s for OACore Group. Usually default its 1 JVM in my Instance I changed it to 2, to cater huge Self Service users in my case.
What is *.dbc file and what is the location of dbc file ?
Unknown on
What is *.dbc file and what is the location of dbc file ?
DBC as name stands for is database connect descriptor file used to connect to database.
DBC file is quite important as whenever Java or any other program like forms want to connect to database it uses DBC file.
This file by default located in $FND_TOP/secure directory also called as $FND_SECURE directory.
Typical entry in DBC file is:
GUEST_USER_PWD
APPS_JDBC_URL
DB_HOST
DBC as name stands for is database connect descriptor file used to connect to database.
DBC file is quite important as whenever Java or any other program like forms want to connect to database it uses DBC file.
This file by default located in $FND_TOP/secure directory also called as $FND_SECURE directory.
Typical entry in DBC file is:
GUEST_USER_PWD
APPS_JDBC_URL
DB_HOST
What is the difference between AD_BUGS and AD_APPLID_PATCHES ?
Unknown on Friday, 18 May 2012
What is the difference between AD_BUGS and AD_APPLID_PATCHES ?
AD_BUGS holds information about the various Oracle Applications bugs whose fixes have been applied (ie. patched) in the Oracle Applications installation.
AD_APPLIED_PATCHES holds information about the “distinct” Oracle Applications patches that have been applied. If 2 patches happen to have the same name but are different in content (eg. “merged” patches), then they are considered distinct and this table will therefore hold 2 records.
Where is appsweb.cfg or appsweb_$CONTEXT.cfg files are stored and why it’s used?
Unknown on
Where is appsweb.cfg or appsweb_$CONTEXT.cfg files are stored and why it’s used?
This file is defined by environment variable FORMS60_WEB_CONFIG_FILE This is usually in directory $OA_HTML/bin on forms tier.
This file is used by any forms client session. When a user try to access forms, f60webmx picks up this file and based on this configuration file creates a forms session to user/client.
This file is defined by environment variable FORMS60_WEB_CONFIG_FILE This is usually in directory $OA_HTML/bin on forms tier.
This file is used by any forms client session. When a user try to access forms, f60webmx picks up this file and based on this configuration file creates a forms session to user/client.
What are things you do to reduce the patch timing?
Unknown on
What are things you do to reduce the patch timing?
To Reduce the Patch timing in apps , defaults file, nocompilejsp , nocompiledb , merge patch
You can take advantage of following :
# Merging patches via admrgpch
# Use various adpatch options like nocompiledb or nocompilejsp
# Use defaults file
# Staged APPL_TOP during upgrades
# Increase batch size (Might result into negative )
Reduce the Patching Downtime in Oracle Applications
Following are the various ways to reduce Oracle Application patching downtime.
1. Consolidate Patches
Using AD Merge Patch to merge multiple patches into a single patch that eliminates the time it takes to start a new AutoPatch session.
2. Apply Patches in Non-interactive Mode
You can automate much of the patching process by applying patches in non-interactive mode. In this mode,we store the responses to the patching prompts in a defaults file, and then specify the name of this default file when we run AutoPatch.
3. Skip Database Tasks
We can use AutoPatch options=nocompiledb, nomaintainmrc to skip tasks such as “Compile APPS schema” and “Maintain MRC” until all patches have been applied successfully. Normally AutoPatch automatically compiles the APPS schema and maintains the MRC schema during the patching application of standard patches.
4. Skip upload of Patch Information
Normally AutoPatch uploads patch history information to the database automatically each time it successfully applies a patch. The time required for the upload may be more depending on the size of the patch. We can skip this task during the AutoPatch session and upload the patch history information later.
We will use options=phtofile during the downtime patching session to skip the information upload. After a successfully patch,we will run AutoPatch again with the argument uploadph=y to upload the patch history information from the patch history files to your database. AutoPatch performs the upload and then it quits.
5. Apply patch on a Test System First
To analyze the effects of applying a patch, we should apply it first to a test system. We will check for long-running jobs and phases, which take the longest time in the timing statistics report ($APPL_TOP/admin//out/adt.lst).
6. Implement Shared Application Tier File System
Implementing a multi-node system with a shared application tier file system saves patching time because we apply patches only once, on the primary node.
7. Use Distributed AD
Distributed AD is a parallel processing feature that reduces downtime by efficiently utilizing all the available server resources on a shared application file system.
8. Reduce Resource Related Issues
We should modify rollback segment sizing and temporary segment space to optimize resources during patch application.
9. Impact analysis
We can perform an impact analysis on a patch, without affecting system, by running AutoPatch with the command line option apply=no.
Some patches include only file system changes. Most of the Applications patches do not include database changes.
10. Use AutoPatch options efficiently
Using certain AutoPatch command line options and managing the number of workers can minimize patch application time. We can use options like norevcache, nogenform, nogenrep etc to reduce patching downtime.
11. Merge NLS (Translation) Patches and Apply Them During Uptime
If we have multiple patches for multiple languages, merge all US patches into a single patch. Then, merge the NLS translation patches for each active language in our system into a single patch for each language. Apply the US patches first during downtime. Then, we can apply the merged NLS translation patches during uptime.
12. ADJREOPTS and ADJRIOPTS Paramter
One other small thing which makes a considerable difference is ADJREOPTS and ADJRIOPTS Environment Variable.
During any Patching there are several Framework XML Files, Jar Files etc... which are loaded into the Database using adjava Command, Even Jar Generation Phase of Copy Driver uses ADJREOPTS and ADJRIOPTS Parameters. By Default these Parameters are set to 256Mb or 512Mb Memory, but if i am not wrong during any Production Upgrade, these Systems have tremendous Horsepower in terms of CPU and Memory
You can increase this Parameter to 1Gig HeapSize Comfortably for better patching performance. This Parameter can be fixed in Autoconfig XML File and Run Autoconfig. The two tags are s_adjreopts and s_adjriopts.
To Reduce the Patch timing in apps , defaults file, nocompilejsp , nocompiledb , merge patch
You can take advantage of following :
# Merging patches via admrgpch
# Use various adpatch options like nocompiledb or nocompilejsp
# Use defaults file
# Staged APPL_TOP during upgrades
# Increase batch size (Might result into negative )
Reduce the Patching Downtime in Oracle Applications
Following are the various ways to reduce Oracle Application patching downtime.
1. Consolidate Patches
Using AD Merge Patch to merge multiple patches into a single patch that eliminates the time it takes to start a new AutoPatch session.
2. Apply Patches in Non-interactive Mode
You can automate much of the patching process by applying patches in non-interactive mode. In this mode,we store the responses to the patching prompts in a defaults file, and then specify the name of this default file when we run AutoPatch.
3. Skip Database Tasks
We can use AutoPatch options=nocompiledb, nomaintainmrc to skip tasks such as “Compile APPS schema” and “Maintain MRC” until all patches have been applied successfully. Normally AutoPatch automatically compiles the APPS schema and maintains the MRC schema during the patching application of standard patches.
4. Skip upload of Patch Information
Normally AutoPatch uploads patch history information to the database automatically each time it successfully applies a patch. The time required for the upload may be more depending on the size of the patch. We can skip this task during the AutoPatch session and upload the patch history information later.
We will use options=phtofile during the downtime patching session to skip the information upload. After a successfully patch,we will run AutoPatch again with the argument uploadph=y to upload the patch history information from the patch history files to your database. AutoPatch performs the upload and then it quits.
5. Apply patch on a Test System First
To analyze the effects of applying a patch, we should apply it first to a test system. We will check for long-running jobs and phases, which take the longest time in the timing statistics report ($APPL_TOP/admin//out/adt.lst).
6. Implement Shared Application Tier File System
Implementing a multi-node system with a shared application tier file system saves patching time because we apply patches only once, on the primary node.
7. Use Distributed AD
Distributed AD is a parallel processing feature that reduces downtime by efficiently utilizing all the available server resources on a shared application file system.
8. Reduce Resource Related Issues
We should modify rollback segment sizing and temporary segment space to optimize resources during patch application.
9. Impact analysis
We can perform an impact analysis on a patch, without affecting system, by running AutoPatch with the command line option apply=no.
Some patches include only file system changes. Most of the Applications patches do not include database changes.
10. Use AutoPatch options efficiently
Using certain AutoPatch command line options and managing the number of workers can minimize patch application time. We can use options like norevcache, nogenform, nogenrep etc to reduce patching downtime.
11. Merge NLS (Translation) Patches and Apply Them During Uptime
If we have multiple patches for multiple languages, merge all US patches into a single patch. Then, merge the NLS translation patches for each active language in our system into a single patch for each language. Apply the US patches first during downtime. Then, we can apply the merged NLS translation patches during uptime.
12. ADJREOPTS and ADJRIOPTS Paramter
One other small thing which makes a considerable difference is ADJREOPTS and ADJRIOPTS Environment Variable.
During any Patching there are several Framework XML Files, Jar Files etc... which are loaded into the Database using adjava Command, Even Jar Generation Phase of Copy Driver uses ADJREOPTS and ADJRIOPTS Parameters. By Default these Parameters are set to 256Mb or 512Mb Memory, but if i am not wrong during any Production Upgrade, these Systems have tremendous Horsepower in terms of CPU and Memory
You can increase this Parameter to 1Gig HeapSize Comfortably for better patching performance. This Parameter can be fixed in Autoconfig XML File and Run Autoconfig. The two tags are s_adjreopts and s_adjriopts.
You can use defaults file like
adpatch defaultsfile=$APPL_TOP/admin/$SID/defaults.txt logfile=654321.log patchtop=/patches/654321 driver=u654321.drv interactive=no
so if you don’t want adpatch to compile database & jsp with each execution of adpatch you can use options nocompiledb & nocompilejsp
adpatch defaultsfile=$APPL_TOP/admin/$SID/defaults.txt options=nocompilejsp,nocompiledb logfile=654321.log patchtop=/patches/654321 driver=u654321.drv interactive=no
Once your patching is complete and you have applied all patches you can compile jsp & database once.
How to compile database objetcs ?
Use adadmin compile database option else
Use utlrp.sql script on database tier at $ORACLE_HOME/rdbms/admin
How to compile JSP in Apps ?
Use perl script ojspCompile.pl under $JTF_TOP/admin/scripts like
perl ojspCompile.pl –compile
Merge Patches to reduce patch timing
Another option to reduce patch timing is to use ad tool admrgpch, so lets say you have 10 patches to apply you can merge 10 patches & create single patch and apply that single patch. ( Sometime applying patches after merging may fail because of conflict in driver file so check first on test server)
create a directory lets say source_directory & put all patches which you want to merge in that & create another directory where your final single patch will come lets say destination_directory then use
admrgpch source_directory destination_directory
If there is any error in merging patch by default it will be in directory from where you are initiating admrgpch by name admrgpch.log
Apply patch from target directory via normal adpatch way.
If you are Upgrading your apps instance lets say from 11.5.8 or 11.5.9 to 11.5.10 you can use stagged APPL_TOP (ddifferent from shared APPL_TOP)
Activate extended SQL trace for a given session
Unknown on Thursday, 17 May 2012
Activate extended SQL trace for a given session
Enable extended SQL trace since they had already found the session id. Here are the steps for activating extended SQL trace as given in the book, Optimizing Oracle Performance by Cary Milsap:
There are several ways to activate extended SQL tracing for a given session. Two such ways are shown in Example 6-5 and Example 6-6. Oracle encourages you to use the DBMS_SUPPORT package instead of DBMS_SYSTEM if you have a choice (Oracle MetaLink note 62294.1). However, Oracle does not ship dbmssupp.sql and prvtsupp.plb with some software distributions. If you cannot find DBMS_SUPPORT on your system, don't despair. My colleagues and I have used DBMS_SYSTEM.SET_EV in hundreds of performance improvement projects without negative incident. Friends in Oracle Support have informed me that the DBMS_SUPPORT.START_TRACE_IN_SESSION procedure is implemented as a call to SET_EV anyway.
The safety of using START_TRACE_IN_SESSION is that you're not susceptible to typographical errors in specifying event 10046. Accidentally typing the wrong event number could obviously lead to catastrophe.
Example 6-5. Activating extended SQL trace at level 8 with START_TRACE_IN_SESSION for a session identified by :sid and :serial
sys.dbms_support.start_trace_in_session(:sid, :serial,waits=>true, binds=>false)
/* code to be traced executes during this time window */
sys.dbms_support.stop_trace_in_session(:sid, :serial)
Do not use DBMS_SYSTEM.START_SQL_TRACE_IN_SESSION to activate extended SQL trace, because this procedure can activate SQL tracing only at level 1. You cannot activate extended SQL tracing with START_SQL_TRACE_IN_SESSION.
Example 6-6. Activating extended SQL trace at level 8 with SET_EV for a session identified by :sid and :serial
sys.dbms_system.set_ev(:sid, :serial, 10046, 8, '')
/* code to be traced executes during this time window */
sys.dbms_system.set_ev(:sid, :serial, 10046, 0, '')
You may also refer to Metalink Note: 376422.1 which describes recommended methods for getting extended trace:
Subject: Recommended Method for Obtaining 10046 trace for Tuning
Doc ID: Note:376442.1 Type: FAQ
Last Revision Date: 19-FEB-2008 Status: PUBLISHED
PURPOSE
Outline how to effectively gather 10046 trace for use with tuning issues.
SCOPE & APPLICATION
DBAs, Developers and Support personnel
Gathering 10046 trace
Event 10046 is the standard method of gathering extended sql_trace information for Oracle sessions.
For details of the event see:
Note 21154.1 EVENT: 10046 "enable SQL statement tracing (including binds/waits)"
For Tuning issues the typical need is to record wait and bind variable infrormation which is achieved using level 12.
The following examples outline how to set the event in various scenarios:
Session Tracing
Tracing a process after it has started
Instance wide tracing
Initialisation parameter setting
Tracing sessions via a logon trigger
Event 10046 tracing will produce a trace file in the for user processes and for background processes.
To show the loaction of the user_dump_dest, the following command can be used:
show parameter user_dump_dest
Note that some examples include setting a 'tracefile_identifier' to assist with finding the resultant trace output.
Session Tracing
This tracing can be used where the session is accessible to the user prior to the start of the statement(s) to be traced.
To gather 10046 trace at the session level:
alter session set tracefile_identifier='10046';
alter session set timed_statistics = true;
alter session set statistics_level=all;
alter session set max_dump_file_size = unlimited;
alter session set events '10046 trace name context forever,level 12';
-- Execute the queries or operations to be traced here --
select * from dual;
exit;
If the session is not exited then the trace can be disabled using:
alter session set events '10046 trace name context off';
Note that if the session is not closed cleanly and tracing is disabled, then important trace information may be missing from the trace file.
Tracing a process after it has started
If trace from an existing session is required then oradebug can be used to attach to the session and initiate 10046 tracing.
The first step is to identify the session to be traced by some means:
For example, in SQL*Plus, start a session to find the OS process id (spid) for the target session:
select p.PID,p.SPID,s.SID
from v$process p,v$session s
where s.paddr = p.addr
and s.sid = &SESSION_ID
/
SPID is the operating system Process identifier (os pid)
PID is the Oracle Process identifier (ora pid)
Once the OS process id for the process has been determined then the trace can be initialised as follows:
Lets assume that the process to be traced has an os pid of 9834.
Login to SQL*Plus as a dba and execute the following:
connect / as sysdba
oradebug setospid 9834
oradebug unlimit
oradebug event 10046 trace name context forever,level 12
Remember to replace the example '9834' value with the actual os pid.
Note that it is also possible to attach to a session via oradebug using the 'setorapid'.
In this case the PID (Oracle Process identifier ) would be used (rather than the 'SPID') and the oradebug text would change to:
connect / as sysdba
oradebug setorapid 9834
oradebug unlimit
oradebug event 10046 trace name context forever,level 12
Remember to replace the example '9834' value with the actual ora pid.
To disable oradebug tracing once tracing is finished:
oradebug event 10046 trace name context off
Alternatively you can use the DBMS_SUPPORT package to trace sessions.
To install the DBMS_SUPPORT package see: Note 377204.1 How to Install the DBMS_SUPPORT Package
To set session tracing using the DBMS_SUPPORT package:
exec DBMS_SUPPORT.START_TRACE_IN_SESSION( &SID, &Serial, waits=>true, binds=>true )
SID is the Oracle Session ID for the session that is to be traced.
To disable the tracing use:
exec DBMS_SUPPORT.STOP_TRACE_IN_SESSION( &SID , null )
Instance wide tracing
This setting will trace every session that is created after the parameter is set. Existing sessions will not be traced.
Setting system-wide 10046 tracing can be useful for scenarios where a problem session is known to occur but cannot be identified in advance.
In this situation, tracing can be enabled for a short period of time, the problem can then be reproduced and tracing disabled and the resultant traces searched for evidence of the problem.
System-wide tracing can be enabled as follows:
alter system set events '10046 trace name context forever,level 12';
The setting can be disabled in all sessions by using the following command:
alter system set events '10046 trace name context off';
Initialisation parameter setting
This setting will trace every session in the instance when it is restarted.
event="10046 trace name context forever,level 12"
The setting can be disabled by removing the parameter and restarting the instance or by using an alter system command as follows:
alter system set events '10046 trace name context off';
Via a Logon Trigger
There may be some situations where it is necessary to trace the activity of a specific user. In this case a logon trigger could be used.
An example is provided below:
CREATE OR REPLACE TRIGGER SYS.set_trace
AFTER LOGON ON DATABASE
WHEN (USER like '&USERNAME')
DECLARE
lcommand varchar(200);
BEGIN
EXECUTE IMMEDIATE 'alter session set statistics_level=ALL';
EXECUTE IMMEDIATE 'alter session set max_dump_file_size=UNLIMITED';
EXECUTE IMMEDIATE 'alter session set events ''10046 trace name context forever, level 12''';
END set_trace;
/
RELATED DOCUMENTS
Note 41634.1 TKPROF and Problem Solving
Note 214106.1 Using TKProf to compare actual and predicted row counts
Note 32951.1 Tkprof Interpretation
Note 75713.1 Important Customer information about using Numeric Events
Note 21154.1 EVENT: 10046 "enable SQL statement tracing (including binds/waits)"
Note 258418.1 Getting 10046 Trace for Export and Import:
Note 242374.1 Tracing PX session with a 10046 event or sql_trace
Note 171647.1 Tracing Oracle Applications using Event 10046
Note 1058210.6 How to Enable SQL_TRACE for Another Session Using Oradebug
Note 224270.1 Trace Analyzer TRCANLZR - Interpreting Raw SQL Traces with Binds and/or Waits generated by EVENT 10046
Note 377204.1 How to Install the DBMS_SUPPORT Package
Note 62294.1 The DBMS_SUPPORT Package.
Note 62160.1 Tracing Sessions in Oracle
Enable extended SQL trace since they had already found the session id. Here are the steps for activating extended SQL trace as given in the book, Optimizing Oracle Performance by Cary Milsap:
There are several ways to activate extended SQL tracing for a given session. Two such ways are shown in Example 6-5 and Example 6-6. Oracle encourages you to use the DBMS_SUPPORT package instead of DBMS_SYSTEM if you have a choice (Oracle MetaLink note 62294.1). However, Oracle does not ship dbmssupp.sql and prvtsupp.plb with some software distributions. If you cannot find DBMS_SUPPORT on your system, don't despair. My colleagues and I have used DBMS_SYSTEM.SET_EV in hundreds of performance improvement projects without negative incident. Friends in Oracle Support have informed me that the DBMS_SUPPORT.START_TRACE_IN_SESSION procedure is implemented as a call to SET_EV anyway.
The safety of using START_TRACE_IN_SESSION is that you're not susceptible to typographical errors in specifying event 10046. Accidentally typing the wrong event number could obviously lead to catastrophe.
Example 6-5. Activating extended SQL trace at level 8 with START_TRACE_IN_SESSION for a session identified by :sid and :serial
sys.dbms_support.start_trace_in_session(:sid, :serial,waits=>true, binds=>false)
/* code to be traced executes during this time window */
sys.dbms_support.stop_trace_in_session(:sid, :serial)
Do not use DBMS_SYSTEM.START_SQL_TRACE_IN_SESSION to activate extended SQL trace, because this procedure can activate SQL tracing only at level 1. You cannot activate extended SQL tracing with START_SQL_TRACE_IN_SESSION.
Example 6-6. Activating extended SQL trace at level 8 with SET_EV for a session identified by :sid and :serial
sys.dbms_system.set_ev(:sid, :serial, 10046, 8, '')
/* code to be traced executes during this time window */
sys.dbms_system.set_ev(:sid, :serial, 10046, 0, '')
You may also refer to Metalink Note: 376422.1 which describes recommended methods for getting extended trace:
Subject: Recommended Method for Obtaining 10046 trace for Tuning
Doc ID: Note:376442.1 Type: FAQ
Last Revision Date: 19-FEB-2008 Status: PUBLISHED
PURPOSE
Outline how to effectively gather 10046 trace for use with tuning issues.
SCOPE & APPLICATION
DBAs, Developers and Support personnel
Gathering 10046 trace
Event 10046 is the standard method of gathering extended sql_trace information for Oracle sessions.
For details of the event see:
Note 21154.1 EVENT: 10046 "enable SQL statement tracing (including binds/waits)"
For Tuning issues the typical need is to record wait and bind variable infrormation which is achieved using level 12.
The following examples outline how to set the event in various scenarios:
Session Tracing
Tracing a process after it has started
Instance wide tracing
Initialisation parameter setting
Tracing sessions via a logon trigger
Event 10046 tracing will produce a trace file in the for user processes and for background processes.
To show the loaction of the user_dump_dest, the following command can be used:
show parameter user_dump_dest
Note that some examples include setting a 'tracefile_identifier' to assist with finding the resultant trace output.
Session Tracing
This tracing can be used where the session is accessible to the user prior to the start of the statement(s) to be traced.
To gather 10046 trace at the session level:
alter session set tracefile_identifier='10046';
alter session set timed_statistics = true;
alter session set statistics_level=all;
alter session set max_dump_file_size = unlimited;
alter session set events '10046 trace name context forever,level 12';
-- Execute the queries or operations to be traced here --
select * from dual;
exit;
If the session is not exited then the trace can be disabled using:
alter session set events '10046 trace name context off';
Note that if the session is not closed cleanly and tracing is disabled, then important trace information may be missing from the trace file.
Tracing a process after it has started
If trace from an existing session is required then oradebug can be used to attach to the session and initiate 10046 tracing.
The first step is to identify the session to be traced by some means:
For example, in SQL*Plus, start a session to find the OS process id (spid) for the target session:
select p.PID,p.SPID,s.SID
from v$process p,v$session s
where s.paddr = p.addr
and s.sid = &SESSION_ID
/
SPID is the operating system Process identifier (os pid)
PID is the Oracle Process identifier (ora pid)
Once the OS process id for the process has been determined then the trace can be initialised as follows:
Lets assume that the process to be traced has an os pid of 9834.
Login to SQL*Plus as a dba and execute the following:
connect / as sysdba
oradebug setospid 9834
oradebug unlimit
oradebug event 10046 trace name context forever,level 12
Remember to replace the example '9834' value with the actual os pid.
Note that it is also possible to attach to a session via oradebug using the 'setorapid'.
In this case the PID (Oracle Process identifier ) would be used (rather than the 'SPID') and the oradebug text would change to:
connect / as sysdba
oradebug setorapid 9834
oradebug unlimit
oradebug event 10046 trace name context forever,level 12
Remember to replace the example '9834' value with the actual ora pid.
To disable oradebug tracing once tracing is finished:
oradebug event 10046 trace name context off
Alternatively you can use the DBMS_SUPPORT package to trace sessions.
To install the DBMS_SUPPORT package see: Note 377204.1 How to Install the DBMS_SUPPORT Package
To set session tracing using the DBMS_SUPPORT package:
exec DBMS_SUPPORT.START_TRACE_IN_SESSION( &SID, &Serial, waits=>true, binds=>true )
SID is the Oracle Session ID for the session that is to be traced.
To disable the tracing use:
exec DBMS_SUPPORT.STOP_TRACE_IN_SESSION( &SID , null )
Instance wide tracing
This setting will trace every session that is created after the parameter is set. Existing sessions will not be traced.
Setting system-wide 10046 tracing can be useful for scenarios where a problem session is known to occur but cannot be identified in advance.
In this situation, tracing can be enabled for a short period of time, the problem can then be reproduced and tracing disabled and the resultant traces searched for evidence of the problem.
System-wide tracing can be enabled as follows:
alter system set events '10046 trace name context forever,level 12';
The setting can be disabled in all sessions by using the following command:
alter system set events '10046 trace name context off';
Initialisation parameter setting
This setting will trace every session in the instance when it is restarted.
event="10046 trace name context forever,level 12"
The setting can be disabled by removing the parameter and restarting the instance or by using an alter system command as follows:
alter system set events '10046 trace name context off';
Via a Logon Trigger
There may be some situations where it is necessary to trace the activity of a specific user. In this case a logon trigger could be used.
An example is provided below:
CREATE OR REPLACE TRIGGER SYS.set_trace
AFTER LOGON ON DATABASE
WHEN (USER like '&USERNAME')
DECLARE
lcommand varchar(200);
BEGIN
EXECUTE IMMEDIATE 'alter session set statistics_level=ALL';
EXECUTE IMMEDIATE 'alter session set max_dump_file_size=UNLIMITED';
EXECUTE IMMEDIATE 'alter session set events ''10046 trace name context forever, level 12''';
END set_trace;
/
RELATED DOCUMENTS
Note 41634.1 TKPROF and Problem Solving
Note 214106.1 Using TKProf to compare actual and predicted row counts
Note 32951.1 Tkprof Interpretation
Note 75713.1 Important Customer information about using Numeric Events
Note 21154.1 EVENT: 10046 "enable SQL statement tracing (including binds/waits)"
Note 258418.1 Getting 10046 Trace for Export and Import:
Note 242374.1 Tracing PX session with a 10046 event or sql_trace
Note 171647.1 Tracing Oracle Applications using Event 10046
Note 1058210.6 How to Enable SQL_TRACE for Another Session Using Oradebug
Note 224270.1 Trace Analyzer TRCANLZR - Interpreting Raw SQL Traces with Binds and/or Waits generated by EVENT 10046
Note 377204.1 How to Install the DBMS_SUPPORT Package
Note 62294.1 The DBMS_SUPPORT Package.
Note 62160.1 Tracing Sessions in Oracle
How to start trace of an existing session in 10g
Unknown on
How to start trace of an existing session in 10g
10g has a new package called DBMS_MONITOR
EXECUTE DBMS_MONITOR.SESSION_TRACE_ENABLE(&sid,&serial,waits=>true, binds=>false);
To disable
EXECUTE DBMS_MONITOR.SESSION_TRACE_DISABLE(&sid,&serial)
My old article on tracing
http://appstier.blogspot.in/2012/05/activate-extended-sql-trace-for-given.html
10g has a new package called DBMS_MONITOR
EXECUTE DBMS_MONITOR.SESSION_TRACE_ENABLE(&sid,&serial,waits=>true, binds=>false);
To disable
EXECUTE DBMS_MONITOR.SESSION_TRACE_DISABLE(&sid,&serial)
My old article on tracing
http://appstier.blogspot.in/2012/05/activate-extended-sql-trace-for-given.html
what is the naming conventions for concurrent request log,out files and manager log files
Unknown on Wednesday, 16 May 2012
What is the naming conventions for concurrent request log,out files and manager log files
Log file :
l<request id>.req
Output files:
o<request id>.out
Where are the managers logfiles goes:
Similar to concurrent requset output and log,
the concurrent manager does also generate some files and typical naming convention are as below:
ICM logfile: Default is std.mgr, can be changed with the mgrname
Concurrent manager log: w<XXXXXX>.mgr
Transaction manager log: t<XXXXXX>.mgr
Conflict Resolution manager log: c<XXXXXX>.mgr
Where: <XXXXXX> is the concurrent process id of the manager.
Log file :
l<request id>.req
Output files:
o<request id>.out
Where are the managers logfiles goes:
Similar to concurrent requset output and log,
the concurrent manager does also generate some files and typical naming convention are as below:
ICM logfile: Default is std.mgr, can be changed with the mgrname
Concurrent manager log: w<XXXXXX>.mgr
Transaction manager log: t<XXXXXX>.mgr
Conflict Resolution manager log: c<XXXXXX>.mgr
Where: <XXXXXX> is the concurrent process id of the manager.
How can we find the log & out files of concurrent Requests?
Unknown on
How can we find the log & out files of concurrent Requests?
or
what is the location of log & out files of concurrent Requests?
From Back end :
Log file Locations: $APPLCSF/$APPLLOG
Out File Locations: $APPLCSF/$APPLOUT
Each log file and out file related to each request is identified with that request id.
From Front End:
Navigate to System Administrator --> Concurrent-->Requests-->find [button]
Log file: Click on view log button
Out file : Click on view output button
Using SQL:
Connect to sqlplus as 'apps' user
SQL>@$FNS_TOP/sql/afcmcreq.sql
Then it will promts for the request id . By using this we can view only log files.
Concurrent Manager FAQs
Unknown on Tuesday, 8 May 2012
Concurrent Manager FAQs
Which Concurrent Managers (CCMs) are supported by the Sysadmin team?
Internal Concurrent Manager (ICM)
Standard Manager
Conflict Resolution Manager (CRM)
The setup of product-specific managers related issues should
be directed to the associated product group, i.e. the Inventory manager
Q: Where do the concurrent request output and log files reside?
A: $APPLCSF/out or $Product_Top/out for output files
$APPLCSF/log or $Product_Top/log for log files
Q: Where are temporary files located?
A: Temporary files reside in:
$APPLPTMP$APPLTMP
$REPORTS25_TMP (Release 11.0)
$REPORTS60_TMP (Release 11.5)
Q: How to change PMON method to LOCK.
To check the process monitor (PMON) method status:
Connect as database user “APPS”.
SELECT profile_option_value
FROM fnd_profile_option_values
WHERE level_id = 10001
AND level_value = 0
AND application_id = 0
AND profile_option_id =
(SELECT profile_option_id
FROM fnd_profile_options
WHERE profile_option_name = ‘CONC_PMON_METHOD’);
This should return one row with a value of ‘LOCK’
If the value is ‘RDBMS’ or ‘OS’ run the following script:
$FND_TOP/sql/AFIMPMON.SQL – this will set the PMON method to LOCK instead of RDBMS.
Bounce the database. If running on NT, restart the NT Server completely.
Within 11.5 Applications, the only PMON method is LOCK.
Q: How to start and shutdown the CCM on Unix as APPS
A: To Start:
STARTMGR sysmgr=APPS/passwd
To Shutdown:
concsub apps/<APPS password> sysadmin ‘System Administrator’ SYSADMIN CONCURRENT FND ABORT
11.5 => 11.5.4
adcmctl.sh apps/passwd start/stop prod
11.5.5 =>
adcmctl.sh start/stop apps/passwd prod
Q: How to terminate a concurrent request that cannot be cancelled?
A: Identify the request number to terminate. Shut down the concurrent managers and issue the following sql command as applsys:
update fnd_concurrent_requests
set status_code = ‘E’, phase_code = ‘C’
where Request_id = <reqnum>; (reqnum = request number)
Q: A Manager is not activating.
A: Check the count in sys.dual, system.dual, & apps.fnd_dual. There should only be one (1) row for each. If the count is greater, change to one only. This can be done from sqlplus as follows:
As user apps:
select *
from SYS.DUAL;
Any extra rows should be deleted.
delete rownum
from SYS.DUAL;
(rownum = the row number to delete)
Any extra rows for apps.fnd_dual must be removed by performing the following SQL command:
delete from fnd_dual
where rownum < (select max(rownum) from fnd_dual);
Bounce the Concurrent Managers.
Q: Internal Concurrent Manager.
A: If the ICM should go down, requests will continue to run normally, except for ‘queue control’ requests.
If the ICM should go down, you can restart it with ‘startmgr’. There is no need to shut down the other managers first.
Q: How to purge requests that are in Pending status.
A: The Purge Concurrent Requests program will only purge requests that are in Completed status. Set the status of the Pending requests to Completed
before purging them. The Internal Manager Must be DOWN!
Using sqlplus as APPLSYS perform the following:
UPDATE fnd_concurrent_requests
SET phase_code = ‘C’
WHERE phase_code = ‘P’.
Which Concurrent Managers (CCMs) are supported by the Sysadmin team?
Internal Concurrent Manager (ICM)
Standard Manager
Conflict Resolution Manager (CRM)
The setup of product-specific managers related issues should
be directed to the associated product group, i.e. the Inventory manager
Q: Where do the concurrent request output and log files reside?
A: $APPLCSF/out or $Product_Top/out for output files
$APPLCSF/log or $Product_Top/log for log files
Q: Where are temporary files located?
A: Temporary files reside in:
$APPLPTMP$APPLTMP
$REPORTS25_TMP (Release 11.0)
$REPORTS60_TMP (Release 11.5)
Q: How to change PMON method to LOCK.
To check the process monitor (PMON) method status:
Connect as database user “APPS”.
SELECT profile_option_value
FROM fnd_profile_option_values
WHERE level_id = 10001
AND level_value = 0
AND application_id = 0
AND profile_option_id =
(SELECT profile_option_id
FROM fnd_profile_options
WHERE profile_option_name = ‘CONC_PMON_METHOD’);
This should return one row with a value of ‘LOCK’
If the value is ‘RDBMS’ or ‘OS’ run the following script:
$FND_TOP/sql/AFIMPMON.SQL – this will set the PMON method to LOCK instead of RDBMS.
Bounce the database. If running on NT, restart the NT Server completely.
Within 11.5 Applications, the only PMON method is LOCK.
Q: How to start and shutdown the CCM on Unix as APPS
A: To Start:
STARTMGR sysmgr=APPS/passwd
To Shutdown:
concsub apps/<APPS password> sysadmin ‘System Administrator’ SYSADMIN CONCURRENT FND ABORT
11.5 => 11.5.4
adcmctl.sh apps/passwd start/stop prod
11.5.5 =>
adcmctl.sh start/stop apps/passwd prod
Q: How to terminate a concurrent request that cannot be cancelled?
A: Identify the request number to terminate. Shut down the concurrent managers and issue the following sql command as applsys:
update fnd_concurrent_requests
set status_code = ‘E’, phase_code = ‘C’
where Request_id = <reqnum>; (reqnum = request number)
Q: A Manager is not activating.
A: Check the count in sys.dual, system.dual, & apps.fnd_dual. There should only be one (1) row for each. If the count is greater, change to one only. This can be done from sqlplus as follows:
As user apps:
select *
from SYS.DUAL;
Any extra rows should be deleted.
delete rownum
from SYS.DUAL;
(rownum = the row number to delete)
Any extra rows for apps.fnd_dual must be removed by performing the following SQL command:
delete from fnd_dual
where rownum < (select max(rownum) from fnd_dual);
Bounce the Concurrent Managers.
Q: Internal Concurrent Manager.
A: If the ICM should go down, requests will continue to run normally, except for ‘queue control’ requests.
If the ICM should go down, you can restart it with ‘startmgr’. There is no need to shut down the other managers first.
Q: How to purge requests that are in Pending status.
A: The Purge Concurrent Requests program will only purge requests that are in Completed status. Set the status of the Pending requests to Completed
before purging them. The Internal Manager Must be DOWN!
Using sqlplus as APPLSYS perform the following:
UPDATE fnd_concurrent_requests
SET phase_code = ‘C’
WHERE phase_code = ‘P’.
Troubleshooting CM
Unknown on
Lets classify how to start troubleshooting CM
Issues related to startup/shutdown of CM
If you try to start CM using adcmctl.sh or adstrtall.sh script & you encounter problem in starting CM then check for log files. All information related to why Concurrent Manager not coming up is recorder in log file at $APPLCSF/$APPLLOG with default name as $SID_$DD ( where DD is date on which you started Concurrent Manager ). This Concurrent Manager naming convention will be listed in file adcmctl.sh file (Concurrent Manager startup file). If $APPLCSF is not set then you can look for this file in $FND_TOP$APPLLOG
ICM is Up but some managers are still down
As you know adcmctl.sh script starts ICM (Internal Concurrent Manager) and its duty of ICM to start other Managers. If you see ICM is up with some other managers & Issue is with only Particular Managers then look for log files of these managers .
Concurrent -> Manager -> Administer -> Select manager which is not starting -> Click on "Processes" -> Click on "Manager Log" to find out error message.
These individual manager log file, you can access under $APPLCSF/$APPLLOG directory as well.
If you error message is not enough to find out cause of problem then you can enable debug on CM log files . You can enable diagnostics by changing DIAG_PARAM="" to DIAG_PARAM="Y" in adcmctl.sh (CM Startup script file)
Other things you can try for CM startup Issues :
Try to bounce CM & see all FNDLIBR processes are cleared before restrarting CM. You can run cmclean.sql command to clear any Invalid State against any request or manager. Check for any messages in log file. Check status of Manager from administer Concurrent Manager Window.
Concurrent -> Manager -> Administer (Login as System Administrator Responsibility)
Issues related to startup/shutdown of CM
If you try to start CM using adcmctl.sh or adstrtall.sh script & you encounter problem in starting CM then check for log files. All information related to why Concurrent Manager not coming up is recorder in log file at $APPLCSF/$APPLLOG with default name as $SID_$DD ( where DD is date on which you started Concurrent Manager ). This Concurrent Manager naming convention will be listed in file adcmctl.sh file (Concurrent Manager startup file). If $APPLCSF is not set then you can look for this file in $FND_TOP$APPLLOG
ICM is Up but some managers are still down
As you know adcmctl.sh script starts ICM (Internal Concurrent Manager) and its duty of ICM to start other Managers. If you see ICM is up with some other managers & Issue is with only Particular Managers then look for log files of these managers .
Concurrent -> Manager -> Administer -> Select manager which is not starting -> Click on "Processes" -> Click on "Manager Log" to find out error message.
These individual manager log file, you can access under $APPLCSF/$APPLLOG directory as well.
If you error message is not enough to find out cause of problem then you can enable debug on CM log files . You can enable diagnostics by changing DIAG_PARAM="" to DIAG_PARAM="Y" in adcmctl.sh (CM Startup script file)
Other things you can try for CM startup Issues :
Try to bounce CM & see all FNDLIBR processes are cleared before restrarting CM. You can run cmclean.sql command to clear any Invalid State against any request or manager. Check for any messages in log file. Check status of Manager from administer Concurrent Manager Window.
Concurrent -> Manager -> Administer (Login as System Administrator Responsibility)
Concurrent Manager(CM) Trouble shooting
Unknown on Sunday, 6 May 2012
Concurrent Manager(CM) Trouble shooting :
For Concurrent manager(CM) trouble shooting
1. First check the CM is up or not by using below any one procedure.
i. ps –ef|grep FNDLIBR
ii. adcmctl.sh status apps/<appsPWD>
iii. Login as system administrator responsibilities go to the below navigation Concurrent -> manager -> Administer -> see the Actual and target for all the managers
2. If CM in down check the internal manager Logfile in $APPLCSF/APPLLOG location for errors.
3. If any errors related to FNDFS then check the Application listener STATUS , if it is not running start it.
4. If CM is up/running then log file and output file are not able see the user from the front end then check the Application listener is status if it is not running then start it.
5. If any user is complained some request is running long time then
i. First check the CM status and ICM status.
ii. Check any Locks on DB particularly related to that program.
iii. Check any INVALID objects related to that program.
iv. Check any incompatible requests/programs are running for that program.
Login as system administrator responsibility and query the long running request /program. Navigate to concurrent program define query that long running request in the same form select incompatible requests .
If any incompatible request is running then find the user name who is running that program inform them regarding the incompatibilities.
For Concurrent manager(CM) trouble shooting
1. First check the CM is up or not by using below any one procedure.
i. ps –ef|grep FNDLIBR
ii. adcmctl.sh status apps/<appsPWD>
iii. Login as system administrator responsibilities go to the below navigation Concurrent -> manager -> Administer -> see the Actual and target for all the managers
2. If CM in down check the internal manager Logfile in $APPLCSF/APPLLOG location for errors.
3. If any errors related to FNDFS then check the Application listener STATUS , if it is not running start it.
4. If CM is up/running then log file and output file are not able see the user from the front end then check the Application listener is status if it is not running then start it.
5. If any user is complained some request is running long time then
i. First check the CM status and ICM status.
ii. Check any Locks on DB particularly related to that program.
iii. Check any INVALID objects related to that program.
iv. Check any incompatible requests/programs are running for that program.
Login as system administrator responsibility and query the long running request /program. Navigate to concurrent program define query that long running request in the same form select incompatible requests .
If any incompatible request is running then find the user name who is running that program inform them regarding the incompatibilities.
Concurrent Manager not starting after Cloning ?
Unknown on
Concurrent Manager not starting after Cloning ?
CM not starting after Cloning ?
Once after doing Rapid cloning some of concurrent managers were not starting.
The issue was that the node was wrongly defined as source node in Administer Manager screen.
Then i checked in the FND_NODES table which wrongly had the source nodes as well apart from the target nodes.
I performed the following action plan which resolved the issue->
CM not starting after Cloning ?
Once after doing Rapid cloning some of concurrent managers were not starting.
The issue was that the node was wrongly defined as source node in Administer Manager screen.
Then i checked in the FND_NODES table which wrongly had the source nodes as well apart from the target nodes.
I performed the following action plan which resolved the issue->
* Shutdown the apps services
* EXEC FND_CONC_CLONE.SETUP_CLEAN;
COMMIT;
EXIT;
* Ran AutoConfig on all tiers, firstly on the DB tier and then the APPS tiers.
* Start the apps services.
Actually FND_CONC_CLONE.SETUP_CLEAN clears up the tables with nodes information and when we run autoconfig, it repopulates these tables with correct node information.
Installation of Oracle Application 11i
Unknown on Saturday, 5 May 2012
Installation of Oracle Application 11i
Oracle Apps 11i Installation
Actually there are 2 types of instalations
1. Single Node
2. Multi Node
Again Multi Node is classified into 3 types
1. Distributed Appl Top.
2. Shared Appl Top(Appltop, Common Top).
3. Shared Apps Tier(806,ias,Appltop, Common Top).
Oracle Apps 11i Installation
Actually there are 2 types of instalations
1. Single Node
2. Multi Node
Again Multi Node is classified into 3 types
1. Distributed Appl Top.
2. Shared Appl Top(Appltop, Common Top).
3. Shared Apps Tier(806,ias,Appltop, Common Top).
1. Single Node
===============
STEPS
========
1. Create the required directories.
[root@srvr33 ~]# mkdir -p /m01/abc/rdbms <---- ORACLE_HOME
[root@srvr33 ~]# mkdir -p /m02/abc/{806,ias} <--- DEVELOPER,IAS
[root@srvr33 ~]# mkdir -p /m02/abc/{appltop,commtop}
[root@srvr33 ~]# mkdir -p /m01/abc/oradata
[root@srvr33 ~]# chown -R oracle:dba /m01/abc
[root@srvr33 ~]# chown -R applmgr:dba /m02/abc
[root@srvr33 ~]# chmod -R 777 /m01/abc
[root@srvr33 ~]# chmod -R 777 /m02/abc
2. Install the software.
[root@srvr33 ~]# cd /stage/1159/startCD/Disk1/rapidwiz
./rapidwiz
----------------------------------------------------------------------------
2. Multi Node
===================
1. Distributed Appl Top ( 11.5.9 onwards)
=======================
STEPS
=======
1. Create the required directories.
[root@srvr33 ~]# mkdir -p /m01/abc/rdbms <---- ORACLE_HOME
[root@srvr33 ~]# mkdir -p /m02/abc/{806,ias}
[root@srvr33 ~]# mkdir -p /m02/abc/distd/{appltop,commtop}
[root@srvr33 ~]# mkdir -p /m01/abc/oradata
[root@srvr33 ~]# chown -R oracle:dba /m01/abc
[root@srvr33 ~]# chown -R applmgr:dba /m02/abc
[root@srvr33 ~]# chmod -R 777 /m02/abc
[root@srvr33 ~]# chmod -R 777 /m01/abc
[root@srvr34 ~]# mkdir -p /m01/m01/{806,ias}
[root@srvr44 ~]# mkdir -p /m02/abc/distd/{appltop,commtop}
[root@srvr44 ~]# chown -R applmgr:dba /m02/abc
[root@srvr44 ~]# chmod -R 777 /m02/abc
2. Install the software
follow the stadard procedure for the installation on srvr33.
Copy the config file to srvr44, complete the installation
using the config file.
3. Apply the interoperability patch
4. Apply ADX.F on the Admin server first followed by Autoconfig.Then apply
Apply ADX.F on other nodes,and run Autoconfig on web_server node atlast.
5. Prepare both he servers for preclone
a) Run preclone for dbTier on srvr33,Run preclone for appsTier on srvr33
srvr44.
b) Run cfgclone for dbTier on srvr33,Run cfgclone for appsTier on srvr33
srvr44.
2. Shared Appl Top (11.5.10)
============================
STEPS
======
1. Create the required directories.
[root@srvr33 ~]# mkdir -p /m01/abc/rdbms <---- ORACLE_HOME
[root@srvr33 ~]# mkdir -p /m02/abc/{806,ias} <--- DEVELOPER,IAS
[root@srvr33 ~]# mkdir -p /m02/abc/shared/{appltop,commtop}
[root@srvr33 ~]# mkdir -p /m01/abc/oradata
[root@srvr33 ~]# chown -R oracle:dba /m01/abc
[root@srvr33 ~]# chown -R applmgr:dba /m02/abc
[root@srvr33 ~]# chmod -R 777 /m01/abc
[root@srvr33 ~]# chmod -R 777 /m02/abc
[root@srvr44 ~]# mkdir -p /m02/abc/{806,ias}
[root@srvr44 ~]# chown -R applmgr:dba /m02/abc
[root@srvr44 ~]# chmod -R 777 /m02/abc
NFS settings
--------------
Go to application > system settings > server setting > nfs
Basic : select /m03 mountpoint and provide server name,read write
General
Options : Sync write operations on request
force sync of write operations immediately.
User
Access : Treat remote root user as loca root.
[root@srvr33 ~]# service nfs start
The appltop and commn top directory
/m03/db1/shared/{appltop,commtop} of srvr33 have to be mounted
on srvr44 server so that the appltop and common top will be shared
by both the servers.Create /m03 directory in srvr44.
[root@srvr44 ~]#service nfs start
mount -t nfs srvr33:/m03 /m03 -o nolock
2. Install the software
follow the stadard procedure for the installation on srvr33.
Copy the config file to srvr44, complete the installation
using the config file.
3. Mount the /m03 directory on the srvr44
srvr44 : mount -t srvr33:/m03 /m03 -o nolock
ADCTRL Options
Unknown on Friday, 4 May 2012
ADCTRL Options
[applmgr@srvr33 appltop]$ . APPSdb4_srvr33.env
[applmgr@srvr33 appltop]$ adctrl
AD Controller Menu
---------------------------------------------------
1. Show worker status
2. Tell worker to restart a failed job
3. Tell worker to quit
4. Tell manager that a worker failed its job
5. Tell manager that a worker acknowledges quit
6. Restart a worker on the current machine
7. Exit
[applmgr@srvr33 appltop]$ . APPSdb4_srvr33.env
[applmgr@srvr33 appltop]$ adctrl
AD Controller Menu
---------------------------------------------------
1. Show worker status
2. Tell worker to restart a failed job
3. Tell worker to quit
4. Tell manager that a worker failed its job
5. Tell manager that a worker acknowledges quit
6. Restart a worker on the current machine
7. Exit
ADADMIN Options
Unknown on
ADADMIN Options
[applmgr@srvr33 appltop]$ . APPSdb4_srvr33.env
[applmgr@srvr33 appltop]$ adadmin
AD Administration Main Menu --------------------------------------------------
1. Generate Applications Files menu
2. Maintain Applications Files menu
3. Compile/Reload Applications Database Entities menu
4. Maintain Applications Database Entities menu
5. Change Maintenance Mode
6. Exit AD Administration
Enter your choice [6] : 1
Generate Applications Files
----------------------------------------
1. Generate message files
2. Generate form files
3. Generate report files
4. Generate graphics files
5. Generate product JAR files
6. Return to Main Menu
Enter your choice [6] : 2
Maintain Applications Files
----------------------------------------
1. Relink Applications programs
2. Create Applications environment file
3. Copy files to destinations
4. Convert character set
5. Maintain snapshot information
6. Check for missing files
7. Return to Main Menu
Enter your choice [6] : 3
Compile/Reload Applications Database Entities
---------------------------------------------------
1. Compile APPS schema
2. Compile menu information
3. Compile flexfields
4. Reload JAR files to database
5. Return to Main Menu
Enter your choice [6] : 4
Maintain Applications Database Entities
---------------------------------------------------
1. Validate APPS schema
2. Re-create grants and synonyms for APPS schema
3. Maintain multi-lingual tables
4. Check DUAL table
5. Convert to Multiple Reporting Currencies
6. Convert to Multi-Org
7. Return to Main Menu
Enter your choice [6] : 5
Change Maintenance Mode
----------------------------------------
Maintenance Mode is currently: [Enabled].
Maintenance mode should normally be enabled when patching
Oracle Applications and disabled when users are logged on
to the system. See the Oracle Applications Maintenance
Utilities manual for more information about maintenance mode.
Please select an option:
1. Enable Maintenance Mode
2. Disable Maintenance Mode
3. Return to Main Menu
[applmgr@srvr33 appltop]$ . APPSdb4_srvr33.env
[applmgr@srvr33 appltop]$ adadmin
AD Administration Main Menu --------------------------------------------------
1. Generate Applications Files menu
2. Maintain Applications Files menu
3. Compile/Reload Applications Database Entities menu
4. Maintain Applications Database Entities menu
5. Change Maintenance Mode
6. Exit AD Administration
Enter your choice [6] : 1
Generate Applications Files
----------------------------------------
1. Generate message files
2. Generate form files
3. Generate report files
4. Generate graphics files
5. Generate product JAR files
6. Return to Main Menu
Enter your choice [6] : 2
Maintain Applications Files
----------------------------------------
1. Relink Applications programs
2. Create Applications environment file
3. Copy files to destinations
4. Convert character set
5. Maintain snapshot information
6. Check for missing files
7. Return to Main Menu
Enter your choice [6] : 3
Compile/Reload Applications Database Entities
---------------------------------------------------
1. Compile APPS schema
2. Compile menu information
3. Compile flexfields
4. Reload JAR files to database
5. Return to Main Menu
Enter your choice [6] : 4
Maintain Applications Database Entities
---------------------------------------------------
1. Validate APPS schema
2. Re-create grants and synonyms for APPS schema
3. Maintain multi-lingual tables
4. Check DUAL table
5. Convert to Multiple Reporting Currencies
6. Convert to Multi-Org
7. Return to Main Menu
Enter your choice [6] : 5
Change Maintenance Mode
----------------------------------------
Maintenance Mode is currently: [Enabled].
Maintenance mode should normally be enabled when patching
Oracle Applications and disabled when users are logged on
to the system. See the Oracle Applications Maintenance
Utilities manual for more information about maintenance mode.
Please select an option:
1. Enable Maintenance Mode
2. Disable Maintenance Mode
3. Return to Main Menu
Directory Structure and File Locations
Unknown on
Some of the Directory Structure and File Locations
Directories
-----------
APPL_TOP : Where the Apps files reside.
(/m03/db1/appltop)
COMMON_TOP : Where the common files resides
(/m03/db1/commontop)
806 : Forms , Reports run time engine
(/m02/db1/806)
IAS : Webserver and Front-end connectivity enginge
(/m02/db1/ias)
Directories
-----------
APPL_TOP : Where the Apps files reside.
(/m03/db1/appltop)
COMMON_TOP : Where the common files resides
(/m03/db1/commontop)
806 : Forms , Reports run time engine
(/m02/db1/806)
IAS : Webserver and Front-end connectivity enginge
(/m02/db1/ias)
Environment Variables
----------------------
DB TIER
-------
[oracle@srvr33 bin]$ echo $ORACLE_HOME
/m01/db2/rdbms
APPS TIER
----------
[applmgr@srvr33 db2]$ echo $APPL_TOP
/m03/db2/appltop
[applmgr@srvr33 db2]$ echo $COMMON_TOP
/m03/db2/commtop
[applmgr@srvr33 appltop]$ echo $ORACLE_HOME
/m02/db2/806
[applmgr@srvr33 appltop]$ echo $IAS_ORACLE_HOME
/m02/db2/ias
[applmgr@srvr33 appltop]$ echo $JAVA_TOP
/m03/db2/commtop/java
[applmgr@srvr33 appltop]$ echo $APPLCSF
/m03/db2/commtop/admin
[applmgr@srvr33 appltop]$ echo $AD_TOP
/m03/db2/appltop/ad/11.5.0
[applmgr@srvr33 appltop]$ echo $FND_TOP
/m03/db2/appltop/fnd/11.5.0
Apps Version DB version
------------- ----------
11.5.9 9.2.0.3
11.5.10.0 9.2.0.5
11.5.10.2 9.2.0.6
12.0.0.0 10g
Admin Scripts Location
------------------------
Apps Tier
---------
/m03/db2/commtop/admin/scripts/db2_srvr33
ls -l|awk '{print $9}'
adalnctl.sh
adautocfg.sh
adcmctl.sh
addisctl.sh
adexecsql.pl
adpreclone.pl
adrepctl.sh
adstpall.sh
adstrtal.sh
gsmstart.sh
DB Tier
-------
/m01/db2/rdbms/appsutil/scripts/db2_srvr33
ls -l|awk '{print $9}'
adautocfg.sh
adchknls.pl
addbctl.sh
addlnctl.sh
adexecsql.pl
adlsnodes.sh
adpreclone.pl
adstopdb.sql
adstrtdb.sql