You are on page 1of 4

OPatch Utility Information:

You must use the OPatch utility release 10.2.0.3.4 or later. You can download it from Oracle MetaLink with patch 6880880. NOTE: Be sure to download a version supported for this Bundle. If the Oracle inventory is not setup correctly, this utility will fail. To check accessibility to the inventory you can use the opatch lsinventory command. The utility must be in the PATH definition, or you must call it specifying its full path. For example:

%ORACLE_HOME%/OPatch/opatch lsinventory

Preinstallation Instructions:
1. Ensure that your Oracle Database installation is the same release for which you are applying this patch. In other words, only apply the Release 10.2.0.3 Bundle patch to an Oracle Database Release 10.2.0.3. 2. Back up the current database that is installed, the %ORACLE_HOME% directory and Oracle inventory under c:\Program files\oracle directory. This will help if there are problems applying the patch, and to restore the Inventory in case of an issue with the patch. 3. Perform a clean shutdown of all Oracle services (databases, Oracle listeners, Oracle agents, and so on.) that run from the Oracle Home where you install this patch. 4. Stop all Oracle services, Recovery catalog, ODBC applications, and other applications that use Oracle Client. This may include Web servers that load the Oracle client in the mid-tier environment. 5. This patch Bundle includes "version 4" of the Oracle Time Zone files. Installing new time zone files on a database can change the way that currently stored data is retrieved. In order to correctly store this data please follow the following steps: a. Download patch 5746875 from Meta link. b. Install this patch, which installs a script called utltzuv2.sql script into the %ORACLE_HOME%\rdbms\admin directory. c. Run this utltzuv2.sql script to check your TSTZ data, the output of this script will be a results table which highlights affected columns. d. If the script provided results then save this existing TSTZ data as found by utltzuv2.sql as VARCHAR2 data. If no data was found in step 3, or if the script indicates you already have this version of the time zone files in place, then no further actions are needed. Then apply this patch Bundle which installs the new time zone files. The same Oracle Time Zone file version is also needed on the clients you connect from, if these clients use TSTZ datatypes in this database. For instructions on step c and d, refer to the text in the utltzuv2.sql script installed by patch 5746875. For more detailed instructions on all steps, including scripts which automate the actions in step 4, refer to MetaLink note 396671.1: "Usage of utltzuv2.sql before updating time zone files in Oracle 10".

Patch Installation Instructions for SINGLE INSTANCE DATABASE:


1. Cleanly shut down all processes running from the ORACLE_HOME. 2. Set the ORACLE_HOME environment variable to the correct Oracle home that needs to be patched. 3. set ORACLE_HOME=<Oracle Home Path>

4. Go to the directory where you downloaded the patch: 5. cd 8288852

6. Ensure that the directory containing the OPatch script appears in your PATH setting. Enter the following command to run OPatch: 7. opatch apply

8. Inspect the opatch<timestamp>.log file generated in %ORACLE_HOME%\cfgtoollogs\opatch for any errors.

Recompiling Views in the Database:


The time required to recompile the views and related objects depends on the total number of objects and on your system configuration. In one internal Oracle test with approximately 2000 views and 4000 objects, the total execution time for view_recompile_jan2008cpu.sql and utlrp.sql was about 30 minutes. If you want to check whether view recompilation has already been performed for the database, execute the following statement.

SELECT * FROM registry$history where ID = '6452863';


If the view recompilation has been performed, this statement returns one row. If the view recompilation has not been performed, this statement returns no rows. To recompile the views for each database instance running out of the ORACLE_HOME being patched , follow these steps: 1. If Database Vault is installed, disable Database Vault before proceeding to the next step. See Section 3.5.1 for instructions to disable Database Vault. 2. Run the pre-check script, which reports the maximum number of views and objects that may be recompiled:

a. cd %ORACLE_HOME%\BUNDLE\view_recompile b. sqlplus /nolog c. SQL> CONNECT / AS SYSDBA

d. SQL> @recompile_precheck_jan2008cpu.sql e. SQL> QUIT

For Oracle Non-RAC installations:


Run the view recompilation script. Note that this script is run with the database in upgrade mode, which restricts connections as SYSDBA.

1. 2. 3. 4. 5. 6. 7. 8. 9.

cd %ORACLE_HOME%\BUNDLE\view_recompile sqlplus /nolog SQL> CONNECT / AS SYSDBA SQL> SHUTDOWN SQL> STARTUP UPGRADE SQL> @view_recompile_jan2008cpu.sql SQL> SHUTDOWN; SQL> STARTUP; SQL> QUIT

Check the log file for any errors. The log file is in the current directory and is named: vcomp_<sid>_<timestamp>.log If any invalid objects were reported, run the utlrp.sql script as follows:

1. 2. 3. 4.

cd %ORACLE_HOME%\rdbms\admin sqlplus /nolog SQL> CONNECT / AS SYSDBA SQL> @utlrp.sql

Then, manually recompile any invalid objects. For example:

SQL> alter <object_type> schemaname.<object_name> compile;


Verify that the view recompilation has been performed for the database, by executing the following statement:

SELECT * FROM registry$history where ID = '6452863';


If the view recompilation has been performed, this statement returns one row. If the view recompilation has not been performed, this statement returns no rows.