Windows升級到oracle 11g的異機物理升級文件(冷備)
說明
環境說明
整個異機遷移升級文件分為以下幾部分:
操作步驟 |
操作內容 |
Step 1 |
搭建目標環境(安裝 軟體) |
Step 2 |
生產庫預升級檢查 |
Step 3 |
目標環境確認 |
Step 4 |
目標庫正式升級 |
Step 5 |
目標庫升級後檢查 |
本文件省略目標環境 Oracle 11g Rdbms 搭建步驟,只說明在目標環境部署之後整個異機遷移升級的實施過程。
目標環境部署
在目標伺服器安裝 Oracle 11.2.0.4 資料庫軟體
➤ 在軟體安裝完成之後,手動建立監聽
生產庫預升級檢查
備份(冷備/ 熱備 )
若原地升級,強烈建議對生產庫進行全庫備份(冷備 / 熱備)。若採用異機遷移升級,(即原生產庫正常可用),則跳過此步。
歸檔空間分配
若資料庫處於歸檔模式,則需要預留足夠的歸檔日誌空間。若資料庫歸檔未開,則跳過此步。
回收站清理
清空資料庫回收站
SQL> PURGE DBA_RECYCLEBIN; |
收集資料字典統計資訊
SQL> EXEC dbms_stats.gather_dictionary_stats; |
檢查資料庫元件
系統元件狀態確認。若元件狀態均為 VALID ,
SQL> set line 200 SQL> select COMP_ID,COMP_NAME,VERSION,STATUS from dba_registry; |
系統物件狀態確認。若沒有返回記錄,則表示正常
SQL> select object_name,status from dba_objects where owner='SYS' and status<>'VALID'; |
統計資料庫無效物件
無效物件收集
sqlplus /as sysdba
SQL> spool off SQL> select count(*),status from dba_objects group by status; SQL> create table invalid_object_20170601 as select * from dba_objects where status<>’VALID’; |
無效物件編譯
SQL> @?/rdbms/admin/utlrp.sql |
檔案檢查
SQL> col file_name for a50 SQL> set line 200 SQL> select tablespace_name,file_name,bytes/1024/1024 M,status from dba_temp_files order by 1; |
檢查檔案備份模式
確認是否有檔案處於備份模式。若有,則調整;若沒有返回記錄則正常
SQL> SELECT * FROM v$backup WHERE status != 'NOT ACTIVE'; |
和System 重複物件檢查 檔案檢查
確認是否有以下 4 行紅色記錄返回,若是,則正常
SQL> select object_name, object_type from dba_objects where (object_name,object_type) in (select object_name,object_type from dba_objects where owner = 'SYS') and owner ='SYSTEM'; OBJECT_NAME OBJECT_TYPE ---------------------------------- ------------------- AQ$_SCHEDULES TABLE AQ$_SCHEDULES_PRIMARY INDEX DBMS_REPCAT_AUTH PACKAGE DBMS_REPCAT_AUTH PACKAGE BODY |
執行預升級檢查指令碼
從目標伺服器複製 $ORACLE_HOME/rdbms/admin/utlu112i.sql 至生產伺服器 C:\upgrade 資料夾下
手動執行預升級指令碼 C:\upgrade\utlu112i.sql
sqlplus / as sysdba SQL> spool upgeade_info.log SQL> @utlu112i.sql SQL> spool off |
注:不同資料庫,配置可能不同,輸出日誌也是各樣,根據預升級指令碼輸出日誌進行調整。
建立初始化引數檔案
引數檔案路徑、名稱均可自定義
SQL> create pfile='C:\upgrade\initorcl.ora' from spfile; |
停生產庫
由於需要複製資料檔案、聯機日誌檔案、控制檔案、臨時檔案至目標伺服器,確保資料一致,因此需要停生產庫
SQL> shutdown immediate; |
目標環境確認
軟體檢查
確認 Oracle 11.2.0.4 資料庫軟體安裝無誤
確認監聽已經配置並開啟
引數檔案複製
將 10g 軟體下 C:\upgrade\initorcl.ora 引數檔案複製至將 11g 軟體 $ORACLE_HOME\database
密碼檔案複製
將 10g 軟體 $ORACLE_HOME\database 下密碼檔案複製至將 11g 軟體 $ORACLE_HOME\database
資料檔案複製
將 10g 環境資料檔案複製至 11g 目標端指定位置(停機複製)
臨時檔案複製
將 10g 環境臨時檔案複製至 11g 目標端指定位置(停機複製)
聯機日誌檔案複製
將 10g 環境聯機日誌檔案複製至 11g 目標端指定位置(停機複製)
控制檔案複製
將 10g 環境控制檔案複製至 11g 目標端指定位置(停機複製)
注意:若目標端資料檔案、臨時檔案、聯機日誌檔案、控制檔案路徑與生產端不一致,則需手動修改 rename
修改引數檔案
引數模板
*.audit_file_dest='C:\app\Administrator\admin\xuh\adump' *.compatible='10.2.0.3.0' *.control_files='C:\app\Administrator\oradata\xuh\control01.ctl','C:\app\Administrator\oradata\xuh\control02.ctl','C:\app\Administrator\oradata\xuh\control03.ctl' *.core_dump_dest='C:\app\Administrator\admin\xuh\cdump' *.db_block_size=8192 *.db_domain='' *.db_file_multiblock_read_count=16 *.db_name='xuh' *.db_recovery_file_dest='C:\app\Administrator\recovery' *.db_recovery_file_dest_size=1073741824 *.dispatchers='(PROTOCOL=TCP) (SERVICE=xuhXDB)' *.job_queue_processes=10 *.nls_language='SIMPLIFIED CHINESE' *.nls_territory='CHINA' *.open_cursors=300 *.pga_aggregate_target=633339904 *.processes=150 *.remote_login_passwordfile='EXCLUSIVE' *.sga_target=1610612736 *.undo_management='AUTO' *.undo_tablespace='UNDOTBS1' *.diagnostic_dest='C:\app\Administrator' |
注意:
*.audit_file_dest
*.control_files
*.db_recovery_file_dest
以上三個引數需要修改成實際路徑
*.background_dump_dest
*.user_dump_dest
以上兩個引數合併成以下引數
*.diagnostic_dest=$ORACLE_BASE ( 修改成實際路徑 )
修改目標庫檔案路徑
若目標庫資料檔案、臨時檔案、聯機日誌檔案、控制檔案路徑與生產端不一致,則需手動修改。否則, 跳過 3.9 。
目標庫啟動至 mount 狀態
Sqlplus / as sysdba SQL> startup mount; |
批次查詢修改語句
資料檔案
SQL> Set line 200 SQL> Set pagesize 0 SQL> select 'alter database rename file '||''''||name||''''||' to '||''''||' 實際路徑 '||substr(name,instr(name,'\',-1)+1)||''';' from v$datafile; |
聯機日誌檔案
SQL> Set line 200 SQL> Set pagesize 0 SQL> select 'alter database rename file '||''''||member||''''||' to '||''''||' 實際路徑 '||substr(member,instr(member,'\',-1)+1)||''';' from v$logfile; |
臨時檔案
SQL> Set line 200 SQL> Set pagesize 0 SQL> select 'alter database rename file '||''''||name||''''||' to '||''''||' 實際路徑 '||substr(name,instr(name,'\',-1)+1)||''';' from v$tempfile; |
停目標庫
Sqlplus / as sysdba SQL> shutdown immediate; |
目標庫正式升級
以upgrade 模式啟動目標庫
在 Oracle 11g 環境下,以升級模式開啟目標庫
$sqlplus / as sysdba SQL> startup upgrade; |
執行升級指令碼
Sqlplus / as sysdba SQL> spool upgrade20170601.log SQL> @?/rdbms/admin/catupgrd.sql SQL> spool off SQL> shutdown immediate; # 若資料庫已經停止,則跳過此步 SQL> startup; SQL> @?/rdbms/admin/utlrp.sql |
該指令碼執行時間約為 2 小時
目標庫升級後檢查
檢查資料庫元件
系統元件狀態確認
SQL> col COMP_NAME for a60 SQL> set line 200 SQL> select COMP_ID,COMP_NAME,VERSION,STATUS from dba_registry; |
統計資料庫無效物件
無效物件收集
sqlplus /as sysdba SQL> select owner,object_name,object_type,status from dba_objects where status<>'VALID'; SQL> select count(*),status from dba_objects group by status; |
無效物件編譯
SQL> @?/rdbms/admin/utlrp.sql |
資料字典資訊收集
SQL> EXEC DBMS_STATS.GATHER_DICTIONARY_STATS; |
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/23732248/viewspace-2887211/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 靜默升級oracle 11g (從11.2.0.1升級到11.2.0.4)Oracle
- Oracle 11g升級到12COracle
- oracle 10 rac 升級 10.2.0.1升級到10.2.0.5Oracle
- 【Oracle升級】Oracle指令碼升級11g to 19c non-CDBOracle指令碼
- ORACLE10G升級11GOracle
- 連載三:Oracle升級文件大全Oracle
- Oracle database 升級(文件)to 10.2.0.4 from 10.2.0.1OracleDatabase
- mongodb單機從3.2升級到4.0.4升級MongoDB
- oracle rac 11.2.0.3 升級到11.2.0.4Oracle
- Oracle從10g升級到11g詳細步驟Oracle
- Windows 升級 powershellWindows
- windows10怎樣升級到10586_windows10電腦升級到10586詳細步驟Windows
- oracle資料庫11.2.0.3升級到11.2.0.4Oracle資料庫
- Linux 核心準備升級到 Rust 1.77LinuxRust
- win8如何升級到win10_windows8升級windows10怎麼弄Win10Windows
- Windows下升級JDKWindowsJDK
- windows下升級nodejsWindowsNodeJS
- Oracle 18C升級到19COracle
- Oracle 12C升級到18COracle
- 【備忘】EntityFramework 6 升級到 EntityFrameworkCore 注意點Framework
- 12. Oracle版本、補丁及升級——12.3. 升級Oracle
- ccproject升級到1135Project
- 如何升級電腦windows版本 windows系統版本升級方法介紹Windows
- Oracle 10.2.0.5升級至11.2.0.4Oracle
- A Oracle Data Guard Broker 升級和降級Oracle
- ABP Framework 手動升級指南:從6.0.1升級到7.0.0Framework
- ORACLE9I升級到10G(zt)Oracle
- 技術分享 | tidb 2.1升級到4.0操作文件TiDB
- Nacos 爆重大 Bug!!不要升級,不要升級,不要升級
- MySQL 5.7 升級到 8.0MySql
- Cocospod 升級到指定版本
- PHP版本升級:從php7.1升級到php7.2PHP
- 應用升級SpringCloud版本時的注意事項(Dalston升級到Edgware)SpringGCCloud
- Oracle 12c升級指南Oracle
- 【UP_ORACLE】Oracle 19c之從19.3升級到19.9Oracle
- windows下升級node&npmWindowsNPM
- Oracle 字符集從GBK升級到Utf8Oracle
- Truffle 2.0升級3.0升級指南