Вы находитесь на странице: 1из 32

HOT Tips And Techniques For

The Oracle Financials DBA (v6)

Brian Crowley
- Strategic Consulting Manager -
IT Convergence
Agenda

• Introduction
• General Use and Administration Tips
• Configuration Tips
• Patching Tips
• Concurrent Processing Tips
• Performance Tuning and Optimization Tips
• UpgradeTips
• The End
General Use and Administration
Tips
• The V$SESSION Table Contains Three Very
Useful Columns Regarding EBS Session
Information
SID MODULE ACTION CLIENT_INFO
-------------------------------------------------------------------
1240 FAXASSET FRM:ELEIMKUH:NREL_FA_MANAGEMENT 5001 0
1241 FNDSCSGN PO_BUYER 5001 0
1247 FNDSCSGN US HR Manager 5001 0
1256 FNDSCSGN General Ledger Super User 5001 0
1276 POXPOVPO FRM:CELLINGT: PO_BUYER 5001 0
1281 FNDSCSGN PO_BUYER 5001 0

dbms_application_info.set_module(
module_name IN VARCHAR2(48),
action_name IN VARCHAR2(32));
General Use and Administration
Tips, (cont.)
• Setting the EBS Applications to READ-ONLY
– Add Constraint to relevant Tables
SELECT 'ALTER TABLE '||owner||'.'||table_name||' ADD CONSTRAINT
'||substr(table_name,1,27)||'_ro check(1=1) DISABLE VALIDATE;'
FROM dba_tables
WHERE owner NOT IN ('SYS', 'ICX','SYSTEM', 'APPLSYSPUB', 'OWAPUB',
'INITIO', 'DBSNMP', 'CTXSYS', 'APPLSYS', 'PERFSTAT', 'MDSYS',
'ORDSYS', 'OLAPSYS', 'OUTLN')

– Enable Profile Option ‘HZ: Data Sharing and


Security Enabled’ set to ‘Yes’ at the site level, will
make
– Modify the $AU_TOP/resource/Custom.pll file to
make ALL the responsibilities for SPECIFIC
USER(S) READ-ONLY
General Use and Administration
Tips, (cont.)
• Setting the EBS Applications to READ-ONLY
ALTER TABLE AR.HZ_CUST_ACCOUNTS ADD CONSTRAINT
GL_BALANCES_READONLY check(1=1) DISABLE VALIDATE;
Configuration Tips

• Use Temporary Tablespace Groups


– Oracle RDBMS 10G introduced “Temporary
Tablespace Groups.”
– Same schema user can use different temporary
tablespaces in different sessions, when
necessary as managed by oracle.
– Child sessions in parallel operations of the same
session can use different temporary tablespaces,
when necessary as managed by oracle.
Configuration Tips, (cont.)
• Use Temporary Tablespace Groups

CREATE TEMPORARY TABLESPACE temp01


TEMPFILE '/u04/oradata/temp01.dbs' SIZE 2000M
EXTENT MANAGEMENT LOCAL UNIFORM SIZE 128K
TABLESPACE GROUP tempgroup_a;

CREATE TEMPORARY TABLESPACE temp02


TEMPFILE '/u03/oradata/temp02.dbs' SIZE 2000M
EXTENT MANAGEMENT LOCAL UNIFORM SIZE 128K;

ALTER TABLESPACE temp02 TABLESPACE GROUP


tempgroup_a;
Configuration Tips, (cont.)
• Use Temporary Tablespace Groups

CREATE TEMPORARY TABLESPACE temp03


TEMPFILE '/u02/oradata/temp03.dbs' SIZE 2000M
EXTENT MANAGEMENT LOCAL UNIFORM SIZE 128K;
ALTER TABLESPACE temp03 TABLESPACE GROUP tempgroup_a;

SELECT tablespace_name, group_name


FROM DBA_TABLESPACE_GROUPS;

TABLESPACE_NAME GROUP_NAME
------------------------------ -------------
TEMP01 TEMPGROUP_A
TEMP02 TEMPGROUP_A
TEMP03 TEMPGROUP_A
Configuration Tips, (cont.)

• Use and Optimally Configure Automatic Undo


Segment Management
– Automatic undo segment management is available
in releases 9i and later, and it is the default in
release 11g.
– Best if AUTOEXTEND enabled.
– If a fixed size undo tablespace is required then
use Undo Advisor to determine optimal size.
Configuration Tips, (cont.)

• Use and Optimally Configure Automatic Undo


Segment Management
– To enable
• create an undo tablespace and set the init.ora parameter
“UNDO_MANAGEMENT= AUTO”.
• It is not necessary to set the init.ora parameter
“UNDO_TABLESPACE” to specify the undo tablespace
name unless there are multiple undo tablespaces.
Oracle will automatically select the first available undo
tablespace upon startup.
Patching Tips

• Create a patch plan for each patch and


document the process of applying patches.
• Investigate and Analyze Patches
– Review both the readme.txt file and the driver files
(i.e.patch.drv and db*.drv).
– Identify and resolve all dependencies, specifically
pre-requisite patches.
– Apply the patch in a “Test Mode” to determine the
exact actions of the patch
Patching Tips
• Speed the Patch Process
– Merge Patches (Only After Testing Each Individual Patch)
– Apply Patches in Non-Interactive Mode
– Consider Putting the Database in
NOARCHIVELOG Mode
– Compile Objects Only Once When Applying
Multiple Patches
– Consolidate Post-Installation Steps When
Applying Multiple Patches
Patch Tips
• Speedup the Patch Process
– Use a Shared $APPL_TOP in a Multi-Node
Application Tier Architecture
– Used Distributed AD With a Shared $APPL_TOP
in a Multi-Node Application Tier Architecture
– Group Patches Together Which Do Not Require
Downtime
– Use the checkfile option (use ‘nocheckfile’ to skip)
Patch Tips
• How to Apply Prerequisite Patch, when you
are in the Process of Applying a Patch.
– Stop the workers using the adctl utility.
• Use “Option 3” to tell the workers to stop.

– Backup the FND_INSTALL_PROCESSES table.


SQL> CREATE TABLE FND_INSTALL_PROCESSES_BACKUP
AS SELECT * FROM APPLSYS.FND_INSTALL_PROCESSES;

– Drop the FND_INSTALL_PROCESSES table.


SQL> DROP TABLE APPLSYS.FND_INSTALL_PROCESSES;
Patch Tips
• How to Apply Prerequisite Patch, when you are in the
Process of Applying a Patch.
– Backup the FND_DEFERRED_JOBS Table
SQL> CREATE TABLE AD_DEFERRED_JOBS_BACKUP
AS SELECT * FROM APPLSYS.AD_DEFERRED_JOBS;

– Drop the AD_DEFERRED_JOBS table.


SQL> DROP TABLE APPLSYS. AD_DEFERRED_JOBS;

– Backup the “*.rf9” files in the Operating System.


$ cd $APPL_TOP/admin/<SID>
$ mv restart restart_backup_<PATCH Number>_<DDMMYY>
Patch Tips
• How to Apply Prerequisite Patch, when you are in the
Process of Applying a Patch.
– Apply the perquisite patch.

– Restore the “*.rf9” files in the Operating System


$ cd $APPL_TOP/admin/<SID>
$ mv restart_backup_<PATCH Number>_<DDMMYY> restart

– Restore the FND_INSTALL_PROCESSES table.


SQL> CREATE TABLE APPLSYS.FND_INSTALL_PROCESSES
AS SELECT * FROM FND_INSTALL_PROCESSES_BACKUP;

– Restore the FND_DEFERRED_JOBS Table


SQL> CREATE TABLE APPLSYS.AD_DEFERRED_JOBS
AS SELECT * FROM AD_DEFERRED_JOBS_BACKUP;

– Restart the patch. Select the Option “Yes” to continue with the patch.
Patch Tips

• A Worker has Encountered an Error and has


Stopped. Now What?
– Review the adpatch log and associated worker log
– Create a SR with Oracle
– Use the ADCTL utility to manage the workers.
– If the error is due to an object which fails to
generate or compile, skip then task and perform
the task manually after the patch has been applied
Patch Tips

• Monitor the Patch Log While the Patch is


Being Applied
– Open another UNIX session and monitor the log
using a command such as tail -f
u[patch#].log to display information as it is
written to the log file.
• Cleanup After Patching
Concurrent Processing Tips
• Determining the Optimum Number of Concurrent
Managers
• Setting Priorities for Concurrent Requests
– Navigate to the view concurrent request form
\ Navigate > Concurrent > Program > Define
• enter 'F2', or Query > Run
– Navigate to a selected concurrent request, and enter 'DETAILS' in the view
field.
– Navigate to priority field in the “Executable” block.
– Enter a new value for the priority. If the priority is blank, it will default to the
user’s priority.
Concurrent Processing Tips
• Workshifts and Queues
– Start with a baseline
– Continuously Monitor and Adjust
– Solution will depend upon the results of the
analysis and trial-and-error
– I have had good results with creating queues
based upon the duration of a job, such as FAST
versus SLOW.
Concurrent Processing Tips
• Set the Cache Size for Standard Concurrent
Managers
– Set cache size to be at least twice the number of
target processes.
• Make Use of the Reprint Option
• Monitor Concurrent Processing Statistics
Performance Tuning and
Optimization
• Mapping DML Lock Contention to Application
Users and Processes
– Mapping EBS Concurrent Requests to Locks
• FND_CONC_REQUESTS_FORM_V - V$PROCESS -
V$SESSION-DBA_LOCKS

APPS.FND_CONC_REQUESTS_FORM_V V$PROCESS V$SESSION DBA_LOCKS

request_id sid session_id

oracle_process_id spid

addr paddr
Performance Tuning and
Optimization
• Mapping DML Lock Contention to Application Users
and Processes
– Mapping EBS User Sessions to Locks
• FND_SIGNON_AUDIT_VIEW - FND_V$PROCESS-
V$SESSION - DBA_LOCKS

APPS.FND_SIGNON_AUDIT_VIEW FND_V$PROCESS V$SESSION DBA_LOCKS

user_id sid session_id

pid pid

serial# serial#

addr paddr
Performance Tuning and
Optimization
• Mapping DML Lock Contention to Application Users
and Processes
– Mapping EBS User Forms Sessions to Locks
• FND_SIGNON_AUDIT_VIEW - FND_FORM_SESSIONS_V-
V$SESSION-DBA_LOCKS

APPS.FND_SIGNON_AUDIT_VIEW FND_FORM_SESSIONS_V V$SESSION DBA_LOCKS

user_id user_id

pid pid

sid sid session_id

serial# serial#
Upgrade Tips
• Prepare
– Check Product Certifications on MetaLink
– Run The Upgrade Manual Scripts (TUMS) Report
– Convert to Locally Managed Tablespaces Before
the Upgrade
– Purge
– Document the current environment.
• Products and patch levels
• Interfaces
• Customizations
Upgrade Tips
• Prepare
– Customizations… What’s going to be impacted?
– Copy, Export and Import DBA_VIEWS,
DBA_TABLES, DBA_TAB_COLUMNS from R12
Vision instance to your 11i dev/upgrade instance.
• R12_DBA_VIEWS
• R12_DBA_TABLES
• R12_DBA_TAB_COLUMNS
• Compare to dba_dependencies, and/or
• Compare
– Spool out DBA_VIEWS, DBA_TABLES,
DBA_TAB_COLUMNS from R12 Vision instance
Upgrade Tips
• Practice, Practice, Practice
– Determine the maximum allowable downtime of
the production system.
– Dedicated Patching Instance for Testing Patches.
– Capture timing statistics on physical upgrade
processes.
– Monitor performance of OS and Database during
all upgrade steps.
– Run the Technology Stack Inventory Validation
Report (R12)
Upgrade Tips

• Methods to Speedup the Upgrade Process


and Reduce Downtime
– Use the R12 Maintenance Wizard to help identify
the unnecessary upgrade steps.
– Identify steps which can be performed prior to the
upgrade.
– Identify any customizations , features or interfaces
which do not have to be available immediately
– Gather table and index statistics before upgrading
in source system.
Upgrade Tips

• Methods to Speedup the Upgrade Process


and Reduce Downtime, cont.
– Investigate application module specific
optimization opportunities
– Purge unnecessary Data where possible
– Use the TEST patched application file system.
– If there are new languages need to be added to
new system, do it after the upgrade.
– Convert to Multi-Org prior to the upgrade.
Upgrade Tips

• Methods to Speedup the Upgrade Process


and Reduce Downtime, cont.
– Upgrade OS and Database in Before.
– Convert to OATM (Oracle Applications
Tablespace Model) prior to the upgrade.
– Optimize patching as recommend in the
“PATCHING” section.
– Apply any pre-upgrade patches which could be
applied in a prior maintenance period.
Upgrade Tips

• Methods to Speedup the Upgrade Process


and Reduce Downtime, cont.
– Experiment with different numbers of workers
– Upgrade historical data at a later date.
– Create a init.ora pfile or spfile optimized for the
upgrade process
The End

• Questions?

Вам также может понравиться