linux下恢復誤刪除的資料檔案
場景描述:作業系統級別的刪除資料檔案(/oracle/oradata/ora10g/app1.dbf),而且資料庫沒有崩潰,仍然處於open狀態。
原理:在Linux作業系統中,如果檔案從作業系統級別被刪除掉,之前開啟該檔案的程式仍然持有相應的檔案控制程式碼,所指向的檔案仍然可以讀 寫,並且該檔案的檔案描述符可以從/proc目錄中獲得。如果關閉資料庫,則控制程式碼就會丟失。
恢復步驟如下:
1,檢查dbwr的程式PID
$ ps -ef|grep dbw0|grep -v grep
2,dbwr會開啟所有資料檔案的控制程式碼。
在proc目錄中可以查到,目錄名是程式PID,fd表示檔案描述符
如圖:
[root@localhost fd]# ls -l
total 0
lrwx------ 1 oracle dba 64 Jan 3 18:35 23 -> /oracle/oradata/ora10g/example01.dbf
lrwx------ 1 oracle dba 64 Jan 3 18:35 24 -> /oracle/oradata/ora10g/test01.dbf
lrwx------ 1 oracle dba 64 Jan 3 18:35 25 -> /oracle/oradata/ora10g/app1.dbf (deleted)
lrwx------ 1 oracle dba 64 Jan 3 18:35 26 -> /oracle/oradata/ora10g/perfstat.dbf
lrwx------ 1 oracle dba 64 Jan 3 18:35 27 -> /oracle/oradata/ora10g/test02.dbf
lrwx------ 1 oracle dba 64 Jan 3 18:35 28 -> /oracle/oradata/ora10g/temp01.dbf
lrwx------ 1 oracle dba 64 Jan 3 18:35 29 -> /oracle/oradata/ora10g/temp02.dbf
紅色部分就是表示app1檔案已經被刪除了
3,直接拷貝控制程式碼到原來資料檔案的位置
host cp /proc/3591/fd/25 /oracle/oradata/ora10g/app1.dbf
4,恢復檔案
alter database datafile 7 offline;
recover datafile 7;
alter database datafile 7 online;來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/23073818/viewspace-714418/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- linux下恢復誤刪除oracle的資料檔案LinuxOracle
- Oracle資料恢復 - Linux / Unix 誤刪除的檔案恢復(轉)Oracle資料恢復Linux
- Oracle恢復誤刪除的資料檔案Oracle
- linux中誤刪除oracle資料檔案的恢復操作LinuxOracle
- 透過控制程式碼檔案恢復linux下誤刪除的資料檔案Linux
- linux中誤刪除oracle資料檔案的恢復操作(轉)LinuxOracle
- linux下 恢復被rm意外刪除資料檔案Linux
- linux系統下檔案誤刪除該如何恢復?Linux
- 誤刪除資料檔案、控制檔案的非RMAN恢復方法
- 使用檔案描述符恢復誤刪除的資料檔案
- 通過控制程式碼恢復Linux下誤刪除的資料庫資料檔案Linux資料庫
- 【伺服器資料恢復】Zfs檔案系統下誤刪除怎麼恢復資料伺服器資料恢復
- Linux下誤刪資料檔案從檔案控制程式碼恢復資料檔案Linux
- Linux下使用lsof恢復刪除的檔案Linux
- 使用lsof恢復誤刪除的檔案
- lsof恢復oracle誤刪除檔案Oracle
- 歸檔模式下,線上刪除資料檔案的完全恢復模式
- 【伺服器資料恢復】linux ext3檔案系統下誤刪除mysql資料庫的資料恢復案例伺服器資料恢復LinuxMySql資料庫
- 【資料庫資料恢復】LINUX環境下ORACLE資料庫誤刪除的資料恢復資料庫資料恢復LinuxOracle
- 資料檔案誤刪--但有資料檔案的copy恢復
- oracle恢復誤刪除資料Oracle
- RM 刪除資料檔案恢復操作
- ZT:使用lsof恢復誤刪除的檔案
- 【北亞資料恢復】zfs檔案系統的伺服器誤刪除的資料恢復資料恢復伺服器
- LINUX下資料被誤刪除、LINUX下資料被誤格式化後資料恢復Linux資料恢復
- 非歸檔模式下恢復利用offline drop命令誤刪除的資料檔案模式
- Linux下用rm刪除的檔案的恢復方法Linux
- 【北亞資料恢復】誤刪除oracle表和誤刪除oracle表資料的資料恢復方法資料恢復Oracle
- 恢復刪除的檔案
- 刪除檔案的恢復
- 恢復rm -f物理刪除資料檔案
- 恢復被rm意外刪除資料檔案
- 【伺服器資料恢復】LINUX誤刪除、格式化的資料恢復伺服器資料恢復Linux
- Linux恢復誤刪的資料Linux
- linux/uninx恢復刪除的檔案<轉>Linux
- solaris下使用lsof恢復刪除的檔案
- Oracle閃回刪除恢復誤刪資料Oracle
- MySQL誤刪物理檔案的恢復(Linux)MySqlLinux