Steps for Upgrading the Database to 10g Release 2Preparing to UpgradeIn this section all the steps need to be performed to...
Tablespaces:This section displays a list of tablespaces in the current database. For each tablespace, the tablespacename a...
A, OLAPSVR, OLAP_USER,OLAPSYS, EXFSYS, SYSMAN, MDDATA,SI_INFORMTN_SCHEMA, XDB, ODM);If users or roles require privileges o...
This step is only required for TIMESTAMP WITH TIMEZONE Datatype. Else skip toSTEP 6Please this step is only required for t...
be limited to UTF8 and AL16UTF16. Any other NLS_NCHAR_CHARACTERSET will nolonger be supported.For more details, refer to N...
(your current NLS_NCHAR_CHARACTERSET is for example US7ASCII,WE8ISO8859P1, CL8MSWIN1251 ...)then you have to:   •   change...
SQL>exec dbms_stats.export_schema_stats(OLAPSYS,dictstattab,statown => SYS);SQL>exec dbms_stats.export_schema_stats(DMSYS,...
- method_opt => FOR ALL COLUMNS SIZE AUTO, cascade => TRUE);SQL>exec dbms_stats.gather_schema_stats(ODM,options=>GATHER,es...
If you are upgrading from Oracle9iR2 (9.2), verify that the view dba_registry containsdata. If the view is empty, run the ...
$ sqlplus / as sysdbaSQL> select distinct(trunc(last_refresh)) from dba_snapshot_refresh_times;Step 11:Stop the listener f...
SQL> alter user sys default tablespace SYSTEM;SQL> alter user system default tablespace SYSTEM;Step 16:Ensure that the aud...
Update the init.ora file:- Make a backup of the old init.ora file- Copy it from the old (pre-10.2) ORACLE_HOME to the new ...
- If you are using a cluster database, set the parameter CLUSTER_DATABASE=FALSEduring the upgrade.- If you are upgrading a...
If your parameter file resides within the old environments ORACLE_HOME, then copyit to the new ORACLE_HOME. By default, Or...
- LIBPATH (AIX only)- SHLIB_PATH (HPUX only)- ORACLE_PATH$ env | grep ORACLE_HOME$ env | grep PATH$ env | grep ORA_NLS10$ ...
NOTE: Before performing the next action, disable any third party procedures that checkthe complexity of schema passwords. ...
Step 33:Run utlu102s.sql, specifying the TEXT option:SQL> @utlu102s.sql TEXTThis is the Post-upgrade Status Tool displays ...
This is needed if you want to upgrade specific components.Step 35:Run olstrig.sql to re-create DML triggers on tables with...
% sqlplus /as sysdba  SQL> shutdown  SQL> startup restrictStep 38:Complete the Step 38 only if you upgraded your database ...
SQL> @utlnchar.sql  SQL> shutdown immediate;go to step 40.D) IF you are using N-type columns for *user* data *AND * your p...
semantics can break application code. See Note 144808.1 for further information aboutthe usage of this parameter.- If you ...
From the pre-10g home, run the command:% svrctl remove database -d <db_name>From the 10g home, run the commands:% srvctl a...
It is a good idea to OFFLINE NORMAL all tablespaces except for SYSTEM and thosecontaining rollback/UNDO tablespace prior t...
ORACLE_TRACE_FACILITY_NAMEORACLE_TRACE_FACILITY_PATHPARTITION_VIEW_ENABLEDPLSQL_NATIVE_C_COMPILERPLSQL_NATIVE_LINKERPLSQL_...
Please make sure to set the following init parameters as below in the spfile/init file orcomment them out to their default...
- Add workaround to ORA-1403 from utlu102i.sql (step 2)- Added reference to Note 471479.1 in the list of prerequisites27-F...
Note 293658.1 - 10.1 or 10.2 Patchset Install Getting ORA-29558 JAccelerator (NCOMP)And ORA-06512Note 316900.1 - ALERT: Or...
Upcoming SlideShare
Loading in …5
×

Steps for upgrading the database to 10g release 2

864 views
756 views

Published on

Published in: Technology, News & Politics
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
864
On SlideShare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
44
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Steps for upgrading the database to 10g release 2

  1. 1. Steps for Upgrading the Database to 10g Release 2Preparing to UpgradeIn this section all the steps need to be performed to the previous version of Oracle.Please note that the database must be running in normal mode in the old release.Step 1:Log in to the system as the owner of the new 10gR2 ORACLE_HOME and copy thefollowing files from the 10gR2 ORACLE_HOME/rdbms/admin directory to a directoryoutside of the Oracle home, such as the /tmp directory on your system:ORACLE_HOME/rdbms/admin/utlu102i.sqlORACLE_HOME/rdbms/admin/utltzuv2.sqlMake a note of the new location of these files.Step 2:Change to the temporary directory that you copied files to in Step 1.Start SQL*Plus and connect to the database instance as a user with SYSDBA privileges.Then run and spool the utlu102i.sql file.sqlplus /as sysdbaSQL> spool Database_Info.logSQL> @utlu102i.sqlSQL> spool offThen, check the spool file and examine the output of the upgrade information tool.The sections which follow, describe the output of the Upgrade Information Tool(utlu102i.sql).NOTE: If you are upgrading from 8.1.7.4, the utlu102i.sql script will fail with an ORA-1403 error. Please follow the workaround in Note 5640527.8 (or Note 407031.1) toenable utlu102i.sql to run. [Not to worry – as this has been fixed in 10.2.0.4 which we arecurrently using]Database:This section displays global database information about the current database such as the database name,release number, and compatibility level. A warning is displayed if the COMPATIBLE initialization parameterneeds to be adjusted before the database is upgraded.Logfiles:This section displays a list of redo log files in the current database whose size is less than 4 MB. For eachlog file, the file name, group number, and recommended size is displayed. New files of at least 4 MB(preferably 10 MB) need to be created in the current database. Any redo log files less than 4 MB must bedropped before the database is upgraded.
  2. 2. Tablespaces:This section displays a list of tablespaces in the current database. For each tablespace, the tablespacename and minimum required size is displayed. In addition, a message is displayed if the tablespace isadequate for the upgrade. If the tablespace does not have enough free space, then space must be added tothe tablespace in the current database. Tablespace adjustments need to be made before the database isupgraded.Update Parameters:This section displays a list of initialization parameters in the parameter file of the current database that mustbe adjusted before the database is upgraded. The adjustments need to be made to the parameter file after itis copied to the new Oracle Database 10g release.Deprecated Parameters:This section displays a list of initialization parameters in the parameter file of the current database that aredeprecated in the new Oracle Database 10g release.Obsolete Parameters:This section displays a list of initialization parameters in the parameter file of the current database that areobsolete in the new Oracle Database 10g release. Obsolete initialization parameters need to be removedfrom the parameter file before the database is upgraded.Components:This section displays a list of database components in the new Oracle Database 10g release that will beupgraded or installed when the current database is upgraded.Miscellaneous Warnings:This section provides warnings about specific situations that may require attention before and/or after theupgrade.SYSAUX Tablespace:This section displays the minimum required size for the SYSAUX tablespace, which is required in OracleDatabase 10g. The SYSAUX tablespace must be created after the new Oracle Database 10g release isstarted and BEFORE the upgrade scripts are invoked.Step 3:Check for the deprecated CONNECT RoleAfter upgrading to 10gR2, the CONNECT role will only have the CREATE SESSIONprivilege; the other privileges granted to the CONNECT role in earlier releases will berevoked during the upgrade.To identify which users and roles in your database are granted the CONNECT role, usethe following query:SELECT grantee FROM dba_role_privsWHERE granted_role = CONNECT andgrantee NOT IN (SYS, OUTLN, SYSTEM, CTXSYS, DBSNMP,LOGSTDBY_ADMINISTRATOR, ORDSYS,ORDPLUGINS, OEM_MONITOR, WKSYS, WKPROXY,WK_TEST, WKUSER, MDSYS, LBACSYS, DMSYS,WMSYS, OLAPDB
  3. 3. A, OLAPSVR, OLAP_USER,OLAPSYS, EXFSYS, SYSMAN, MDDATA,SI_INFORMTN_SCHEMA, XDB, ODM);If users or roles require privileges other than CREATE SESSION, then grant the specificrequired privileges prior to upgrading. The upgrade scripts adjust the privileges for theOracle-supplied users.In Oracle 9.2.x and 10.1.x CONNECT role includes the following privileges:SELECT GRANTEE,PRIVILEGE FROM DBA_SYS_PRIVSWHERE GRANTEE=CONNECTGRANTEE PRIVILEGE------------------------------ ---------------------------CONNECT CREATE VIEWCONNECT CREATE TABLECONNECT ALTER SESSIONCONNECT CREATE CLUSTERCONNECT CREATE SESSIONCONNECT CREATE SYNONYMCONNECT CREATE SEQUENCECONNECT CREATE DATABASE LINKIn Oracle 10.2 the CONNECT role only includes CREATE SESSION privilege.Step 4:Create the script for dblink incase of downgrade of the database.During the upgrade to 10gR2, any passwords in database links will be encrypted. Todowngrade back to the original release, all of the database links with encryptedpasswords must be dropped prior to the downgrade. Consequently, the database linkswill not exist in the downgraded database. If you anticipate a requirement to be able todowngrade back to your original release, then save the information about affecteddatabase links from the SYS.LINK$ table, so that you can recreate the database linksafter the downgrade.Following script can be used to construct the dblink.SELECTcreate ||DECODE(U.NAME,PUBLIC,public )||database link ||CHR(10)||DECODE(U.NAME,PUBLIC,Null, U.NAME||.)|| L.NAME||chr(10)||connect to || L.USERID || identified by ||L.PASSWORD|| using || L.host || ||chr(10)||; TEXTFROM sys.link$ L,sys.user$ UWHERE L.OWNER# = U.USER# ;Step 5:
  4. 4. This step is only required for TIMESTAMP WITH TIMEZONE Datatype. Else skip toSTEP 6Please this step is only required for the 10gR1 that may affect existing data ofTIMESTAMP WITH TIME ZONE datatype.For example, if users enter TIMESTAMP 2003-02-17 09:00:00 America/Sao_Paulo, weconvert the data to UTC based on the transition rules in the time zone file and store themon the disk. So 2003-02-17 11:00:00 along with the time zone id forAmerica/Sao_Paulo is stored because the offset for this particular time is -02:00. Nowthe transition rules are modified and the offset for this particular time is changed to -03:00. when users retrieve the data, they will get 2003-02-17 08:00:00America/Sao_Paulo. There is one hour difference compared to the original value.Change to the temporary directory that you copied files to in Step 1.Start SQL*Plus and connect to the database instance as a user with SYSDBA privileges.Then run and spool the utltzuv2.sql file.$ sqlplus /as sysdbaSQL> spool TimeZone_Info.logSQL> @utltzuv2.sqlSQL> spool offIf the utltzuv2.sql script identifies columns with time zone data affected by a databaseupgrade, then use the solution to solve this problem.create tables with the time zone information in character format (for example,TO_CHAR(column, YYYY-MM-DD HH24.MI.SSXFF TZR), and recreate theTIMESTAMP data from these tables after the upgrade.For example, user scott has a table tztab:create table tztab(x number primary key, y timestamp with time zone);insert into tztab values(1, timestamp );Before upgrade, you can create a table tztab_back, note column y here is defined asVARCHAR2 to preserve the original value.create table tztab_back(x number primary key, y varchar2(256));insert into tztab_back select x,to_char(y, YYYY-MM-DD HH24.MI.SSXFF TZR) from tztab;After upgrade, you need update the data in the table tztab using the value in tztab_back.update tztab t set t.y = (select to_timestamp_tz(t1.y,YYYY-MM-DD HH24.MI.SSXFF TZR) from tztab_back t1 where t.x=t1.x);Step 6:Starting in Oracle 9i the National Characterset (NLS_NCHAR_CHARACTERSET) will
  5. 5. be limited to UTF8 and AL16UTF16. Any other NLS_NCHAR_CHARACTERSET will nolonger be supported.For more details, refer to Note 276914.1 "The National Character Set in Oracle 9i and10g"NOTE: If you are upgrading from Oracle9i to 10g, skip to step 7.When upgrading from Oracle8i to 10g the value of NLS_NCHAR_CHARACTERSET isbased on value currently used in the Oracle8i version.If the NLS_NCHAR_CHARACTERSET is UTF8 then new it will stay UTF8. In all othercases the NLS_NCHAR_CHARACTERSET is changed to AL16UTF16 and -if used- N-type data (= data in columns using NCHAR, NVARCHAR2 or NCLOB ) may need to beconverted.The change itself is done in step 38 by running the upgrade script.To check whether there are any N-type objects in a database, run the following query: select distinct OWNER, TABLE_NAME from DBA_TAB_COLUMNS where DATA_TYPE in (NCHAR,NVARCHAR2, NCLOB) and OWNER not in (SYS,SYSTEM,XDB);If no rows are returned it should mean that the database is not using N-type columns foruser data, so simply go to the next step.If you have N-type columns for user data then run the following query:SQL> select * from nls_database_parameters where parameter=NLS_NCHAR_CHARACTERSET;If you are using N-type columns AND your National Characterset is UTF8 or is in thefollowing list:JA16SJISFIXED , JA16EUCFIXED , JA16DBCSFIXED , ZHT32TRISFIXEDKO16KSC5601FIXED , KO16DBCSFIXED , US16TSTFIXED , ZHS16CGB231280FIXEDZHS16GBKFIXED , ZHS16DBCSFIXED , ZHT16DBCSFIXED , ZHT16BIG5FIXEDZHT32EUCFIXEDthen also simply go to point next step. The conversion of the user data itself will then bedone in step 38If you are using N-type columns AND your National Characterset is NOT UTF8 or NOTin the following list:JA16SJISFIXED , JA16EUCFIXED , JA16DBCSFIXED , ZHT32TRISFIXEDKO16KSC5601FIXED , KO16DBCSFIXED , US16TSTFIXED , ZHS16CGB231280FIXEDZHS16GBKFIXED , ZHS16DBCSFIXED , ZHT16DBCSFIXED , ZHT16BIG5FIXEDZHT32EUCFIXED
  6. 6. (your current NLS_NCHAR_CHARACTERSET is for example US7ASCII,WE8ISO8859P1, CL8MSWIN1251 ...)then you have to: • change the tables to use CHAR, VARCHAR2 or CLOB instead the N-type or • use export/import the table(s) containing N-type column and truncate those tables before migrating to 10gThe recommended NLS_LANG during export is simply the NLS_CHARACTERSET, notthe NLS_NCHAR_CHARACTERSETStep 7:When upgrading to Oracle Database 10g, optimizer statistics are collected for dictionarytables that lack statistics. This statistics collection can be time consuming for databaseswith a large number of dictionary tables, but statistics gathering only occurs for thosetables that lack statistics or are significantly changed during the upgrade.To decrease the amount of downtime incurred when collecting statistics, you can collectstatistics prior to performing the actual database upgrade.As of Oracle Database 10g Release 10.1, Oracle recommends that you use theDBMS_STATS.GATHER_DICTIONARY_STATS procedure to gather these statistics.You can enter the following:$ sqlplus /as sysdbaSQL> EXEC DBMS_STATS.GATHER_DICTIONARY_STATS;For Oracle8i and Oracle9i, use the DBMS_STATS.GATHER_SCHEMA_STATSprocedure to gather statistics.Backup the existing statistics as follows:$ sqlplus /as sysdbaSQL>spool sdictSQL>grant analyze any to sys;SQL>exec dbms_stats.create_stat_table(SYS,dictstattab);SQL>exec dbms_stats.export_schema_stats(WMSYS,dictstattab,statown => SYS);SQL>exec dbms_stats.export_schema_stats(MDSYS,dictstattab,statown => SYS);SQL>exec dbms_stats.export_schema_stats(CTXSYS,dictstattab,statown => SYS);SQL>exec dbms_stats.export_schema_stats(XDB,dictstattab,statown => SYS);SQL>exec dbms_stats.export_schema_stats(WKSYS,dictstattab,statown => SYS);SQL>exec dbms_stats.export_schema_stats(LBACSYS,dictstattab,statown => SYS);
  7. 7. SQL>exec dbms_stats.export_schema_stats(OLAPSYS,dictstattab,statown => SYS);SQL>exec dbms_stats.export_schema_stats(DMSYS,dictstattab,statown => SYS);SQL>exec dbms_stats.export_schema_stats(ODM,dictstattab,statown => SYS);SQL>exec dbms_stats.export_schema_stats(ORDSYS,dictstattab,statown => SYS);SQL>exec dbms_stats.export_schema_stats(ORDPLUGINS,dictstattab,statown => SYS);SQL>exec dbms_stats.export_schema_stats(SI_INFORMTN_SCHEMA,dictstattab,statown => SYS);SQL>exec dbms_stats.export_schema_stats(OUTLN,dictstattab,statown => SYS);SQL>exec dbms_stats.export_schema_stats(DBSNMP,dictstattab,statown => SYS);SQL>exec dbms_stats.export_schema_stats(SYSTEM,dictstattab,statown => SYS);SQL>exec dbms_stats.export_schema_stats(SYS,dictstattab,statown => SYS);SQL>spool offThis data is useful if you want to revert back the statisticsFor example, the following PL/SQL subprograms import the statistics for the SYSschema after deleting the existing statistics:exec dbms_stats.delete_schema_stats(SYS);exec dbms_stats.import_schema_stats(SYS,dictstattab);To gather statistics run this script, connect to the database AS SYSDBA using SQL*Plus.$ sqlplus /as sysdbaSQL>spool gdictSQL>grant analyze any to sys;SQL>exec dbms_stats.gather_schema_stats(WMSYS,options=>GATHER,estimate_percent => DBMS_STATS.AUTO_SAMPLE_SIZE,-method_opt => FOR ALL COLUMNS SIZE AUTO, cascade => TRUE);EXEC DBMS_STATS.gather_schema_stats(MDSYS,DBMS_STATS.AUTO_SAMPLE_SIZE);SQL>exec dbms_stats.gather_schema_stats(MDSYS, cascade => TRUE ,options=>GATHER,estimate_percent => DBMS_STATS.AUTO_SAMPLE_SIZE,method_opt => FOR ALL COLUMNS SIZE AUTO );SQL>exec dbms_stats.gather_schema_stats(CTXSYS,options=>GATHER,estimate_percent => DBMS_STATS.AUTO_SAMPLE_SIZE,- method_opt => FOR ALL COLUMNS SIZE AUTO, cascade => TRUE);SQL>exec dbms_stats.gather_schema_stats(XDB,options=>GATHER,estimate_percent => DBMS_STATS.AUTO_SAMPLE_SIZE,- method_opt => FOR ALL COLUMNS SIZE AUTO, cascade => TRUE);SQL>exec dbms_stats.gather_schema_stats(WKSYS,options=>GATHER,estimate_percent => DBMS_STATS.AUTO_SAMPLE_SIZE,- method_opt => FOR ALL COLUMNS SIZE AUTO, cascade => TRUE);SQL>exec dbms_stats.gather_schema_stats(LBACSYS,options=>GATHER,estimate_percent => DBMS_STATS.AUTO_SAMPLE_SIZE,- method_opt => FOR ALL COLUMNS SIZE AUTO, cascade => TRUE);SQL>exec dbms_stats.gather_schema_stats(OLAPSYS,options=>GATHER,estimate_percent => DBMS_STATS.AUTO_SAMPLE_SIZE,- method_opt => FOR ALL COLUMNS SIZE AUTO, cascade => TRUE);SQL>exec dbms_stats.gather_schema_stats(DMSYS,options=>GATHER,estimate_percent => DBMS_STATS.AUTO_SAMPLE_SIZE,
  8. 8. - method_opt => FOR ALL COLUMNS SIZE AUTO, cascade => TRUE);SQL>exec dbms_stats.gather_schema_stats(ODM,options=>GATHER,estimate_percent => DBMS_STATS.AUTO_SAMPLE_SIZE,- method_opt => FOR ALL COLUMNS SIZE AUTO, cascade => TRUE);SQL>exec dbms_stats.gather_schema_stats(ORDSYS,options=>GATHER,estimate_percent => DBMS_STATS.AUTO_SAMPLE_SIZE,- method_opt => FOR ALL COLUMNS SIZE AUTO, cascade => TRUE);SQL>exec dbms_stats.gather_schema_stats(ORDPLUGINS,options=>GATHER,estimate_percent => DBMS_STATS.AUTO_SAMPLE_SIZE,- method_opt => FOR ALL COLUMNS SIZE AUTO, cascade => TRUE);SQL>exec dbms_stats.gather_schema_stats(SI_INFORMTN_SCHEMA,options=>GATHER,estimate_percent => DBMS_STATS.AUTO_SAMPLE_SIZE,- method_opt => FOR ALL COLUMNS SIZE AUTO, cascade => TRUE);SQL>exec dbms_stats.gather_schema_stats(OUTLN,options=>GATHER,estimate_percent => DBMS_STATS.AUTO_SAMPLE_SIZE,- method_opt => FOR ALL COLUMNS SIZE AUTO, cascade => TRUE);SQL>exec dbms_stats.gather_schema_stats(DBSNMP,options=>GATHER,estimate_percent => DBMS_STATS.AUTO_SAMPLE_SIZE,- method_opt => FOR ALL COLUMNS SIZE AUTO, cascade => TRUE);SQL>exec dbms_stats.gather_schema_stats(SYSTEM,options=>GATHER,estimate_percent => DBMS_STATS.AUTO_SAMPLE_SIZE,- method_opt => FOR ALL COLUMNS SIZE AUTO, cascade => TRUE);SQL>exec dbms_stats.gather_schema_stats(SYS,options=>GATHER,estimate_percent => DBMS_STATS.AUTO_SAMPLE_SIZE,- method_opt => FOR ALL COLUMNS SIZE AUTO, cascade => TRUE);SQL>spool offStep 8:Check for invalid objects in the database:SQL> col OBJECT format A30SQL> col OWNER format A20SQL> col type format A15spool invalid_pre.lstselect substr(owner,1,12) owner,substr(object_name,1,30) object,substr(object_type,1,30) type, status fromdba_objects where status <> VALID;spool offRun the following script as a user with SYSDBA privs using SQL*Plus and then requeryinvalid objects:% sqlplus /as sysdbaSQL> @?/rdbms/admin/utlrp.sqlThis last query will return a list of all objects that cannot be recompiled before theupgrade in the file invalid_pre.lst
  9. 9. If you are upgrading from Oracle9iR2 (9.2), verify that the view dba_registry containsdata. If the view is empty, run the following scripts from the 9.2 home:% sqlplus /as sysdbaSQL> @?/rdbms/admin/catalog.sqlSQL> @?/rdbms/admin/catproc.sqlSQL> @?/rdbms/admin/utlrp.sqland verify that the dba_registry view now contains data.Step 9:Check for corruption in the dictionary, use the following commands in sqlplus connectedas sys:Set verify offSet space 0Set line 120Set heading offSet feedback offSet pages 1000Spool analyze.sqlSelect Analyze cluster "||cluster_name||" validate structure cascade;from dba_clusterswhere owner=SYSunionSelect Analyze table "||table_name||" validate structure cascade;from dba_tableswhere owner=SYS and partitioned=NO and (iot_type=IOT or iot_type is NULL)unionSelect Analyze table "||table_name||" validate structure cascade into invalid_rows;from dba_tableswhere owner=SYS and partitioned=YES;spool offThis creates a script called analyze.sql.Now execute the following steps.$ sqlplus /as sysdbaSQL> @$ORACLE_HOME/rdbms/admin/utlvalid.sqlSQL> @analyze.sqlThis script (analyze.sql) should not return any errors.Step 10:Ensure that all Snapshot refreshes are successfully completed, and that replication isstopped.
  10. 10. $ sqlplus / as sysdbaSQL> select distinct(trunc(last_refresh)) from dba_snapshot_refresh_times;Step 11:Stop the listener for the database:$ lsnrctlLSNRCTL> stopEnsure no files need media recovery:$ sqlplus / as sysdbaSQL> select * from v$recover_file;This should return no rows.Step 12:Ensure no files are in backup mode:SQL> select * from v$backup where status!=NOT ACTIVE;This should return no rows.Step 13:Resolve any outstanding unresolved distributed transaction:SQL> select * from dba_2pc_pending;If this returns rows you should do the following:SQL> select local_tran_id from dba_2pc_pending;SQL> execute dbms_transaction.purge_lost_db_entry();SQL> commit;Step 14:Disable all batch and CRON jobs.Step 15:Ensure the users sys and system have system as their default tablespace.SQL> select username, default_tablespace from dba_userswhere username in (SYS,SYSTEM);To modify use:
  11. 11. SQL> alter user sys default tablespace SYSTEM;SQL> alter user system default tablespace SYSTEM;Step 16:Ensure that the aud$ is in the system tablespace when auditing is enabled.SQL> select tablespace_name from dba_tables where table_name=AUD$;Step 17:Note down where all control files are located.SQL> select * from v$controlfile;Step 18:If table XDB.MIGR9202STATUS exists in the database, drop it before upgrading thedatabase (to avoid the issue described in Note 356082.1)Step 19:Shutdown the database$ sqlplus /as sysdbaSQL> shutdown immediate;Step 20:Perform a full cold backup: 1. If using SQL*BT, execute ora_adm_ 2. (or an online backup using RMAN)You can either do this by manually copying the files or sign on to RMAN:$ rman "target / nocatalog"And issue the following RMAN commands:RUN{ALLOCATE CHANNEL chan_name TYPE DISK;BACKUP DATABASE FORMAT some_backup_directory%U TAG before_upgrade;BACKUP CURRENT CONTROLFILE TO save_controlfile_location;}Upgrading to the New Oracle Database 10g Release 2Step 21:
  12. 12. Update the init.ora file:- Make a backup of the old init.ora file- Copy it from the old (pre-10.2) ORACLE_HOME to the new (10.2) ORACLE_HOME On Unix/Linux, the default location of the file is the $ORACLE_HOME/dbs directory- Comment out any obsoleted parameters (listed in appendix A).- Change all deprecated parameters (listed in appendix B).- Set the COMPATIBLE initialization parameter to an appropriate value. If you areupgrading from 8.1.7.4 then set the COMPATIBLE parameter to 9.2.0 until after theupgrade has been completed successfully. If you are upgrading from 9.2.0 or 10.1.0then leave the COMPATIBLE parameter set to its current value until the upgradehas been completed successfully. This will avoid any unnecessary ORA-942 errorsfrom being reported in SMON trace files during the upgrade (because the upgradeis looking for 10.2 objects that have not yet been created)- If you have the parameter NLS_LENGTH_SEMANTICS currently set to CHAR, changethe value (NOT Reqd)to BYTE during the upgrade (to avoid the issue described in Note 4638550.8)- Verify that the parameter DB_DOMAIN is set properly. OK- Make sure the PGA_AGGREGATE_TARGET initialization parameter is set toat least 24 MB. (pga_aggregate_target = 26214400)- Ensure that the SHARED_POOL_SIZE and the LARGE_POOL_SIZE are at least150Mb. shared_pool_size = 157286400Please also the check the "KNOWN ISSUES" section- Make sure the JAVA_POOL_SIZE initialization parameter is set to at least 150 MB.java_pool_size = 157286400- Ensure there is a value for DB_BLOCK_SIZE- Comment out any existing AQ_TM_PROCESSES and JOB_QUEUE_PROCESSESparameter settings, and add new lines in the init.ora/spfile.ora that explicitly setAQ_TM_PROCESSES=0 and JOB_QUEUE_PROCESSES=0 for the duration of theupgrade. The "startup upgrade" command (see step 30) should ensure that these settingsare used, but its worth making sure.- If you have defined an UNDO tablespace, set the parameterUNDO_MANAGEMENT=AUTO (otherwise, either unset the parameter or explicitly setit to MANUAL). See Note 135090.1 for further information about the Automatic UndoManagement feature.- Make sure all path names in the parameter file are fully specified. You should not haverelative path names in the parameter file.
  13. 13. - If you are using a cluster database, set the parameter CLUSTER_DATABASE=FALSEduring the upgrade.- If you are upgrading a cluster database, then modify the initdb_name.ora file in thesame way that you modified the parameter file.Step 22 :Check for adequate freespace on archive log destination file systems.Step 23 :Ensure the NLS_LANG variable is set correctly:$ env | grep $NLS_LANGStep 24:If needed copy the SQL*Net files like (listener.ora, tnsnames.ora etc) to the new location(when no TNS_ADMIN env. Parameter is used)$ cp $OLD_ORACLE_HOME/network/admin/*.ora /network/adminStep 25: [Applicable only for Windows O/s] Skip to Step 26If your Operating system is Windows (NT, 2000, XP or 2003) delete your services Withthe ORADIM of your old oracle version.Stop the OracleServiceSID Oracle service of the database you are upgrading, where SIDis the instance name. For example, if your SID is ORCL, then enter the following at acommand prompt:C:> NET STOP OracleServiceORCLFor Oracle 8.0 this is:C:ORADIM80 -DELETE -SIDFor Oracle 8i or higher this is:C:ORADIM -DELETE -SIDAlso create the new Oracle Database 10gR2 service at a command prompt using theORADIM command of the new Oracle Database release:C:> ORADIM -NEW -SID SID -INTPWD PASSWORD -MAXUSERS USERS-STARTMODE AUTO -PFILE ORACLE_HOMEDATABASEINITSID.ORAStep 26:Copy configuration files from the ORACLE_HOME of the database being upgraded tothe new Oracle Database 10g ORACLE_HOME:
  14. 14. If your parameter file resides within the old environments ORACLE_HOME, then copyit to the new ORACLE_HOME. By default, Oracle looks for the parameter file inORACLE_HOME/dbs on UNIX platforms and in ORACLE_HOMEdatabaseon Windows operating systems. The parameter file can reside anywhere you wish, but itshould not reside in the old environments ORACLE_HOME after you upgrade to OracleDatabase 10g.If your parameter file is a text-based initialization parameter file with either an IFILE(include file) or a SPFILE (server parameter file) entry, and the file specified in theIFILE or SPFILE entry resides within the old environments ORACLE_HOME, thencopy the file specified by the IFILE or SPFILE entry to the new ORACLE_HOME. Thefile specified in the IFILE or SPFILE entry contains additional initialization parameters.If you have a password file that resides within the old environments ORACLE_HOME,then move or copy the password file to the new Oracle Database 10g ORACLE_HOME.The name and location of the password file are operating system-specific.On UNIX platforms, the default password file is ORACLE_HOME/dbs/orapwsid.If you are upgrading a cluster database and your initdb_name.ora file resides within theold environments ORACLE_HOME, then move or copy the initdb_name.ora file to thenew ORACLE_HOME.Note:If you are upgrading a cluster database, then perform this step on all nodes in which thiscluster database has instances configured.Step 27:Update the oratab entry, to set the new ORACLE_HOME and disable automatic startup:SID:ORACLE_HOME:NStep 28:Update the environment variables like ORACLE_HOME and PATH$. OraenvStep 29:Make sure the following environment variables point to the new release (10g)directories:- ORACLE_HOME- PATH- ORA_NLS10- ORACLE_BASE- LD_LIBRARY_PATH- LD_LIBRARY_PATH_64 (Solaris only)
  15. 15. - LIBPATH (AIX only)- SHLIB_PATH (HPUX only)- ORACLE_PATH$ env | grep ORACLE_HOME$ env | grep PATH$ env | grep ORA_NLS10$ env | grep ORACLE_BASE$ env | grep LD_LIBRARY_PATH$ env | grep ORACLE_PATHNote that the ORA_NLS10 environment variable replaces the ORA_NLS33 environmentvariable, so you should unset ORA_NLS33 and set ORA_NLS10.As per Note 77442.1, you should set ORA_NLS10 to point to$ORACLE_HOME/nls/dataStep 30:Startup upgrade the database:$ cd $ORACLE_HOME/rdbms/admin$ sqlplus / as sysdbaUse Startup with the UPGRADE option:SQL> startup upgradeStep 31:Create a SYSAUX tablespace. In Oracle Database 10g, the SYSAUX tablespace is used toconsolidate data from a number of tablespaces that were separate in previous releases.The SYSAUX tablespace must be created with the following mandatory attributes:- ONLINE- PERMANENT- READ WRITE- EXTENT MANAGEMENT LOCAL- SEGMENT SPACE MANAGEMENT AUTOThe Upgrade Information Tool(utlu102i.sql in step 4) provides an estimate of theminimum required size for the SYSAUX tablespace in the SYSAUX Tablespace section.The following SQL statement would create a 500 MB SYSAUX tablespace for thedatabase:SQL> CREATE TABLESPACE sysaux DATAFILE sysaux01.dbf SIZE 500M REUSEEXTENT MANAGEMENT LOCALSEGMENT SPACE MANAGEMENT AUTOONLINE;Step 32:
  16. 16. NOTE: Before performing the next action, disable any third party procedures that checkthe complexity of schema passwords. During the upgrade, new schemas may becreated and these may initially have an insecure password (but only for a very shortperiod of time, because the SQL script that creates the new schema will then immediatelyexpire the password and lock the schema). If procedures are in place to enforce passwordcomplexity, the "create user" statement may fail and cause configuration of acomponent to fail.Run the catupgrd.sql script, spooling the output so you can check whether any errorsoccurred and investigate them:SQL> spool upgrade.logSQL> @catupgrd.sqlThe catupgrd.sql script determines which upgrade scripts need to be run and then runseach necessary script. You must run the script in the new release 10.2 environment.The upgrade script creates and alters certain data dictionary tables.It also upgrades and configures the following database components in the new release10.2 database (if the components were installed in the database before the upgrade).Oracle Database Catalog ViewsOracle Database Packages and TypesJServer JAVA Virtual MachineOracle Database Java PackagesOracle XDKOracle Real Application ClustersOracle Workspace ManagerOracle interMediaOracle XML DatabaseOLAP Analytic WorkspaceOracle OLAP APIOLAP CatalogOracle TextSpatialOracle Data MiningOracle Label SecurityMessaging GatewayExpression FilterOracle Enterprise Manager RepositoryTurn off the spooling of script results to the log file:SQL> SPOOL OFFThen, check the spool file and verify that the packages and procedures compiledsuccessfully. You named the spool file earlier in this step; the suggested name wasupgrade.log. Correct any problems you find in this file and rerun the appropriateupgrade script if necessary. You can rerun any of the scripts described in this note asmany times as necessary.
  17. 17. Step 33:Run utlu102s.sql, specifying the TEXT option:SQL> @utlu102s.sql TEXTThis is the Post-upgrade Status Tool displays the status of the database components inthe upgraded database. The Upgrade Status Tool displays output similar to thefollowing:Oracle Database 10.2 Upgrade Status Utility 04-20-2005 05:18:40Component Status Version HH:MM:SSOracle Database Server VALID 10.2.0.1.0 00:11:37JServer JAVA Virtual Machine VALID 10.2.0.1.0 00:02:47Oracle XDK VALID 10.2.0.1.0 00:02:15Oracle Database Java Packages VALID 10.2.0.1.0 00:00:48Oracle Text VALID 10.2.0.1.0 00:00:28Oracle XML Database VALID 10.2.0.1.0 00:01:27Oracle Workspace Manager VALID 10.2.0.1.0 00:00:35Oracle Data Mining VALID 10.2.0.1.0 00:15:56Messaging Gateway VALID 10.2.0.1.0 00:00:11OLAP Analytic Workspace VALID 10.2.0.1.0 00:00:28OLAP Catalog VALID 10.2.0.1.0 00:00:59Oracle OLAP API VALID 10.2.0.1.0 00:00:53Oracle interMedia VALID 10.2.0.1.0 00:08:03Spatial VALID 10.2.0.1.0 00:05:37Oracle Ultra Search VALID 10.2.0.1.0 00:00:46Oracle Label Security VALID 10.2.0.1.0 00:00:14Oracle Expression Filter VALID 10.2.0.1.0 00:00:16Oracle Enterprise Manager VALID 10.2.0.1.0 00:00:58Note - in RAC environments, this script may suggest that the status of the RACcomponent is INVALID when in actual fact it is VALID (as shown in the output fromDBA_REGISTRY)NOTE: As per Note 456845.1, the output from the utlu102s.sql script may differ fromthe output from DBA_REGISTRY. To check the current status of each component, runthe following SQL statement:SQL> select comp_name, status, version from dba_registry;Step 34:Restart the database:SQL> shutdown immediate (DO NOT use "shutdown abort" !!!)SQL> startup restrictExecuting this clean shutdown flushes all caches, clears buffers and performs otherdatabase housekeeping tasks.
  18. 18. This is needed if you want to upgrade specific components.Step 35:Run olstrig.sql to re-create DML triggers on tables with Oracle Label Security policies.This step is only necessary if Oracle Label Security is in your database.(Check from Step 33).SQL> @olstrig.sqlStep 36:Run utlrp.sql to recompile any remaining stored PL/SQL and Java code.SQL> @utlrp.sqlVerify that all expected packages and classes are valid:If there are still objects which are not valid after running the script run the following:spool invalid_post.lstSelect substr(owner,1,12) owner,substr(object_name,1,30) object,substr(object_type,1,30) type, statusfromdba_objects where status <>VALID;spool offNow compare the invalid objects in the file invalid_post.lst with the invalid objects inthe file invalid_pre.lst you create in step 9.NOTE: If you have upgraded from version 9.2 to version 10.2 and find that the followingviews are invalid, the views can be safely ignored (or dropped):SYS.V_$KQRPDSYS.V_$KQRSDSYS.GV_$KQRPDSYS.GV_$KQRSDNOTE: If you have used OPatch to apply a CPU patch to the 10.2.0.x home, you nowneed to follow the post-installation steps in the README file of the CPU patch to applythe CPU patch to the upgraded database. This normally means running the catcpu.sqlscript.After Upgrading a DatabaseStep 37:Shutdown the database and startup the database.
  19. 19. % sqlplus /as sysdba SQL> shutdown SQL> startup restrictStep 38:Complete the Step 38 only if you upgraded your database from release 8.1.7Otherwise skip to Step 40.A) If you are not using N-type columns for user data, ie. the query select distinct OWNER, TABLE_NAME from DBA_TAB_COLUMNS where DATA_TYPE in (NCHAR,NVARCHAR2, NCLOB) and OWNER not in (SYS,SYSTEM,XDB);did not return rows in Step 6 of this note then: % sqlplus /as sysdba SQL> shutdown immediateand go to step 40.B) IF your version 8 NLS_NCHAR_CHARACTERSET was UTF8:You can look up your previous NLS_NCHAR_CHARACTERSET using this select: select * from nls_database_parameters where parameter=NLS_SAVED_NCHAR_CS;then: % sqlplus /as sysdba SQL> shutdown immediateand go to step 40.C) IF you are using N-type columns for *user* data *AND* your previousNLS_NCHAR_CHARACTERSET was in the following list:JA16SJISFIXED , JA16EUCFIXED , JA16DBCSFIXED , ZHT32TRISFIXEDKO16KSC5601FIXED , KO16DBCSFIXED , US16TSTFIXED , ZHS16CGB231280FIXEDZHS16GBKFIXED , ZHS16DBCSFIXED , ZHT16DBCSFIXED , ZHT16BIG5FIXEDZHT32EUCFIXEDthen the N-type columns *data* need to be converted to AL16UTF16:To upgrade user tables with N-type columns to AL16UTF16 run the script utlnchar.sql: % sqlplus /as sysdba
  20. 20. SQL> @utlnchar.sql SQL> shutdown immediate;go to step 40.D) IF you are using N-type columns for *user* data *AND * your previousNLS_NCHAR_CHARACTERSET was *NOT* in the following list:JA16SJISFIXED , JA16EUCFIXED , JA16DBCSFIXED , ZHT32TRISFIXEDKO16KSC5601FIXED , KO16DBCSFIXED , US16TSTFIXED , ZHS16CGB231280FIXEDZHS16GBKFIXED , ZHS16DBCSFIXED , ZHT16DBCSFIXED , ZHT16BIG5FIXEDZHT32EUCFIXEDthen import the data exported in point 8 of this note. The recommended NLS_LANGduring import is simply the NLS_CHARACTERSET, not theNLS_NCHAR_CHARACTERSETAfter the import: % sqlplus /as sysdba SQL> shutdown immediate;go to step 40.Step 39:If your database has TIMESTAMP WITH TIMEZONE data, you must update the data sothat it is converted and stored based on the new time zone rules that come with theupgrade. (Step 6).If you used the export utility to export a copy of the affected tables, you should now usethe import utility to import your data from these tables back into your database. Theimport utility will update the timestamp data as it imports.If you used the manual script method, you will need to update the affected timestampdata based on your backed up table. For example, if you previously backed up your table,you need to run an update statement similar to the one below to update your timestampdata.UPDATE tztab t SET t.y =(SELECT to_timestamp_tz(t1.y,YYYY-MM-DD HH24.MI.SSXFF TZR)FROM tztab_back t1WHERE t.x=t1.x);Step 40:Now edit the init.ora:- If you changed the value for NLS_LENGTH_SEMANTICS from CHAR to BYTE prior tothe upgrade (see step 21), set it back to CHAR. Otherwise, do not change the value of theparameter to CHAR without careful evaluation and testing. Switching to CHAR
  21. 21. semantics can break application code. See Note 144808.1 for further information aboutthe usage of this parameter.- If you changed the value for CLUSTER_DATABASE from TRUE to FALSE prior to theupgrade, set it back to TRUEStep 41:Startup the database:SQL> startupCreate a server parameter file with a initialization parameter fileSQL> create spfile from pfile;This will create a spfile as a copy of the init.ora file located in the$ORACLE_HOME/dbs directory.Step 42:Modify the listener.ora file:For the upgraded intstance(s) modify the ORACLE_HOME parameter to point to thenew ORACLE_HOME.Step 43:Start the listener$ lsnrctlLSNRCTL> startStep 44:Enable cron and batch jobsStep 45:Change oratab entry to use automatic startupSID:ORACLE_HOME:YStep 46: Only if using Oracle Cluster Registry [Else skip to Step 47]Upgrade the Oracle Cluster Registry (OCR) Configuration.If you are using Oracle Cluster Services, then you must upgrade the Oracle ClusterRegistry (OCR)keys for the database.* Use srvconfig from the 10g ORACLE_HOME. For example:% srvconfig -upgrade -dbname <db_name> -orahome <pre-10g_Oracle_home>If the output from the $ORACLE_HOME/bin/ocrdump command references the pre-10g home, it may be necessary to do the following:
  22. 22. From the pre-10g home, run the command:% svrctl remove database -d <db_name>From the 10g home, run the commands:% srvctl add database -d <db_name> -o <10g_Oracle_home>% srvctl add instance -d <db_name> -i <instance1_name> -n <node1>% srvctl add instance -d <db_name> -i <instance2_name> -n <node2>Step 47:Use the DBMS_STATS package to gather new statistics for your user objects. Usingstatistics collected from a previous Oracle version may lead CBO to generate less optimalexecution plans.References:Note 114671.1 "Gathering Statistics for the Cost Based Optimizer"Note 262592.1 "How to tune your Database after Migration/Upgrade"Step 48: Only for EM Grid control – Else you have completed the Upgrade to10g Enterprise Manager Grid Control (EMGC) will show that the upgraded database does nothave an inventory. To re-discover the database, do the following:1. Go to EMGC => Targets => Databases2. Select the upgraded database and remove it3. Click "Add", enter the name of the host and click "Continue" to allow EMGC to re-discoverthe database in the correct home with the correct inventoryUseful Hints** Upgrading With Read-Only and Offline TablespacesThe Oracle database can read file headers created prior to Oracle 10g, so you do not needto do anything to them during the upgrade. The only exception to this is if you want totransport tablespaces created prior to Oracle 10g, to another platform. In this case, thefile headers must be made read-write at some point before the transport. However, thereare no special actions required on them during the upgrade.The file headers of offline datafiles are updated later when they are brought online, andthe file headers of read-only tablespaces are updated if and when they are made read-write sometime after the upgrade. In any other circumstance, read-only tablespacesnever have to be made read-write.
  23. 23. It is a good idea to OFFLINE NORMAL all tablespaces except for SYSTEM and thosecontaining rollback/UNDO tablespace prior to migration. This way if migration fails onlythe SYSTEM and rollback datafiles need to be restored rather than the entire database.Note: You must OFFLINE the TABLESPACE as migrate does not allow OFFLINE files inan ONLINE tablespace.Note: If you are upgrading from Oracle9i, the CWMLITE tablespace (which containsOLAP objects) will need to be ONLINE during the upgrade (so that the OLAP objects canbe upgraded to 10g and moved to the SYSAUX tablespace)** Converting Databases to 64-bit Oracle Database SoftwareIf you are installing 64-bit Oracle Database 10g software but were previously using a 32-bit Oracle Database installation, then the databases will automatically be converted to64-bit during the upgrade to Oracle Database 10g except when upgrading from Release 1(10.1) to Release 2 (10.2).The process is not automatic for the release 1 to release 2 upgrade, but is automatic forall other upgrades. This is because the utlip.sql script is not run during the release 1 torelease 2 upgrade to invalid all PL/SQL objects. You must run the utlip.sql script as thelast step in the release 10.1 environment, before upgrading to release 10.2.** If error occurs while executing the catupgrd.sqlIf an error occurs during the running of the catupgrd.sql script, once the problem is fixedyou can simply rerun the catupgrd.sql script to finish the upgrade process and completethethe upgrade process.Appendix A: Initialization Parameters Obsolete in 10gENQUEUE_RESOURCESDBLINK_ENCRYPT_LOGINHASH_JOIN_ENABLEDLOG_PARALLELISMMAX_ROLLBACK_SEGMENTSMTS_CIRCUITSMTS_DISPATCHERSMTS_LISTENER_ADDRESSMTS_MAX_DISPATCHERSMTS_MAX_SERVERSMTS_MULTIPLE_LISTENERSMTS_SERVERSMTS_SERVICEMTS_SESSIONSOPTIMIZER_MAX_PERMUTATIONSORACLE_TRACE_COLLECTION_NAMEORACLE_TRACE_COLLECTION_PATHORACLE_TRACE_COLLECTION_SIZEORACLE_TRACE_ENABLE
  24. 24. ORACLE_TRACE_FACILITY_NAMEORACLE_TRACE_FACILITY_PATHPARTITION_VIEW_ENABLEDPLSQL_NATIVE_C_COMPILERPLSQL_NATIVE_LINKERPLSQL_NATIVE_MAKE_FILE_NAMEPLSQL_NATIVE_MAKE_UTILITYROW_LOCKINGSERIALIZABLETRANSACTION_AUDITINGUNDO_SUPPRESS_ERRORSAppendix B: Initialization Parameters Deprecated in 10gLOGMNR_MAX_PERSISTENT_SESSIONSMAX_COMMIT_PROPAGATION_DELAYREMOTE_ARCHIVE_ENABLESERIAL_REUSESQL_TRACEBUFFER_POOL_KEEP (replaced by DB_KEEP_CACHE_SIZE)BUFFER_POOL_RECYCLE (replaced by DB_RECYCLE_CACHE_SIZE)GLOBAL_CONTEXT_POOL_SIZELOCK_NAME_SPACELOG_ARCHIVE_STARTMAX_ENABLED_ROLESPARALLEL_AUTOMATIC_TUNINGPLSQL_COMPILER_FLAGS (replaced by PLSQL_CODE_TYPE and PLSQL_DEBUG)Known issues1) While doing a upgrade from 9iR2 to 10.2.0.X.X, on running the utlu102i.sql script asdirected in step 2Its output informs to add streams_pool_size=50331648 to the init.ora file. While addingthe parameter Oracle gives streams_pool_size as invalid parameter.STREAMS_POOL_SIZE, was introduced in release 10gR1. This message may be ignoredfor database version 9iR2 or less2) One of the customer has reported on keeping the shared_pool_size at 150 MB,catmeta.sql fails with insuffient shared memory during the processing of viewKU$_PHFTABLE_VI.Please set the shared_pool_size at 200M.3) While upgrade following error was encountered.create or replace*ERROR at line 1:ORA-06553: PLS-213: package STANDARD not accessible.ORA-00955: name is already used by an existing object
  25. 25. Please make sure to set the following init parameters as below in the spfile/init file orcomment them out to their default values, at the time of upgrading the database.PLSQL_V2_COMPATIBILITY = FALSEPLSQL_CODE_TYPE = INTERPRETED # Only applicable to 10gR1PLSQL_NATIVE_LIBRARY_DIR = ""PLSQL_NATIVE_LIBRARY_SUBDIR_COUNT = 0Refer to Note 170282.1 PLSQL_V2_COMPATIBLITY=TRUE causes STANDARD andDBMS_STANDARD to Error at Compile@Always disconnect from the session which issues the STARTUP and connect as a freshsession before doing any further SQL. eg: On upgrade to 10.2 startup the instance withthe upgrade option, exit sqlplus , reconnect a fresh SQLPLUS session as SYSDBA andthen run the upgrade scripts.Revision HistorySupport have been asked to include this new section in the note. It is not possible toprovide a completely accurate revision history because many changes have been madesince the note was first created in 2005 but, now that this section exists, Support willkeep it up-to-date.18-JUL-2005Article created31-JUL-2005Article published24-JAN-2007- Explicitly set AQ_TM_PROCESSES=0 in init.ora (step 21)29-JAN-2007- V_$ and GV_$ views can be dropped (step 36)03-DEC-2007- Drop table XDB.MIGR9202STATUS from the OLD home (step 18)- Full cold backup OR an online backup using RMAN (step 20)05-FEB-2008- Added reference to Note 406472.1 in the list of prerequisites- N-type columns in tables owned by XDB can be ignored (step 6)
  26. 26. - Add workaround to ORA-1403 from utlu102i.sql (step 2)- Added reference to Note 471479.1 in the list of prerequisites27-FEB-2008- Added some further commands to step 46- Added a step about gathering new statistics (step 47)- Added a reference to Note 407031.1 in step 2- Added advice regarding ORA_NLS10 (step 29)- Skip step 6 if upgrading from 9.x to 10.2- Keep CWMLITE tablespace online (useful hints)- Check that DBA_REGISTRY contains data (step 8)- Added reference to Note 465951.1 in the list of prerequisites- Use GATHER_SCHEMA_STATS in 8i and 9i (step 7)18-APR-2008- Added this “Revision History” section to the note- Clarified when to set UNDO_MANAGEMENT=AUTO in step 21- Added reference to Note 135090.1 in step 21- Added reference to Note 293658.1 in the list of prerequisites- Added reference to Note 316900.1 in the list of prerequisites- Added reference to Note 466181.1 in the list of prerequisites- Added reference to Note 557242.1 in the list of prerequisites- Added some info to step 36 about running catcpu.sql if a CPU patch is applied to thehome- Explicitly set JOB_QUEUE_PROCESSES=0 in init.ora (step 21)- Added a step about discovering the upgraded database in EMGC (step 48)21-APR-2008- Added a note suggesting that password complexity checking procedures are disabled(step 32)- Added a warning about using NLS_LENGTH_SEMANTICS=CHAR (step 40)29-SEP-2008- Added reference to Note 565600.1 in the list of prerequisites- Added reference to Note 603714.1 in the list of prerequisites- Added reference to Note 456845.1 in step 33- Clarified step 21ReferencesNote 135090.1 - Managing Rollback/Undo Segments in AUM (Automatic UndoManagement)Note 159657.1 - Complete Upgrade Checklist for Manual Upgrades from 8.X / 9.0.1 toOracle9iR2 (9.2.0)Note 170282.1 - PLSQL_V2_COMPATIBLITY=TRUE causes STANDARD andDBMS_STANDARD to Error at CompileNote 263809.1 - Complete checklist for manual upgrades to 10gR1 (10.1.0.x)
  27. 27. Note 293658.1 - 10.1 or 10.2 Patchset Install Getting ORA-29558 JAccelerator (NCOMP)And ORA-06512Note 316900.1 - ALERT: Oracle 10g Release 2 (10.2) Support Status and AlertsNote 356082.1 - ORA-7445 [qmeLoadMetadata()+452] During 10.1 to 10.2 UpgradeNote 406472.1 - Mandatory Patch 5752399 for 10.2.0.3 on Solaris 64-bit and FilesystemsManaged By Veritas or Solstice Disk Suite softwareNote 407031.1 - ORA-01403 no data found while running utlu102i.sql/utlu102x.sql on8174 databaseNote 412271.1 - ORA-600 [22635] and ORA-600 [KOKEIIX1] Reported WhileUpgrading Or Patching Databases To 10.2.0.3Note 456845.1 - UTLU102S.SQL May Show Different Results Than Select FromDBA_REGISTRYNote 465951.1 - ORA-600 [kcbvmap_1] or Ora-600 [Kcliarq_2] On Startup UpgradeMoving From a 32-Bit To 64-Bit ReleaseNote 466181.1 - 10g Upgrade CompanionNote 471479.1 - IOT Corruptions After Upgrade from COMPATIBLE <= 9.2 toCOMPATIBLE >= 10.1Note 557242.1 - Upgrade Gives Ora-29558 Error Despite of JAccelerator Has BeenInstalledNote 565600.1 - ERROR IN CATUPGRD: ORA-00904 IN DBMS_SQLPANote 603714.1 - 10.2.0.4 Catupgrd.sql Fails With ORA-03113 CreatingSYS.KU$_XMLSCHEMA_VIEWOracle Database Upgrade Guide 10g Release 2 (10.2) Part Number B14238-01http://download.oracle.com/docs/cd/B19306_01/server.102/b14238/toc.htmKeywordsUPGRADE~TO~10GR2 ; NCOMP ; UPGRADE~FROM~8.1.7 ; UPGRADE~FROM~9.2.0; UPGRADE~TO~10.2.0 ; UPGRADE~FROM~8.1.7.4 ; UPGRADE~TO~10GR2 ;

×