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

Oracle 歸檔模式下資料檔遺失無備份恢復實戰

     編輯:Oracle 資料庫基礎

情境

歸檔模式,新建表空間 testtbs、資料檔 testtbs.dbf。關機後誤刪資料檔,啟動報 ORA-01157、ORA-01110。該檔案無任何備份。

恢復步驟

-- 1. 將缺失檔案離線並捨棄
ALTER DATABASE DATAFILE 2 OFFLINE DROP;

-- 2. 開啟資料庫
ALTER DATABASE OPEN;

-- 3. 依資料字典重建資料檔
ALTER DATABASE CREATE DATAFILE 'D:\ORACLE\ORADATA\HAHA\TESTTBS.DBF';

-- 4. 執行介質恢復 (套用歸檔日誌)
RECOVER DATAFILE 2;

-- 5. 表空間上線
ALTER TABLESPACE testtbs ONLINE;

關鍵原理

  • OFFLINE DROP 告訴控制檔該檔案不再需要,允許資料庫開啟
  • CREATE DATAFILE 依字典資訊 (大小、AUTOEXTEND、MAXSIZE) 重建空檔案
  • RECOVER 從歸檔日誌重演所有變更,將空檔案恢復至最新狀態
  • 前提:必須為歸檔模式且具備完整歸檔日誌,否則無法恢復
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved