ORACLE9I升級到10G

okzhixiang發表於2007-10-21
ORACLE9I升級到10G[@more@]
ORACLE9I升級到10G的簡要說明:
Win下Oracle9208如何升級到Oracle10.2.0.1
1、 關閉原9208資料庫,執行一個完全冷備。
2、 安裝ORACLE10g,選擇一個跟9208不同的Home,安裝的時候選擇不裝資料庫。
3、 以SYSDBA身份登陸到SQLPLUS,執行:
Sql>spool upgrade.info
Sql>@ oracle10G_HOMErdbmsadminutlu102i.sql
Sql>spool off
注意螢幕的輸出
4、在Tablespace欄提示有些表空間需要額外的空間:
Autoextend Additional space required:165mb.
查詢原原資料庫的空間大小和剩餘空間。
Sql>select tablespace_name,bytes from dba_data_files;
Sql>select tablespace_name,sum(bytes) from dba_free_space group by tablespace_name;
擴充套件提示需增加空間的表空間。
Sql>alter database tablespace system add datafile
‘d:oracleoradatatestsystem02.dbf’ size 200m;
Sql>alter database datafile
‘d:oracleoradatatestxdb01.dbf’ resize 50m’;
4、 複製9i的initsid.ora檔案到10gHomedatabase目錄下。
執行選單下的Database Upgrade Assistant,根據提示一步一步操作。如不能成功,則手工升級,依次執行以下順序。
5、 複製9i的密碼檔案pwdsid.ora到10gHomedatabase目錄下。
6、 複製9iHomenetworkadmin下的tnsname.ora、listerna.ora、sqlnet.ora到10GHomenetworkadmin目錄。
7、 根據upgrade.info的提示,修改10GHomedatabaseinitSid.ora引數檔案。
8、 關閉9I資料庫
9、 在命令列用cmd>oradim –delete –sid sid刪除WINDOWS服務下的例項。
10、 在命令列用cmd.>oradim –new –sid sid pfile=’path’建立新的例項。
11、 停止原9i的listerner服務
12、 用sysdba的身份登陸到sqlplus,以upgrade的方式啟動資料庫。
Startup upgrade
啟動時提示LRM-00116: ‘D:ORACLELOGSDB後跟’=’出現語法錯誤
ORA-01078:處理系統引數失敗
根據提示,修改10GHomedatabaseinitsid.ora,將utl_file_dir=d:oraclelogs
註釋掉。重新執行sql>startup upgrade成功。
13、 建立sysaux表空間。
Sql>create tablespace sysaux
Datafile ‘d:oracleoradatatestsysaux01.dbf’ size 500m
Extent management local
Segment space management auto
Online;
15、@d:oracle10.2rdbmsadmincatupgrd.sql;(此過程在我電腦花費約1個半小時)。
16、sql>shutdown immediate;
17、sql>startup
18、sql>@d:oracle10.2rdbmsadminutlrp.sql
To recompile any invalid application object
執行完畢後執行查詢所有重新編譯錯誤
Sql> select * from utl_recomp_errors;

19、啟動10G的listerner服務
測試,升級完畢。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/7185924/viewspace-977936/,如需轉載,請註明出處,否則將追究法律責任。

相關文章