首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫

Oracle 資料庫檔案遷移實戰:資料檔、控制檔、線上重做日誌

     編輯:Oracle 資料庫相關知識

一、資料檔遷移兩大法

方法 1:ALTER DATABASE(適用任何表空間)

  1. SHUTDOWN IMMEDIATE 關閉資料庫
  2. OS 層移動檔案:mv /old/path/file.dbf /new/path/
  3. STARTUP MOUNT 掛載資料庫
  4. ALTER DATABASE RENAME FILE '/old/path/file.dbf' TO '/new/path/file.dbf';
  5. ALTER DATABASE OPEN; 開啟驗證

方法 2:ALTER TABLESPACE(不適用 SYSTEM、含作用中回滾段/暫存段表空間)

  1. ALTER TABLESPACE ts_name OFFLINE;
  2. OS 層移動檔案
  3. ALTER TABLESPACE ts_name RENAME DATAFILE '/old/path/file.dbf' TO '/new/path/file.dbf';
  4. ALTER TABLESPACE ts_name ONLINE;

二、控制檔遷移

  1. SHUTDOWN IMMEDIATE
  2. OS 移動控制檔
  3. 修改 init.ora 的 control_files 參數
  4. STARTUP 驗證 SELECT NAME FROM V$CONTROLFILE;

三、線上重做日誌遷移

  1. SHUTDOWN IMMEDIATE
  2. OS 移動日誌檔
  3. STARTUP MOUNT
  4. ALTER DATABASE RENAME FILE '/old/log.rdo' TO '/new/log.rdo';
  5. ALTER DATABASE OPEN; 驗證 SELECT MEMBER FROM V$LOGFILE;

遷移核心原則

  • 所有作業皆在 MOUNT 階段或 OFFLINE 狀態下進行,保證控制檔與資料檔標頭一致。
  • 遷移後必須查詢 V$DATAFILE、V$CONTROLFILE、V$LOGFILE 確認狀態為 ONLINE / VALID。
  • 生產環境建議先在測試機演練,並備份控制檔與參數檔。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved