Thursday, September 3, 2015

EBS Changes in R12.2


  • Oracle DB 11gR2
  • Online Patching
  • Oracle Weblogic Server ( Fusion Middleware 11g)
  • Oracle Access Manager 11g
Details description about each of the changes to follow soon.

Monday, March 23, 2015

RMAN configuration in 7 Steps

Even if you are not an Oracle DBA, you’ll still encounter a situation where you may have to take a backup of an Oracle database.
Using Oracle RMAN, you can take a hot backup for your database, which will take a consistent backup even when your DB is up and running.
This tutorial gives you an introduction on how to perform Oracle DB backup using RMAN.
For the impatient, here is the quick snippet, that takes RMAN backup of both database and archive logs.
RMAN> BACKUP AS BACKUPSET DATABASE PLUS ARCHIVELOG;

1. View Current RMAN Configuration

Before we take the backup, we have to configure certain RMAN parameters. For example, how long you want to reatain the RMAN backup, etc.
Before we modify any configuration, execute the following command to view all current RMAN configuration settings.
To connect to RMAN, do the following from command line. This will take you to RMAN> command prompt, from here you can execute all RMAN commands.
$ rman target /
Recovery Manager: Release 10.2.0.3.0 - Production on Sat Aug 10 11:21:29 2013
Copyright (c) 1982, 2005, Oracle.  All rights reserved.
connected to target database: DEVDB (DBID=821773)
RMAN>
To view current RMAN configurations, execute “show all”.
RMAN> SHOW ALL;
using target database control file instead of recovery catalog
RMAN configuration parameters are:
CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 2 DAYS;
CONFIGURE BACKUP OPTIMIZATION ON;
CONFIGURE DEFAULT DEVICE TYPE TO DISK;
CONFIGURE CONTROLFILE AUTOBACKUP ON;
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO "/backup/rman/ctl_%F";
CONFIGURE DEVICE TYPE DISK BACKUP TYPE TO COMPRESSED BACKUPSET PARALLELISM 2;
CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1;
CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1;
CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT   "/backup/rman/full_%u_%s_%p" MAXPIECESIZE 2048 M;
CONFIGURE MAXSETSIZE TO UNLIMITED;
CONFIGURE ENCRYPTION FOR DATABASE OFF;
CONFIGURE ENCRYPTION ALGORITHM 'AES128';
CONFIGURE ARCHIVELOG DELETION POLICY TO NONE;
CONFIGURE SNAPSHOT CONTROLFILE NAME TO '/u01/app/oracle/product/10.2.0/dbs/snapcf_devdb.f'; # default
As you see above, it displays various RMAN parameters and their current values.

2. Change Few RMAN Configuration Parameters

Location: One of the important configuration parameters to set will be, where you want to save the RMAN backup. In the following example, I’m settting the RMAN backup loacation as “/backup/rman/”
RMAN> CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT '/backup/rman/full_%u_%s_%p';
Retention Period: Next, you should specify how long you want to retain the backup for. When RMAN takes a backup, it automatically deletes all the old backups that are older than the retention period. In the following example, I’m setting the retention period as 7 days, which will keep the DB backup for a week.
RMAN> CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 7 DAYS;
Verify that the above two changes are done.
RMAN> SHOW ALL;
..
CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT   '/backup/rman/full_%u_%s_%p';
CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 7 DAYS;
..
Clear a Parameter: If you want to clear a parameter and set its value to default, use CLEAR at the end of the configuration as shown below.
RMAN> CONFIGURE RETENTION POLICY CLEAR;
In this example, since we cleared the retention policy’s value, it was set to the default value, which is 1. So, the retention policy is set to 1 day as shown below.
RMAN> SHOW ALL;
CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # default

3. Backup Oracle Database

Make sure the directory mentioned in the CHANNEK DEVICE TYPE DISK FORMAT is created. i.e /backup/rman/
$ mkdir -p /backup/rman
Currently this directory is empty. We’ll see what this has after the backup is taken.
$ ls -l /backup/rman
total 0
We can take a backup using image copy or in backup set. It is strongly recommended to use RMAN backup sets to backup the database.
RMAN stores the backup in backup sets, which are nothing but whole bunch of files which contains the backed-up data. Only RMAN understands the format of these files. So, if you backup an Oracle DB using RMAN, only RMAN knows how to read the backup and restore it.
Typically we’ll use “BACKUP AS BACKUPSET” to backup a database. So, to take a full backup of the database without the archive logs, do the following.
RMAN> BACKUP AS BACKUPSET DATABASE
To take a full backup of the database with the archive logs, do the following:
RMAN> BACKUP AS BACKUPSET DATABASE PLUS ARCHIVELOG;
You can also take a backup of only a specific table space. The following example takes backup of only PRD01 tablespace.
RMAN> BACKUP AS BACKUPSET TABLESPACE PRD01;
The RMAN backup output will be something similar to the following:
RMAN> BACKUP AS BACKUPSET DATABASE
Starting backup at 10-AUG-13
using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: sid=193 devtype=DISK
allocated channel: ORA_DISK_2
channel ORA_DISK_2: sid=192 devtype=DISK
channel ORA_DISK_1: starting full datafile backupset
channel ORA_DISK_1: specifying datafile(s) in backupset
input datafile fno=00025 name=/u03/oradata/devdb/devuser07.dbf
input datafile fno=00003 name=/u02/oradata/devdb/temp01.dbf
channel ORA_DISK_1: starting piece 1 at 10-AUG-13
channel ORA_DISK_2: starting full datafile backupset
channel ORA_DISK_2: specifying datafile(s) in backupset
input datafile fno=00008 name=/u03/oradata/devdb/devusers05.dbf
channel ORA_DISK_2: starting piece 1 at 10-AUG-13
...
..

piece handle=/backup/rman/full_4dogpd0u_4237_1 tag=TAG20130808T114846 comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:00:03
Finished backup at 10-AUG-13
...
Starting Control File and SPFILE Autobackup at 10-AUG-13
piece handle=/backup/rman/ctl_c-758818131-20130808-00 comment=NONE
Finished Control File and SPFILE Autobackup at 10-AUG-13
Once the backup is completed, do an ls on the /backup/rman directory, you’ll now see RMAN backup files.
$ ls -l /backup/rman
total 14588
-rw-r----- 1 oracle dba 14585856 Aug  8 11:48 ctl_c-758818131-20130808-00
-rw-r----- 1 oracle dba   327680 Aug  8 11:48 full_4dogpd0u_4237_1
Note: Once a backup is taken, to view all available database backups from RMAN, you need to use “list” command that is shown further down in one of the examples.
While this may be obvious, it is worth repeating again: Since we are taking hotbackup, the Oracle database can be up and running. Make sure your Oracle database is running before you execute any of the above RMAN backup commands.

4. Assign Backup TAG Name for Quick Identification

If you are taking lot of backups, it will be easier to assign a tag to a particular backup, which we’ll later use during Oracle recovery (or while using list command to view it).
The following example assign a backup tag called “WEEEKLY_PRD01_TBLS_BK_ONLY” to this particular backup.
RMAN> BACKUP AS BACKUPSET TAG 'WEEEKLY_PRD01_TBLS_BK_ONLY' TABLESPACE PRD01;
Starting backup at 10-AUG-13
using channel ORA_DISK_1
using channel ORA_DISK_2
channel ORA_DISK_1: starting full datafile backupset
channel ORA_DISK_1: specifying datafile(s) in backupset
input datafile fno=00002 name=/u03/oradata/devdb/PRD01_1.dbf
channel ORA_DISK_1: starting piece 1 at 10-AUG-13
channel ORA_DISK_1: finished piece 1 at 10-AUG-13
piece handle=/backup/rman/full_4fogpdb3_4239_1 tag=WEEEKLY_PRD01_TBLS_BK_ONLY comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:00:01
Finished backup at 10-AUG-13
Starting Control File and SPFILE Autobackup at 10-AUG-13
piece handle=/backup/rman/ctl_c-758818131-20130808-01 comment=NONE
Finished Control File and SPFILE Autobackup at 10-AUG-13
Once the backup is finished, if you view the files from rman directory, you’ll not see the tag name here. Tag name is used only from RMAN repositories to view and restore backups. So, now you see there are more files in this directory, as we’ve taken couple of backups.
$ ls -l /backup/rman/
total 29176
-rw-r----- 1 oracle dba 14585856 Aug  8 11:48 ctl_c-758818131-20130808-00
-rw-r----- 1 oracle dba 14585856 Aug  8 11:54 ctl_c-758818131-20130808-01
-rw-r----- 1 oracle dba   327680 Aug  8 11:48 full_4dogpd0u_4237_1
-rw-r----- 1 oracle dba   327680 Aug  8 11:54 full_4fogpdb3_4239_1

5. Change Oracle RMAN Backup File Name Format

If you want the backup files itself will be in a specific format, you need to change the format in the RMAN configuration as shown below. In this example, we’ve appended the tag “full_devdb_bk_” prefix to all our backup files.
RMAN> CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT   "/backup/rman/full_devdb_bk_%u_%s_%p" MAXPIECESIZE 2048 M;
Now, let us take another backup with this modified configuration.
RMAN> BACKUP AS BACKUPSET TAG 'WEEEKLY_PRD01_TBLS_BK_ONLY' TABLESPACE PRD01;
Now when you view the RMAN files, you’ll see the new RMAN backup file has this new file name format for the files. This is easier to identify certain information about the backup just by looking at the file names.
$ ls -l /backup/rman/
total 43764
-rw-r----- 1 oracle dba 14585856 Aug  8 11:48 ctl_c-758818131-20130808-00
-rw-r----- 1 oracle dba 14585856 Aug  8 11:54 ctl_c-758818131-20130808-01
-rw-r----- 1 oracle dba 14585856 Aug  8 11:56 ctl_c-758818131-20130808-02
-rw-r----- 1 oracle dba   327680 Aug  8 11:48 full_4dogpd0u_4237_1
-rw-r----- 1 oracle dba   327680 Aug  8 11:54 full_4fogpdb3_4239_1
-rw-r----- 1 oracle dba   327680 Aug  8 11:55 full_devdb_bk_4hogpdef_4241_1

6. Compress a RMAN Backup

If you are taking a backup of a big database, you’ll notice that the RMAN backup files are bigger (almost same size as the database itself).
So, for most situation, you should always tak ea compressed backup of the database.
The following example take a compressed backup of the tablepsace PRD01.
RMAN> BACKUP AS COMPRESSED BACKUPSET TAG 'WEEEKLY_PRD01_TBLS_BK_ONLY' TABLESPACE PRD01;
When you view the backup files from the file system level, you will not see any .gz (or .zip, or .bz2) to indicate that the RMAN has taken a compressed backup. The file naming convention will still follow the same as a non-compressed backup.
$ ls -l /backup/rman/
total 58352
-rw-r----- 1 oracle dba 14585856 Aug  8 11:48 ctl_c-758818131-20130808-00
-rw-r----- 1 oracle dba 14585856 Aug  8 11:54 ctl_c-758818131-20130808-01
-rw-r----- 1 oracle dba 14585856 Aug  8 11:56 ctl_c-758818131-20130808-02
-rw-r----- 1 oracle dba 14585856 Aug  8 11:59 ctl_c-758818131-20130808-03
-rw-r----- 1 oracle dba   327680 Aug  8 11:48 full_4dogpd0u_4237_1
-rw-r----- 1 oracle dba   327680 Aug  8 11:54 full_4fogpdb3_4239_1
-rw-r----- 1 oracle dba   327680 Aug  8 11:55 full_devdb_bk_4hogpdef_4241_1
-rw-r----- 1 oracle dba   127680 Aug  8 11:59 full_devdb_bk_4jogpdl0_4243_1
Note: The way to tell whether RMAN has take a compressed backup or not, it by looking at the size, and by looking at the output of the RMAN “list” command which is shown in one of the section below.

7. View all RMAN Backups

To view all the RMAN backups, execute “list backup summary” as shown below.
RMAN> LIST BACKUP SUMMARY;

using target database control file instead of recovery catalog

List of Backups
===============
Key     TY LV S Device Type Completion Time #Pieces #Copies Compressed Tag
------- -- -- - ----------- --------------- ------- ------- ---------- ---
..
4215    B  F  A DISK        10-AUG-13       1       1       NO         TAG20130808T114846
4216    B  F  A DISK        10-AUG-13       1       1       NO         TAG20130808T114849
4217    B  F  A DISK        10-AUG-13       1       1       NO         WEEEKLY_PRD01_TBLS_BK_ONLY
4218    B  F  A DISK        10-AUG-13       1       1       NO         TAG20130808T115413
4219    B  F  A DISK        10-AUG-13       1       1       NO         WEEEKLY_PRD01_TBLS_BK_ONLY
4220    B  F  A DISK        10-AUG-13       1       1       NO         TAG20130808T115600
4221    B  F  A DISK        10-AUG-13       1       1       YES        WEEEKLY_PRD01_TBLS_BK_ONLY
As you see above, it displays various information about the backups. In the above output, it show 7 RMAN backups. The last column shows the “Tag” that we specified when we took a backup. If we didn’t specify any TAG, RMAN creates a default tag with the prefix “TAG” followed by some numbers. You can also see that under the column “Compressed”, the last RMAN backup shows “YES”, which indicates that out of all the 7 RMAN backups, only the last one was compressed.
Also, when the RMAN backup is running, if you want to see the proress, you can query the V$RMAN_STATUS table from sql*plus as shown below.
SQL> SELECT OPERATION, STATUS, MBYTES_PROCESSED, START_TIME, END_TIME from V$RMAN_STATUS;

OPERATION                         STATUS                  MBYTES_PROCESSED START_TIM END_TIME
--------------------------------- ----------------------- ---------------- --------- ---------
CONTROL FILE AND SPFILE AUTOBACK  COMPLETED                             14 07-NOV-12 07-NOV-12
RMAN                              COMPLETED                              0 07-NOV-12 07-NOV-12
RESTORE VALIDATE                  COMPLETED                              0 07-NOV-12 07-NOV-12
RMAN                              COMPLETED WITH ERRORS                  0 07-NOV-12 07-NOV-12
DELETE                            COMPLETED                              0 08-NOV-12 08-NOV-12
BACKUP                            COMPLETED                              0 10-AUG-13 10-AUG-13
CONTROL FILE AND SPFILE AUTOBACK  COMPLETED                             14 10-AUG-13 10-AUG-13
RMAN                              COMPLETED WITH ERRORS               1832 10-AUG-13 10-AUG-13
RMAN                              COMPLETED                              0 10-AUG-13 10-AUG-13
...
 That is how you take an Oracle RMAN backup and sleep peacefully.

Wednesday, October 15, 2014

Launching WebLogic Administration:

Course Content:

1)Overview of Java/J2EE Technologies
- J2EE Architecture & Components
- The Need of Middleware Technologies
- About  Webserver and Application Server
- Environments – Dev, Testing(SIT, UAT), Pre Prod & Prod
 
2)
- Introduction to Oracle WebLogic Server
- Importance of  WebLogic Server
Weblogic Server  Terminology ( Domains, Admin Server, Machine, Managed Servers)
WebLogic 11 g / 12 c  Features
 
3)
WebLogic Server Installation & Configuration on Windows / Linux 
- Modes of  Installation
- Domain creation  and configuration
- Configuration Wizard
- The Administrative Console
- Creation Managed Servers
- Starting & Stopping Admin Server, Managed Servers 
- About NodeManager
- Starting & Stopping Admin Server, Managed Servers through NodeManager
 
4)  Overview of Deployment Process
- Overview of Deployment              
- Deployment  Methods
- Managing Application Server Life Cycle states
- Deploy WebApplication & Testing
- Deploy Application to Servers & Clusters
Weblogic Virtual host

5) Clustering
- Introduction to cluster
- Benefits of cluster
- Basic & Multi-tier Cluster diagrams
- Unicast & Multi-cast 
- Creation & configuration Cluster
- Deploy Application to Cluster
- Session Replication
- Clustering using WebServer Configuration

6) JDBC & DataSource Configuration
- Introduction to JDBC & DataSource
- Types of Jdbc Drivers
- Creating  JDBC & DataSource
- Purpose of Connection Pooling
- JNDI

7)  JMS(Java Messaging Service)
- Introduction to JMS
- Messaging Types
- Creating JMS Servers,modules,Queue & Topic
- Creating Connection Factory
- Deploying JMS Application
- Monitoring Messages in Queue & Topic

8)  Security
- Security Fundamentals
- Authentication & Authorization
Weblogic Security
- Security Realms
- Managing Users & Groups
- SSL Security
- SSL Mechanism & Configuration

9 )TroubleShooting
- About WebLogic Server Logs
- Thread Dumps
-. Heap Dumps
- Log Message Format
- Techniques  to Troubleshoot  and fix the OOM, Memory Leak,  ServerHang, Server Crash Problems 
- About Heap Memory
- GC(Garbage Collrector)

10) Weblogic Performance and Tuning
- Operating System Tuning
- Java Virtual Machine(JVM) Tuning
- Monitoring Threads
- Techniques to reduce Application down time

11) WLST (Weblogic Scripting Tool)
- Introduction to WLST
- WLST Commands
- Running Scripts

12) Real Time Environment
Weblogic Admin Responsibilities
- About Ticketing & Monitoring tools
- ITIL(Information Technology Infrastructure Library) Process
- Types of Tickets
- Severity Levels
 
13) Monitoring


- JVM
- Cluster
- Connection Pools
- JMS
- Thread pool

14) Performance Tuning Tips

For training contact on 09440710803

Sunday, February 5, 2012

Export Using Query Option

Query exp userid= QUERY=
exp uwclass/uwclass owner=SCOTT tables=emp
query=\"WHERE job=\'MANAGER\' AND sal \>50000\"

Monday, November 3, 2008

Details of Adpreclone and Adcfgclone

What happens internally when you run adpreclone and adcfgclone
The steps for cloning like
1.adpreclone on apps and db tier
2.Then copy the file sytem to Target
3.run adcfgclone on apps tier and db Tier.
Lets understand,What happens when you run adpreclone and adcfgclone.
First,When you run this commnad adpreclone.pl dbTier .
This will run in two steps Techstack and database.
Techstack:It will create following directories in the ORACLE_HOME/appsutil/cloneJlib, db, data where “Jlib” relates to libraries “db” will contain the techstack information, “data” will contain the information related to datafiles and required for cloning.
Creates driver files at ORACLE_HOME/appsutil/driver/instconf.drv
Converts inventory from binary to xml, the xml file is located at $ORACLE_HOME/appsutil/clone/context/db/Sid_context.xml
Prepare database for cloning:This includes creating datbase control file script and datafile location information file at$ORACLE_HOME/appsutil/templateadcrdbclone.sql, dbfinfo.lst
Generates database creation driver file at ORACLE_HOME/appsutil/clone/data/driverdata.drv
Copy JDBC Libraries at ORACLE_HOME/appsutil/clone/jlib/classes12.jar and appsoui
When Running adpreclone appsTier
This will create stage directory at $COMMON_TOP/clone. This also run in two steps.
Techstack:Creates template files forOracle_iAS_Home/appsutil/templateOracle_806_Home/appsutil/template
Creates Techstack driver files forIAS_ORACLE_HOME/appsutil/driver/instconf.drv806_ORACLE_HOME/appsutil/driver/instconf.drv
APPL_TOP preparation:-It will create application top driver file$COMMON_TOP/clone/appl/driver/appl.drv-Copy JDBC libraries$COMMON_TOP/clone/jlib/classes111.zip
Now Shutdown all the services of Application and database for Copy the file System to target location
Configuring the target systemOnce it is done . Run as below adcfclone.pl for apps Tier and dbTier.
On database side:cd $ORACLE_HOME/appsutils/clone/bin
perl adcfgclone.pl dbTier pwd=apps
This will use the templates and driver files those were created while running adpreclone.pl on source system and has been copied to target system.
Following scripts are run by adcfgclone.pl dbTier for configuring techstack
adchkutl.sh — This will check the system for ld, ar, cc, and make versions.adclonectx.pl — This will clone the context file. This will ceate a new context file as per the details of this instance.runInstallConfigDriver — located in $Oracle_Home/appsutil/driver/instconf.drvRelinking $Oracle_Home/appsutil/install/adlnkoh.sh — This will relink ORACLE_HOME
For data on database side, following scripts are runDriver file $Oracle_Home/appsutil/clone/context/data/driver/data.drvCreate database adcrdb.zipAutoconfig is runControl file creation adcrdbclone.sql
On Application Side:COMMON_TOP/clone/bin/perl adcfgclone.pl appsTier pwd=appsFollowing scripts are run by adcfgclone.plCreates context file for target adclonectx.pl
Run driver files$ORACLE_HOME/appsutil/driver/instconf.drv$IAS_ORACLE_HOME/appsutil/driver/instconf.drv
Relinking of Oracle Home$ORACLE_HOME/bin/adlnk806.sh$IAS_ORACLE_HOME/bin/adlnkiAS.shAt the end it will run the driver file $COMMON_TOP/clone/appl/driver/appl.drv and then runs autoconfig.

Sunday, March 16, 2008

Printer

Basic Information on PrintingVia the Application,
A user will submit a request to run a report. This is most commonly done from the Submit Request Form (shortname =FNDRSRUN).The request is written into the concurrent queue/request table(s) (e.g.,FND_CONCURRENT_REQUESTS). The concurrent manager who eventually picks up the request will read the request and its definition from the queue. From there, the concurrent manager will kick off Oracle Reports. As Oracle Reports begins to run, it will look at a setting for how many copies you want. If copies = 0, then Oracle Reports will look at the Print Style definition for which SRW file to use. If copies > 0, then Oracle Reports will look at the Print Driver definition for which SRW file to use. In either case, Oracle Reports will look at the Print Style to determine the rows and columns that are contained in the report. The Print Style rows and columns overrides both the Print Style and Print Driver SRW files (which contain rows and columns as well). After the file has been generated using the appropriate SRW file and row/columns settings, the Concurrent Manager will pre-pend the initialization string and append the reset string to the output. As a general rule, the first component of the initialization string should be the reset string. You should not assume that the printer has been properly reset. It is the responsibility of the System Administrator to properly configure the initialization and reset strings. All of the seed data provided in Oracle Applications is for a DEC LN03 printer. This seed data is provided as example only. Chances are very good that your printers do not adhere to the DEC LN03 standards. There are numerous page description languages that are used to communicate with printers. The Big 3 are HP's PCL 5, Adobe's Postscript, and Microsoft's Windows GDI (Graphical Device Interface). Additionally, here are some other page descriptions languages.

Friday, January 18, 2008

Concurrent Manager:
---------------------
A mechanism that runs concurrent programs.
A manager operates duringthe time and days defined by a work shift. A manager can run any concurrent program, or be specialized to run anyconcurrent program, or be specialized to run only certain kinds of programs.

Concurrent Program:
---------------------
A program that runs concurrently (at the same time) as other programs.
Concurrentprograms run as background processes, while you continue to work at your terminal.”A concurrent program is an instance of an execution file, along with parameter definitions and incompatibilities.

Concurrent programs use concurrent program executables to locate the correct execution file.
Several concurrent programs may use the same execution file to perform their specific tasks, each having different parameter defaults and incompatibilities.

Concurrent Program Executable
---------------------------------
A concurrent program executable links an execution file or and the method used to execute it with a defined concurrent program.

Under Concurrent Processing, an execution method may be a program written in a standard language, a reporting tool, or an operating system language.

An execution method can be :

1. A PL/SQL Stored Procedure,
2. An Oracle Tool such as Oracle Reports or SQL*Plus, a spawned process, or
3. An operating system host language (eg . Shell or DCL).

Concurrent Program Execution File
=========================

A concurrent program execution file is an operating system file or database stored procedure which contains your application logic and can be executed by either invoking it directly on the command line or by invoking a program which acts upon it.

For example, you run a Pro*C program by invoking it on the command line. You run a SQL script by running SQL*Plus and passing the name of the SQL script without the .sql extension.


Oracle Applications consists of several types of Concurrent Managers.But it also gives the end-user flexibility to define any Concurrent Manager and in any number, as per the requirement.

Key Managers pre-defined by Oracle:

1. Internal Concurrent Manager (ICM)
2.Conflict Resolution Manager (CRM)
3. Standard Manager (SM)


ICM

Controls all other CM's.
Main task is to ensure all other CM's are up and running.
It also starts and stops Service Manager's on each node .
It sets the no. of active processes, monitors, restarts and terminates all other conc. processes through requests made to the service manager.

ICM in turn is monitored by Internal Monitor, is responsible for starting the failed ICM in a local node.
IMP: There should be an IMON defined on each node.


CRM

Takes care of resolving the program incompatabilities and checks if a request in a queue can be run in parallel with the running request.

SM

Is always running (24 hours , 365 days ) and can take care of processing any concurrent request.
In case a request has no defined Manager to take care, SM takes care of it.


Starting And Stoping Concurrent Manager
===============================

In Oracle Applications 11i all startup shutdown scripts (let's say control Scripts ) in 11i(11.5.10) are in $OAD_TOP/admin/script/$CONTEXT_NAME where $OAD_TOP is also called as $COMMON_TOP and $CONTEXT_NAME is your SID_hostname.

The script to start/stop concurrent manager is adcmctl.sh where ad is application dba , cm is concurrent manager & ctl means control.

When you run adcmctl.sh it records execution of this command in text file with name adcmctl.txt at directory $COMMON_TOP/admin/log/$CONTEXT_NAME.

Remember adcmctl.sh call's another script "startmgr" which in turn calls "batchmgr" in $FND_TOP/bin and this is actual file which kicks up Internal Concurrent Manager Process (ICM) .
Lets check important parameter in this file

1. DISPLAY Set it to some valid XServer , if this is not set properly your reports display will fail (specially one with PDF or Bar code dislay)

2. DIAG_PARAM Diagnosis parameter it will take value Y or N with default N, If you encounter some error while starting Concurrent Manager you change this to Y and then extra logging will be enabled then check Concurrent Manager log file.

3. CONCSUB stands for CONC(Concurrent) SUB(Submit) , used to submit concurrent request like shut down concurrent manager.

4. SLEEP holds the number of seconds that the manager should wait between checks for new requests.

5. MGRNAME is the name of the manager for locking and log purposes. So you can find if this is icm(Internal Concurrent Manager), sm(Service Manager)

6. RESTART is set to N if the manager should not restart itself after a crash. Otherwise, it is an integer number of minutes. The manager will attempt a restart after an abnormal termination if the past invocation lasted for at least RESTART minutes.

7. PMON is the duration of time between process monitor checks (checks for failed workers). The unit of time is concurrent manager iterations (request table checks). Default Value is 20 .

8. QUESIZ is the duration of time between worker quantity checks (checks for number of active workers). The unit of time is process monitor checks.

Note -> PMON, QUESIZ and SLEEP are important for Concurrent Manager Tuning.


(A)adcmctl.sh apps/<>
(B)By findinging the FNDLIBR process on the server and Killing the same by issuing Kill -9.
(c)Individual CM's can be deactivated from the Forms using the navigation >
Concurrent > Manager > Administer
(D) Using the CONCSUB utility.

CONCSUB username/passwd SYSADMIN 'system Administrator' SYSADMIN WAIT=Y CONCURRENT FND ABORT

How to find Concurrent Manager Node :

1. SQLPLUS> select node_name from apps.fnd_nodes where support_cp='Y';

2. In context file (SID_hostname.xml ) under $APPL_TOP/admin , check for variable

< oa_var="s_isConc">YES< / TIER_NODE>,

YES means this is Concurrent Manager Node.

3. From Front-end,Check for Administer Concurrent Manager request under SYSADMIN responsibility.

4. From Server , "ps -ef grep FNDLIBR" under application User on all nodes where FND (Foundation) LIBR(Library) is executable.