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

What are different Types of Patches?

Regular Patcheset: To upgrade to higher version we use database patchset. Please do not confuse
between regular patchests and patch set updates (PSU). Consider the regular patchset is super set of
PSU. Regular Patchset contain major bug fixes. In comparison to regular patch PSU will not change the
version of oracle binaries such as sqlplus, import/export etc. The importance of PSU is automatically
minimized once a regular patchset is released for a given version. It is mainly divided into two types:
Security or Critical Patch Update (CPU): Critical patch update quarterly delivered by oracle to fix
security issues.
Patch set updated (PSU): It include CPU and bunch of other one-off patches. It is also quarterly
delivered by oracle CPU + other one-off patches
Interim (one-off) Patch: It is also known as patchset exception or one-off patch or interim patch. This is
usually a single fix for single problem or enhancement. It released only when there is need of immediate
fix or enhancement that cannot wait until for next release of patchset or bundle patch. It is applied using
OPATCH utility and is not cumulative.
Bundle Patches: Bundle Patches includes both the quarterly security patches as well as recommended
fixes (for Windows and Exadata only). When you try to download this patch you will find bundle of patches
(different set of file) instead of single downloaded file (usually incase patchset).
Is Opatch (utility) is also another type of patch?
OPatch is utility from oracle corp. (Java based utility) that helps you in applying interim patches to
Oracle's software and rolling back interim patches from Oracle's software. Opatch also able to Report
already installed interim patch
When we applying single Patch, can you use OPATCH utility?
Yes, you can use Opatch incase of single patch. The only type of patch that cannot be used with OPatch
is a patchset
When you applying Patchsets, You can use OUI.
Yes, Patcheset uses OUI. A patch set contains a large number of merged patches, to change the version
of the product or introduce new functionality. Patch sets are cumulative bug fixes that fix all bugs and
consume all patches since the last base release. Patch sets and the Patch Set Assistant are usually
applied through OUI-based product specific installers.
Can you Apply OPATCH without downtime?
As you know for apply patch your database and listener must be down. When you apply OPTACH it will
update your current ORACLE_HOME. Thus coming to your question to the point in fact it is not possible
in case of single instance but in RAC you can Apply Opatch without downtime as there will be more
separate ORACLE_HOME and more separate instances (running once instance on each
ORACLE_HOME).
You have collection of patch (nearly 100 patches) or patchset. How can you apply only one patch
from patcheset or patch bundle at ORACLE_HOME?
With Napply itself (by providing patch location and specific patch id) you can apply only one patch from a
collection of extracted patch. For more information check the opatch util NApply help. It will give
you clear picture.
For Example:
opatch util napply <patch_location> -id 9 -skip_subset -skip_duplicate
This will apply only the patch id 9 from the patch location and will skip duplicate and subset of patch
installed in your ORACLE_HOME.
How can you get minimum/detail information from inventory about patches applied and
components installed?

You can try below command for minimum and detail information from inventory
C:\ORACLE_HOME\Opatch\opatch lsinventory invPtrLoc location of oraInst.loc
file
$ORACLE_HOME\OPatch\opatch lsinventory -detail -invPtrLoc location of
oraInst.loc file
Differentiate Patcheset, CPU and PSU patch? What kind of errors usually resolved from them?
Critical Patch Update (CPU) was the original quarterly patches that were released by oracle to target the
specific security fixes in various products. CPU is a subset of patchset updates (PSU). CPU are built on
the base patchset version where as PSU are built on the base of previous PSU
Patch Set Updates (PSUs) are also released quarterly along with CPU patches are a superset of CPU
patches in the term that PSU patch will include CPU patches and some other bug fixes released by
oracle. PSU contain fixes for bugs that contain wrong results, Data Corruption etc but it doe not contain
fixes for bugs that that may result in: Dictionary changes, Major Algorithm changes, Architectural changes,
Optimizer plan changes
Regular patchset: Please do not confuse between regular patchests and patch set updates (PSU).
Consider the regular patchset is super set of PSU. Regular Patchset contain major bug fixes. The
importance of PSU is minimizing once a regular patchset is released for a given version. In comparison to
regular patch PSU will not change the version of oracle binaries such as sqlplus, import/export etc.
If both CPU and PSU are available for given version which one, you will prefer to apply?
From the above discussion it is clear once you apply the PSU then the recommended way is to apply the
next PSU only. In fact, no need to apply CPU on the top of PSU as PSU contain CPU (If you apply CPU
over PSU will considered you are trying to rollback the PSU and will require more effort in fact). So if you
have not decided or applied any of the patches then, I will suggest you to go to use PSU patches. For
more details refer: Oracle Products [ID 1430923.1], ID 1446582.1
PSU is superset of CPU then why someone choose to apply a CPU rather than a PSU?
CPUs are smaller and more focused than PSU and mostly deal with security issues. It seems to be
theoretically more consecutive approach and can cause less trouble than PSU as it has less code
changing in it. Thus any one who is concerned only with security fixes and not functionality fixes, CPU
may be good approach.
How can you find the PSU installed version?
PSU references at 5th place in the oracle version number which makes it easier to track such as (e.g.
10.2.0.3.1). To determine the PSU version installed, use OPATCH utility:
OPATCH lsinv -bugs_fixed | grep -i PSU
To find from the database:
Select substr(action_time,1,30) action_time, substr(id,1,10) id,
substr(action,1,10) action,substr(version,1,8) version,
substr(BUNDLE_SERIES,1,6) bundle, substr(comments,1,20) comments from
registry$history;

Note: You can find the details from the above query if you already executed the catbundle.sql
Click to Check Existing Oracle Database Patch Status
Will Patch Application affect System Performance?
Sometimes applying certain patch could affect Application performance of SQL statements. Thus it is
recommended to collect a set of performance statistics that can serve as a baseline before we make any
major changes like applying a patch to the system.
Can you stop applying a patch after applying it to a few nodes? What are the possible issues?
Yes, it is possible to stop applying a patch after applying it to a few nodes. There is a prompt that allows
you to stop applying the patch. But, Oracle recommends that you do not do this because you cannot

apply another patch until the process is restarted and all the nodes are patched or the partially applied
patch is rolled back.
How you know impact of patch before applying a patch?
OPATCH <option> -report
You can use the above command to know the impact of the patch before actually applying it.
How can you run patching in scripted mode?
opatch <option> -silent
You can use the above command to run the patches in scripted mode.
Can you use OPATCH 10.2 to apply 10.1 patches?
No, Opatch 10.2 is not backward compatible. You can use Opatch 10.2 only to apply 10.2 patches.
What you will do if you lost or corrupted your Central Inventory?
In that case when you lost or corrupted your Central Inventory and your ORACLE_HOME is safe, you just
need to execute the command with attachHomeflag, OUI automatically setup the Central Inventory
for attached home.
What you will do if you lost your Oracle home inventory (comps.xml)?
Oracle recommended backup your ORACLE_HOME before applying any patchset. In that case either you
can restore your ORACLE_HOME from the backup or perform the identical installation of the
ORACLE_HOME.
When I apply a patchset or an interim patch in RAC, the patch is not propagated to some of my
nodes. What do I do in that case?
In a RAC environment, the inventory contains a list of nodes associated with an Oracle home. It is
important that during the application of a patchset or an interim patch, the inventory is correctly populated
with the list of nodes. If the inventory is not correctly populated with values, the patch is propagated only
to some of the nodes in the cluster.
OUI allows you to update the inventory.xml with the nodes available in the cluster using the updateNodeList flag in Oracle Universal Installer.
When I apply a patch, getting the following errors:
"Opatch Session cannot load inventory for the given Oracle Home <Home_Location> Possible
causes are: No read or write permission to ORACLE_HOME/.patch_storage; Central Inventory is
locked by another OUI instance; No read permission to Central Inventory; The lock file exists in
ORACLE_HOME/.patch_storage; The Oracle Home does not exist in Central Inventory". What do I
do?
This error may occur because of any one or more of the following reasons:
<!--[if !supportLists]-->
<!--[endif]-->The ORACLE_HOME/.patch_storage may not have read/write
permissions. Ensure that you give read/write permissions to this folder and apply the patch again.
<!--[if !supportLists]-->
<!--[endif]-->There may be another OUI instance running. Stop it and try applying
the patch again.
<!--[if !supportLists]-->
<!--[endif]-->The Central Inventory may not have read permission. Ensure
that you have given read permission to the Central Inventory and apply the patch again.
<!--[if !supportLists]-->
<!--[endif]-->The ORACLE_HOME/.patch_storage directory might be locked. If
this directory is locked, you will find a file named patch_locked inside this directory. This may be due to
a previously failed installation of a patch. To remove the lock, restore the Oracle home and remove the
patch_locked file from the ORACLE_HOME/.patch_storage directory.
<!--[if !supportLists]-->
<!--[endif]-->The Oracle home may not be present in the Central Inventory.
This may be due to a corrupted or lost inventory or the inventory may not be registered in the Central
Inventory.

We should check for the latest security patches on the Oracle metalink website http://metalink.oracle.com/
and we can find the regular security alert at the location
http://technet.oracle.com/deploy/security/alert.htm
Caution: It is not advisable to apply the patches directly into the production server. The ideal solution is
to apply or test the patches in test server before being moved into the production system.
For more about oracle Patch:

When you moved oracle binary files from one ORACLE_HOME server to another server
then which oracle utility will be used to make this new ORACLE_HOME usable?
Relink all.
In which months oracle release CPU patches?
JAN, APR, JUL, OCT
When we applying single Patch, can you use opatch utility?
Yes, you can use Opatch incase of single patch. The only type of patch that cannot be
used with OPatch is a patchset.
You have collection of patch (nearly 100 patches) or patchset. How can you apply
only one patch from it?
With Napply itself (by providing patch location and specific patch id) you can apply only
one patch from a collection of extracted patch. For more information check the opatch
util NApply help. It will give you clear picture.
For Example:
opatch util napply <patch_location> -id 9 -skip_subset -skip_duplicate
This will apply only the patch id 9 from the patch location and will skip duplicate and
subset of patch installed in your ORACLE_HOME.
If both CPU and PSU are available for given version which one, you will prefer to
apply?
From the above discussion it is clear once you apply the PSU then the recommended way is
to apply the next PSU only. In fact, no need to apply CPU on the top of PSU as PSU
contain CPU (If you apply CPU over PSU will considered you are trying to rollback the PSU
and will require more effort in fact). So if you have not decided or applied any of the
patches then, I will suggest you to go to use PSU patches. For more details refer: Oracle
Products [ID 1430923.1], ID 1446582.1
PSU is superset of CPU then why someone choose to apply a CPU rather than a PSU?
CPUs are smaller and more focused than PSU and mostly deal with security issues. It seems
to be theoretically more consecutive approach and can cause less trouble than PSU as it
has less code changing in it. Thus any one who is concerned only with security fixes and
not functionality fixes, CPU may be good approach.
How to Download Patches, Patchset or Opatch from metalink?
If you are using latest support.oracle.com then after login to metalink Dashboard

- Click on "Patches & Updates" tab


- On the left sidebar click on "Latest Patchsets" under "Oracle Server/Tools".
- A new window will appear.
- Just mouseover on your product in the "Latest Oracle Server/Tools Patchsets" page.
- Corresponding oracle platform version will appear. Then simply choose the patchset
version and click on that.
- You will go the download page. From the download page you can also change your platform
and patchset version.
REFERENCES:
http://docs.oracle.com/cd/E11857_01/em.111/e12255/e_oui_appendix.htm
Oracle Universal Installer and OPatch User's Guide
11g Release 2 (11.2) for Windows and UNIX
Part Number E12255-11

What is the recent Patch applied?


Opatch lsinverntory
What is OPatch?
Its utility used to apply the patches on oracle home.

How to Apply Opatch in Oracle?


1. You MUST read the Readme.txt file included in opatch file, look for any prereq. steps/
post installation steps or and DB related changes. Also, make sure that you have the
correct opatch version required by this patch.
2.Make sure you have a good backup of database.
3. Make a note of all Invalid objects in the database prior to the patch.
4. Shutdown All the Oracle Processes running from that Oracle Home , including the
Listener and Database instance, Management agent etc.
5. You MUST Backup your oracle Home and Inventory
tar -cvf $ORACLE_HOME $ORACLE_HOME/oraInventory | gzip > Backup_Software_Version.tar.gz
6. Unzip the patch in $ORACLE_HOME/patches
7. cd to the patch direcory and do opatch -apply to apply the patch.
8. Read the output/log file to make sure there were no errors.
Patching Oracle Software with OPatch ?
opatch napply <patch_location> -skip_subset -skip_duplicate
OPatch skips duplicate patches and subset patches (patches under <patch_location> that
are subsets of patches installed in the Oracle home).

OPATCH Utility (Oracle RDBMS Patching)


1. Download the required Patch from Metalink based on OS Bit Version and DB Version.

2. Need to down the database before applying patch.


3. Unzip and Apply the Patch using opatch apply command.On successfully applied of
patch you will see successful message OPatch succeeded., Crosscheck your patch is
applied by using opatch lsinventory command .
4. Each patch has a unique ID, the command to rollback a patch is opatch rollback -id
<patch no.> command.On successfully applied of patch you will see successful message
OPatch succeeded., Crosscheck your patch is applied by using opatch lsinventory
command .
5. Patch file format will be like, p<patch no.>_<db version>_<os>.zip
6. We can check the opatch version using opatch -version command.
7. Generally, takes 2 minutes to apply a patch.
8. To get latest Opatch version download patch 6880880 - latest opatch tool, it
contains OPatch directory.
9. Contents of downloaded patches will be like etc,files directories and a README file
10. Log file for Opatch utility can be found at $ORACLE_HOME/cfgtoollogs/opatch
11. OPatch also maintains an index of the commands executed with OPatch and the log files
associated with it in the history.txt file located in the
<ORACLE_HOME>/cfgtoollogs/opatch directory.
12. Starting with the 11.2.0.2 patch set, Oracle Database patch sets are full
installations of the Oracle Database software. This means that you do not need to install
Oracle Database 11g Release 2 (11.2.0.1) before installing Oracle Database 11g Release 2
(11.2.0.2).
13. Direct upgrade to Oracle 10g is only supported if your database is running one of the
following releases: 8.0.6, 8.1.7, 9.0.1, or 9.2.0. If not, you will have to upgrade the
database to one of these releases or use a different upgrade option (like export/
import).
14.Direct upgrades to 11g are possible from existing databases with versions 9.2.0.4+,
10.1.0.2+ or 10.2.0.1+. Upgrades from other versions are supported only via intermediate
upgrades to a supported upgrade version.
http://avdeo.com/2008/08/19/opatch-utility-oracle-rdbms-patching/
Oracle version 10.2.0.4.0 what does each number refers to?
Oracle version number refers:
10 Major database release number
2 Database Maintenance release number
0 Application server release number
4 Component Specific release number
0 Platform specific release number
Types of Patches?
How to rollback a patch?
Optach rollback id
What is PSU?
CPU + One Off

What is Rolling Patch?


How to check installed Patches?
Ls inverntory
How much time will it take for Patching?

Common issues faced in Patching?

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