專案需將部署了 Advanced Replication(高級複製)環境的資料庫跨平台遷移。資料量不大、停機窗口充裕,但複製環境包含主站點與物化視圖站點,遷移後必須確保複製機制仍正常運作。本文以「物化視圖站點遷移」為例,記錄完整測試流程。
RAC1.US.ORACLE.COM(單實例,非 RAC)TESTMV.US.ORACLE.COMTESTMV(全新環境,用於導入測試)註:資料庫名稱 RAC1 為歷史殘留,實際為單實例環境。
Advanced Replication 的系統物件(內部表、觸發器、作業、封裝等)分散於 SYS、SYSTEM、REPADMIN 等多個 Schema。若採用 Schema 級或 Table 級導出,極大機率遺漏複製相關的系統物件,導致目標端複製環境損壞。因此 強制採用 FULL=Y 全庫模式。
-- 在主站點 RAC1 建立測試用戶與表
CONN SYSTEM/TEST@RAC1
CREATE USER YANGTK IDENTIFIED BY YANGTK DEFAULT TABLESPACE NDMAIN;
GRANT CONNECT, RESOURCE TO YANGTK;
CONN YANGTK/YANGTK@RAC1
CREATE TABLE T (ID NUMBER, NAME VARCHAR2(30));
後續將在主站點建立複製群組、部署物化視圖日誌與物化視圖,再於物化視圖站點執行導出,於目標端導入,驗證複製連結是否自動恢復。
exp userid=system/manager full=y file=mv_site.dmp log=mv_exp.logimp userid=system/manager full=y file=mv_site.dmp log=mv_imp.log ignore=yDBA_REPGROUP、DBA_REPSITES、DBA_MVIEW_LOGS、DBA_MVIEWS 等視圖,確認複製群組狀態為 NORMAL,物化視圖可正常刷新。NLS_LANG 設定)REMAP_TABLESPACE(Data Pump 才支援,傳統 IMP 需手動建表空間)REPADMIN)密碼需一致,否則導入後複製作業無法啟動