首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> Oracle 資料庫 >> Oracle 資料庫基礎

Oracle 9.2.0.6 升級至 10.2.0.2 完整操作手冊

     編輯:Oracle 資料庫基礎

升級前準備

  1. 安裝 Oracle 10g Release 2 (10.2.0.1) 軟體至新 ORACLE_HOME
  2. 套用 10.2.0.2 Patch Set (編號視平台而定)
  3. 完整備份資料庫 (RMAN 熱備份或冷備份)

執行 Pre-Upgrade 資訊收集

啟動 9i 資料庫,以 SYSDBA 執行 10g ORACLE_HOME/rdbms/admin/utlu102i.sql:

SQL> SPOOL info.log
SQL> @utlu102i.sql
SQL> SPOOL OFF

關鍵檢查項目 (以實際 log 為例)

類別發現事項需採取行動
參數調整shared_pool_size 需 ≥ 177,861,837修改 pfile/spfile
參數調整java_pool_size 需 ≥ 67,108,864修改 pfile/spfile
新參數streams_pool_size 未定義,需 ≥ 50,331,648新增參數
參數調整session_max_open_files 需 ≥ 20新增參數
廢棄參數hash_join_enabled, log_archive_start註解或移除
表空間SYSTEM ≥ 248MB, TEMP ≥ 58MB (含自動擴展 18MB)確認足夠
新表空間需建立 SYSAUX ≥ 500MB升級過程中建立
統計資訊SYS 結構描述統計過舊升級前收集統計
角色警告CONNECT 角色權限將縮減為僅 CREATE SESSION評估應用影響

參數檔修改範例

將 9i pfile 複製至 10g 目錄並修改:

-- 修改前關鍵參數
*.shared_pool_size=50331648
*.java_pool_size=0
*.hash_join_enabled=TRUE
*.log_archive_start=true
*.log_archive_format='%s.arc'
*.log_archive_dest='D:\oracle\archive'

-- 修改後
*.shared_pool_size=177861837
*.java_pool_size=67108864
# *.hash_join_enabled=TRUE          -- 廢棄參數註解
# *.log_archive_start=true          -- 廢棄參數註解
# *.log_archive_format='%s.arc'     -- 改用 LOG_ARCHIVE_DEST_n
# *.log_archive_dest='D:\oracle\archive'
*.streams_pool_size=50331648
*.session_max_open_files=20
*.compatible='9.2.0.0.0'            -- 升級完成後再調為 10.2.0

升級執行步驟

  1. 建立 10g Listener:執行 Net Configuration Assistant 產生 listener.ora
  2. RMAN 完整備份
  3. 停止並刪除 9i 服務:
    C:\> oradim -DELETE -SID ZHANGYE
  4. 建立 10g 服務:
    C:\> oradim -NEW -SID ZHANGYE -MAXUSERS 10 -STARTMODE AUTO -PFILE D:\Oracle10g\database\INITzhangye.ORA
  5. UPGRADE 模式啟動資料庫:
    SQL> STARTUP UPGRADE
  6. 建立 SYSAUX 表空間:
    CREATE TABLESPACE sysaux 
    DATAFILE 'D:\oracle\oradata\zhangye\sysaux01.dbf' 
    SIZE 500M REUSE 
    EXTENT MANAGEMENT LOCAL 
    SEGMENT SPACE MANAGEMENT AUTO 
    ONLINE;
  7. 執行升級腳本:
    SQL> SPOOL upgrade.log
    SQL> @?/rdbms/admin/catupgrd.sql
    SQL> @utlu102s.sql      -- 檢查升級結果
    SQL> SPOOL OFF

    若 upgrade.log 有錯誤,處理後重跑 catupgrd.sql。

  8. 重啟資料庫並編譯無效物件:
    SQL> SHUTDOWN IMMEDIATE
    SQL> STARTUP PFILE=D:\Oracle10g\database\INITzhangye.ORA
    SQL> @?/rdbms/admin/utlrp.sql
    
    -- 驗證無效物件
    SQL> SELECT COUNT(*) FROM dba_objects WHERE status='INVALID';
    -- 應回傳 0

升級後驗證清單

  • compatible 參數調整為 10.2.0
  • 收集全資料庫統計資訊 (DBMS_STATS.GATHER_DATABASE_STATS)
  • 檢查應用程式連線與功能測試
  • 建立新備份基準點

參考文件:Oracle Database Upgrade Guide 10g Release 2 (10.2) Part Number B14238-01

注意:生產環境升級前務必在測試環境完整演練,並制定詳細回滾方案。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved