在open狀態下恢復未備份的資料檔案
此文講述如何恢復未備份的資料檔案,在歸檔日誌模式,如果dba增加了新的資料檔案,當沒有備份新的資料檔案,那麼該檔案出現損壞時,可以恢復該資料檔案。前提是 從建立新的資料檔案到丟失為止的所有歸檔日誌必須全部存在。
一 模擬實驗環境。在資料檔案test 裡建立t1表 並插入資料,提交,歸檔日誌檔案。
SQL> create table t(num number) tablespace test;
表已建立。
SQL> insert into t values(1);
已建立 1 行。
SQL> commit;
提交完成。
SQL> alter system switch logfile;
系統已更改。
SQL> insert into t values(2);
已建立 1 行。
SQL> commit;
提交完成。
SQL> alter system switch logfile;
系統已更改。
SQL> insert into t values(3);
已建立 1 行。
SQL> commit;
提交完成。
SQL> alter system switch logfile;
系統已更改。
SQL> insert into t values(4);
已建立 1 行。
SQL> commit;
提交完成。
SQL> alter system switch logfile;
系統已更改。
模擬資料檔案丟失。
SQL> host del f:\lib\test.dbf
SQL> shutdown immediate
資料庫已經關閉。
已經解除安裝資料庫。
ORACLE 例程已經關閉。
二 實施恢復。
SQL> startup
ORACLE 例程已經啟動。
Total System Global Area 535662592 bytes
Fixed Size 1334380 bytes
Variable Size 130024340 bytes
Database Buffers 398458880 bytes
Redo Buffers 5844992 bytes
資料庫裝載完畢。
ORA-01157: 無法標識/鎖定資料檔案 6 - 請參閱 DBWR 跟蹤檔案
ORA-01110: 資料檔案 6: 'F:\LIB\TEST.DBF'
2)使資料檔案離線。
SQL> alter database datafile 6 offline;
資料庫已更改。
3)開啟資料庫。
SQL> alter database open;
資料庫已更改。
4)重建資料檔案,在執行恢復命令之前,首先需要複製資料檔案的備份,但該檔案沒有備份,所以只能用alter database create datafile命令重建資料檔案。
SQL> alter database create datafile 'f:\lib\test.dbf';
資料庫已更改。
5)恢復資料檔案。
SQL> recover datafile 'f:\lib\test.dbf';--也可以用recover datafile 6;
ORA-00279: 更改 2325010 (在 05/09/2010 21:06:57 生成) 對於執行緒 1 是必需的
ORA-00289: 建議: F:\APP\YANG\ARCHIVE2\53_1_715961434.LOG
ORA-00280: 更改 2325010 (用於執行緒 1) 在序列 #53 中
指定日誌: {
auto
ORA-00279: 更改 2326948 (在 05/09/2010 21:27:02 生成) 對於執行緒 1 是必需的
ORA-00289: 建議: F:\APP\YANG\ARCHIVE2\54_1_715961434.LOG
ORA-00280: 更改 2326948 (用於執行緒 1) 在序列 #54 中
ORA-00279: 更改 2328241 (在 05/09/2010 21:40:37 生成) 對於執行緒 1 是必需的
ORA-00289: 建議: F:\APP\YANG\ARCHIVE2\55_1_715961434.LOG
ORA-00280: 更改 2328241 (用於執行緒 1) 在序列 #55 中
ORA-00279: 更改 2329131 (在 05/09/2010 21:48:01 生成) 對於執行緒 1 是必需的
ORA-00289: 建議: F:\APP\YANG\ARCHIVE2\56_1_715961434.LOG
ORA-00280: 更改 2329131 (用於執行緒 1) 在序列 #56 中
已應用的日誌。
完成介質恢復。---意味著恢復成功了
最後,驗證一下。
SQL> alter database datafile 6 online;
資料庫已更改。
SQL> select * from t;
NUM
----------
1
2
3
4
恢復成功,,,,
需要注意的是 此情況只適用於歸檔模式。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/22664653/viewspace-662459/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 備份與恢復:polardb資料庫備份與恢復資料庫
- 怎樣恢復Mac檔案及資料夾資料?BackupLoupe for mac(資料恢復備份助手)3.5.4Mac資料恢復
- RMAN備份恢復典型案例——資料檔案存在壞快
- XFS檔案系統的備份、恢復、修復
- 資料庫資料恢復—無備份,binlog未開啟的Mysql資料庫資料恢復案例資料庫資料恢復MySql
- 如何恢復在全備後新增了資料檔案的資料庫資料庫
- Linux下MySQL資料庫的備份與恢復LinuxMySql資料庫
- 資料庫備份恢復資料庫
- 從備份片中恢復某個指定得歸檔或者資料檔案
- gitlab的資料備份和恢復Gitlab
- 12 使用RMAN備份和恢復檔案
- 檔案的基本管理和XFS檔案系統備份恢復
- Mysql資料備份與恢復MySql
- Linux中XFS檔案系統的備份,恢復,修復Linux
- SqlServer資料庫恢復備份資料的方法SQLServer資料庫
- 如何恢復Hyper Backup備份的資料
- PostgreSql資料庫的備份和恢復SQL資料庫
- Oracle 之利用BBED修改資料塊SCN----沒有備份資料檔案的資料恢復Oracle資料恢復
- Oracle使用備份檔案集恢復歸檔日誌Oracle
- 實戰:xfs檔案系統的備份和恢復
- Mysql資料庫備份及恢復MySql資料庫
- 達夢資料庫備份恢復資料庫
- RabbitMQ如何備份與恢復資料MQ
- 磁碟資料恢復及備份工具資料恢復
- postgresql備份與恢復資料庫SQL資料庫
- 讀資料保護:工作負載的可恢復性04備份與檔案負載
- 【儲存資料恢復】WAFL檔案系統下raid資料恢復案例資料恢復AI
- Oracle-無備份情況下,如何手動恢復控制檔案Oracle
- 如何從Active Backup for Business備份中恢復檔案
- 如何備份及恢復Linux檔案許可權Linux
- RAC備份恢復之Voting備份與恢復
- 資料庫備份與恢復技術資料庫
- Mongo 資料庫備份和恢復命令Go資料庫
- pg_dump 備份,恢復資料庫資料庫
- linux下恢復誤刪除oracle的資料檔案LinuxOracle
- 備份與恢復:Polardb資料庫資料基於時間點恢復資料庫
- 【資料庫資料恢復】透過恢復NDF檔案修復資料庫的資料恢復過程資料庫資料恢復
- 帝國cms備份和恢復 帝國cms恢復資料
- 【資料庫資料恢復】EXT3檔案系統下MYSQL資料庫恢復案例資料庫資料恢復MySql