Sie sind auf Seite 1von 23

Oracle Apps Patching in interactive mode:

1. Steps in Applying a Patch

a) login as applmgr and set the environment. For the Windows environment also, you have to test
that CLASSPATH contains %JAVA_TOP%, %JAVA_TOP%\loadjava.zip

b) create a PATCH_TOP directory in the Base Directory (at the same level as APPL_TOP,
COMMON_TOP, etc: this is just a recommandation) for the patches which will be downloaded. If this
directory exists, this step can be skipped. An OS environment variable could be created for this
directory. This will be done only one time, when the first patch will be applied.

c) download the patch you want to apply in PATCH_TOP directory and unzip the patch.

d) understand the README.txt file and complete the prerequisite or manual steps. Here, if there are
any patched to apply as pre-requisite, in general, is created a document with all the steps involving in
the patching process and the pre-requisite patches will be applied before the initial patch.

e) assure that the PLATFORM variable environment (under UNIX, Linux, Solaris) is set

f) Shut down APPS services. The database services and the listener must be up and running.

g) Enable Maintenance Mode.

h) Start AutoPatch in interactive mode. this task must be done from the directory where the patch
driver is/was unzipped. Also, respond to the adpatch prompts. If there are more drivers to apply (there
is no unified drive: there could be a database (d), copy (c) or generate (g) drive) restart the adpatch and
apply the other patches.

i) Review the log files. By default, the location is $APPL_TOP/admin/<SID>/log and the file
is adpatch.log.

j) Review the customizations (if any). If a customization was modified by this patch, the customization
must be applied again.

For the customizations please look into the $APPL_TOP/admin/applcust.txt file.

k) Disable Maintenance Mode

l) Restart APPS services

m) Archive or delete the AutoPatch backup files.

2. How could I test the impact of the patch on the APPS environment ?

AutoPatch must be run in test mode (apply=no). The APPS services must be stopped and the
Maintenance Mode must be enabled as well. To see which is the impact on the system, you can
use Patch Impact Analysis in the Patch Wizard.
3. May I apply a patch if the APPS services are running and the Maintenance Mode is not enabled ?

If this is possible the README.txt will let you know. If the patch README.txt file will not state this
explicitly, that means you have to stop the APPS processes and to enable the Maintenance Mode. The
help files can always be applied without stopping the APPS services.

If a patch can be applied without stopping the APPS services we have to use the option hotpatch.

4. What is a non-standard patch ?

A non-standard patch is a regular patch (with a similar structure as a standard patch), but the naming is
not standard (the naming of the driver file).

A standard patch is
named u<patchnum>.drv, c<patchnum>.drv, d<patchnum>.drv or g<patchnum>.drv. The <patchnum>
has 6-8 digits

5. Which are the Oracle Applications Patch types ?

Patch Type Description

This is a a consolidation, or bundling, of patches from all of the


product areas within the E-Business Suite. Maintenance packs are
Maintenance Pack always cumulative, and can be applied to any configured version
of Oracle Applications Release 11i.
(referred to by a three-
part number, such as Maintenance Packs are typically quite large (around 800 MB). In
11.5.10) addition to being downloadable from OracleMetaLink,
Maintenance Packs CDs are bundled into Applications CD Packs on
the Oracle store.

Family Pack This is a consolidated set of patches specific to a product family,


(Family Packs are denoted such as HRMS or Order Management. Family Packs are denoted
with a letter: AD.I ) with a letter, such as Order Management Family Pack G.

A minipack is a consolidated set of patches specific to a single


MiniPack or patchset
product.

A "one-off" patch provides a single fix or enhancement. One-off


One-off patches are not always practical or even possible if the change
affects multiple product areas.

A diagnostic patch is sent to a customer to assist Oracle Support


Diagnostic Patch Services and Oracle Development obtain diagnostic information.
This is provided when a product issue cannot be reproduced in an
OSS environment and/or customer specific data is required for
fixing the issue.

An interoperability patch enables Oracle Applications to work


Interoperability Patch
with a new technology.

A translated patch contains patch components in languages other


Translated Patch than American English. A translated patch contains only those
components that require translation.

Oracle Apps Patching in NON interactive mode:


1. Why Patching in NON-interactive mode ?

Instead of responding to the adpatch prompts, you can create a file which keeps the adpatch
responses. In this case you don't have to asnswer to the adpatch prompt and because of this
the down time is smaller.

2. How could I create the response file (the defaultsfile file) ?

This could be done by running the AutoPatch in interactive mode using the defaultsfile = <file
name> argument. When AutoPatch ask you for the location of the patch
type abort and <ENTER>.

Example:

$ adpatch defaultsfile=$APPL_TOP/admin/VIS/mydefaults.txt

Copyright (c) 2002 Oracle Corporation


Redwood Shores, California, USA

Oracle Applications AutoPatch

Version 11.5.0

NOTE: You may not use this utility for custom development
unless you have written permission from Oracle Corporation.
Attention: AutoPatch no longer checks for unapplied pre-requisite patches.
You must use OAM Patch Wizard for this feature. Alternatively, you can
review the README for pre-requisite information.

Your default directory is '/APPS/visappl'.


Is this the correct APPL_TOP [Yes] ?

AutoPatch records your AutoPatch session in a text file


you specify. Enter your AutoPatch log file name or press [Return]
to accept the default file name shown in brackets.

Filename [adpatch.log] :

Defaults Feature Enabled = YES.

You can be notified by email if a failure occurs.


Do you wish to activate this feature [No] ?

Please enter the batchsize [1000] :

Please enter the name of the Oracle Applications System that this
APPL_TOP belongs to.

The Applications System name must be unique across all Oracle


Applications Systems at your site, must be from 1 to 30 characters
long, may only contain alphanumeric and underscore characters,
and must start with a letter.

Sample Applications System names are: "prod", "test", "demo" and


"Development_2".

Applications System Name [VIS] : VIS *

NOTE: If you do not currently have certain types of files installed


in this APPL_TOP, you may not be able to perform certain tasks.

Example 1: If you don't have files used for installing or upgrading


the database installed in this area, you cannot install or upgrade
the database from this APPL_TOP.

Example 2: If you don't have forms files installed in this area, you cannot
generate them or run them from this APPL_TOP.

Example 3: If you don't have concurrent program files installed in this area,
you cannot relink concurrent programs or generate reports from this APPL_TOP.

Do you currently have files used for installing or upgrading the database
installed in this APPL_TOP [YES] ? YES *

Do you currently have Java and HTML files for HTML-based functionality
installed in this APPL_TOP [YES] ? YES *
Do you currently have Oracle Applications forms files installed
in this APPL_TOP [YES] ? YES *

Do you currently have concurrent program files installed


in this APPL_TOP [YES] ? YES *

Please enter the name Oracle Applications will use to identify this APPL_TOP.

The APPL_TOP name you select must be unique within an Oracle Applications
System, must be from 1 to 30 characters long, may only contain
alphanumeric and underscore characters, and must start with a letter.

Sample APPL_TOP Names are: "prod_all", "demo3_forms2", and "forms1".

APPL_TOP Name [apps] : apps *

You are about to apply a patch to the installation of Oracle Applications


in your ORACLE database 'VIS'
using ORACLE executables in '/APPS/visora/8.0.6'.

Is this the correct database [Yes] ?

AutoPatch needs the password for your 'SYSTEM' ORACLE schema


in order to determine your installation configuration.

Enter the password for your 'SYSTEM' ORACLE schema: manager

The ORACLE username specified below for Application Object Library


uniquely identifies your existing product group: APPLSYS

Enter the ORACLE password of Application Object Library [APPS] :

AutoPatch is verifying your username/password.


The status of various features in this run of AutoPatch is:

<-Feature version in->


Feature Active? APPLTOP Data model Flags
------------------------------ ------- -------- ----------- -----------
CHECKFILE Yes 1 1 Y N N Y N Y
PREREQ Yes 6 6 Y N N Y N Y
CONCURRENT_SESSIONS No 2 2 Y Y N Y Y N
PATCH_TIMING Yes 2 2 Y N N Y N Y
PATCH_HIST_IN_DB Yes 6 6 Y N N Y N Y
SCHEMA_SWAP Yes 1 1 Y N N Y Y Y
Identifier for the current session is 26930

Reading product information from file...


Reading language and territory information from file...
Reading language information from applUS.txt ...
Reading database to see what industry is currently installed.
Reading FND_LANGUAGES to see what is currently installed.
Currently, the following language is installed:
Code Language Status
---- --------------------------------------- ---------
US American English Base
Your base language will be AMERICAN.
Setting up module information.
Reading database for information about the modules.
Saving module information.
Reading database for information about the products.
Reading database for information about how products depend on each other.
Reading topfile.txt ...
Saving product information.
AD code level : [11i.AD.I.2]
Trying to obtain a lock...
Attempting to instantiate the current-view snapshot...
Instantiated bug-fix info from baseline info.

**************** S T A R T O F U P L O A D ****************

Start date: Thu Mar 27 2008 00:13:42


0 "left over" javaupdates.txt files uploaded to DB: Thu Mar 27 2008 00:13:42
0 patches uploaded from the ADPSV format patch history files: Thu Mar 27 2008 00:13:42
Uploading information about files copied during the previous runs ...
0 "left over" filescopied_<session_id>.txt files uploaded to DB: Thu Mar 27 2008 00:13:42
****************** E N D O F U P L O A D ******************
End date: Thu Mar 27 2008 00:13:42
Enter the directory where your Oracle Applications patch has been unloaded
The default directory is [/home/oracle/Desktop/PATCH_TOP/6012471] : abort + ENTER !!!!!

Verify that the defaults file exists in APPL_TOP/admin/<SID> directory:

[oracle@APPS VIS]$ cd /APPS/visappl/admin/VIS


[oracle@APPS VIS]$ ls
\adalldefaults.txt log mydefaults.txt out restart

Here is the content of the mydefaults.txt file:


#
# AD Default Values File
#
#
# Updated by AutoPatch on Thu Mar 27 2008 00:10:51
#

## Start of Defaults Record


%%START_OF_TOKEN%%
APPL_TOP
%%END_OF_TOKEN%%

%%START_OF_VALUE%%
/APPS/visappl
%%END_OF_VALUE%%
## End of Defaults Record

## Start of Defaults Record


%%START_OF_TOKEN%%
DBNAME
%%END_OF_TOKEN%%

%%START_OF_VALUE%%
VIS
%%END_OF_VALUE%%
## End of Defaults Record

## Start of Defaults Record


%%START_OF_TOKEN%%
MATCH_APPL_TOP
%%END_OF_TOKEN%%

%%START_OF_VALUE%%
Yes
%%END_OF_VALUE%%
## End of Defaults Record

## Start of Defaults Record


%%START_OF_TOKEN%%
LOG_FNAME
%%END_OF_TOKEN%%

%%START_OF_VALUE%%
adpatch.log
%%END_OF_VALUE%%
## End of Defaults Record

## Start of Defaults Record


%%START_OF_TOKEN%%
DEF_ACTIVATE_EMAIL
%%END_OF_TOKEN%%

%%START_OF_VALUE%%
No
%%END_OF_VALUE%%
## End of Defaults Record

## Start of Defaults Record


%%START_OF_TOKEN%%
DEF_BATCH_SIZE
%%END_OF_TOKEN%%

%%START_OF_VALUE%%
1000
%%END_OF_VALUE%%
## End of Defaults Record

## Start of Defaults Record


%%START_OF_TOKEN%%
O2
%%END_OF_TOKEN%%

%%START_OF_VALUE%%
/APPS/visora/8.0.6
%%END_OF_VALUE%%
## End of Defaults Record

## Start of Defaults Record


%%START_OF_TOKEN%%
CORRECT_DBENV
%%END_OF_TOKEN%%

%%START_OF_VALUE%%
Yes
%%END_OF_VALUE%%
## End of Defaults Record

## Start of Defaults Record


%%START_OF_TOKEN%%
DEF_SYSTEM_PWD
%%END_OF_TOKEN%%

%%START_OF_VALUE%%
manager
%%END_OF_VALUE%%
## End of Defaults Record

## Start of Defaults Record


%%START_OF_TOKEN%%
ORACLE_username_Application_Object_Library
%%END_OF_TOKEN%%

%%START_OF_VALUE%%
APPLSYS
%%END_OF_VALUE%%
## End of Defaults Record

## Start of Defaults Record


%%START_OF_TOKEN%%
ORACLE_password_Application_Object_Library
%%END_OF_TOKEN%%

%%START_OF_VALUE%%
APPS
%%END_OF_VALUE%%
## End of Defaults Record

3. Applying the patch in NON-interactive Mode

Run the following command:

$adpatch defaultsfile=$APPL_TOP/admin/<SID>/<defaults file name> \

patchtop=<loaction of the patch driver> \

logfile= <logfile short name> \

driver= <driver name> \

workers = <number of workers> \

interactive=no
Note: if driver parameter is not specified, all the drivers will be applied.

Example:

$ adpatch defaultsfile=$APPL_TOP/admin/VIS/mydefaults.txt \
patchtop=/home/oracle/Desktop/PATCH_TOP/6012471 \
logfile=6012471.log \
driver=u6012471.drv \
workers=4 \
interactive=no

4. Restarting a NON-interactive AutoPatch session

This must be done when a NON-interactive patching session fails.

When the error is fixed the session must be restarted. this must be done using the same
command and another new argument restart=yes:

$ adpatch defaultsfile=$APPL_TOP/admin/VIS/mydefaults.txt \
patchtop=/home/oracle/Desktop/PATCH_TOP/6012471 \
logfile=6012471.log \
driver=u6012471.drv \
workers=4 \
interactive=no \

restart=yes

5. Abandoning a NON-interactive AutoPatch session

If you have an error with a NON-interactive patch and you want to abandon that session (you
will never be able to restart that session in this case) in order to apply another patch NON-
interactively you have to add abandon=yes to the new adpatch command:

Example:

$ adpatch defaultsfile=$APPL_TOP/admin/VIS/mydefaults.txt \
patchtop=/home/oracle/Desktop/PATCH_TOP/6132763 \
logfile=6132763.log \
driver=u6132763.drv \
workers=4 \
interactive=no \

abandon=yes
Merge Patches in Oracle eBusiness Suite 11i:
1. Why Merging patches ?
Merging patches allows us to create a merged patch which contains all the
changes found in the patches which will be merged. This decrease the
downtime for patching.
2. How could I merge patches ?

a) Download the patches to be merged

b) Review the readme files: Not all the patches can be merged. Also, some
patches require manual steps.

c) Create source / destination directories


The source and the destination directory must be created in the same
directory. The source and the destination directory could have any name.
d) Unzip the patches in the source directory

e) Run AD Merge Patch


[oracle@APPS PATCH_TOP]$ ls
DESTINATION SOURCE
[oracle@APPS PATCH_TOP]$ . /APPS/visappl/APPSORA.env
[oracle@APPS PATCH_TOP]$ admrgpch -s SOURCE -d
DESTINATION -merge_name merge1 -logfilemerge1.log
Executing the merge of the patch drivers
-- Processing patch: SOURCE/6012471
-- Done processing patch: SOURCE/6012471
Processing patch: SOURCE/6132763
-- Done processing patch: SOURCE/6132763

Copying files...
100% complete. Copied 14 files of 6...
2 unified drivers merged.
Patch merge completed successfully

f) Check AD Merge Patch log file (admrgpch.log or the named one) for
errors

NOTES:
 A merged patch is applied just like a single patch (using adpatch).
 The manifest option could be used to let Oracle unzip the zip files during
the merging process.

3. Can I merge patches even though some of the patch readmes say that
patches must be applied in a specific order?
Yes

4. Remarks on Patches Merging


 Older split patches can be merged with unified drivers;
 Patches can be merged with their prerequisite patches;
 Patches can ONLY be merged for the same release, platform parallel
modes;
 If the combination of patches you want to merge is not supported, you will
receive a message;
 Merged AD Patches must be done separately and applied before a non AD
Patch;
 The admrgpch utility must be run from the directory which contains the
"Destination" and "Source" directories;
 NLS patches must be applied (merged or not) after the US patches,
however is allowed to merge the US and NLS patches

Patch Impact Analysis in Oracle Apps 11i


1. What is Patch Impact Analysis used for ?

When a patch will be applied on the system, Patch Impact Analysis could
produce a report with the files which will be added, modified or ignored
due to this patch. You can view also the prerequisite patches for that
patch.

2. How could I get a Patch Impact Analysis ?


Login to Oracle Application Manager -> "Site Map" -> "Maintenance" ->
"Patch Wizard"

From this page there are 2 way to get a Patch Impact Analysis:

A) From the "Result Section" choose a "Filter Name/ Patch List" and click
on "Details" icon.
The following window will appear:

On this screen, choose a patch and click on "Impact" icon.

A) From the "Patch Wizard Tasks" choose "Recommend/ Analyze


Patches" and click on "Tasks" icon.
The following screen will appear:
On this window choose a patch to be analyzed and press "OK".

The following window will appears:


Click "Ok".
On this window click "OK" again.

3. Understanding the Patch Impact Analysis

The Patch Impact Analysis looks like:


On the underlined field we can click to get more information:

For instance, if I click on "1" from "Direct Impact Summary", "Applications


Patched" I will get the following window:
In this screen we can see that the patch 3591687 changes 2 files and add 9
files for the AR (Receivables) application.

If we click on "Changed File" column (on "2") we get more information


about the 2 file which would be changed:
Find the patch level for a specific product:

Which is the patch level for a specific product ?

SQL> conn apps/apps


Connected.
SQL> col PATCH_LEVEL format a17
The following select will return the patch level for all the products we have installed:

SQL> select PATCH_LEVEL from FND_PRODUCT_INSTALLATIONS order by 1;

For a specific product (for instance for AD product) we can run the following select:

SQL> select PATCH_LEVEL from FND_PRODUCT_INSTALLATIONS where PATCH_LEVEL


like '%AD%';

The following query could be useful too:

set linesize 100


set pagesize 250
col Appl_short_name format a15
col Application_Name format a45
col PATCH_LEVEL format a12
col STATUS format a14

SELECT fa.application_id Appl_ID,


fa.application_short_name "Appl_short_name",
fa.application_name "Application_Name",
decode( fpi.status, 'I', 'Installed', 'S', 'Shared', 'N', 'Not Installed', 'Customized ?'
) Status,
fpi.patch_level Patch_Level
FROM fnd_application_all_view fa,
fnd_product_installations fpi
WHERE fa.application_id = fpi.application_id
ORDER BY 2;
NOTE:
We can use also
 the Patchset comparison tool - patchsets.sh ( Metalink Note: 139684.1 )
 OAM
 Applications Diagnostic Tests
 $AD_TOP/sql/adutconf.sql

Find the Applied Oracle Apps Patches:


SQL> conn apps/apps
Connected.

SQL> select BUG_NUMBER,CREATION_DATE, SUCCESS_FLAG from AD_BUGS where


bug_number='6117031';

no rows selected

If there are no rows selected that means the patch is not applied.

NOTE: This could be done using Oracle Application Manager as well.

Das könnte Ihnen auch gefallen