2024年11月Linux使用rm删除了数据库文件如何恢复?

发布时间:

  ⑴我们都知道Linux中的rm命令可用来删除文件,且删除的文件难以恢复,可是不小心删除了数据库文件,有没有办法恢复呢?别急,下面小编给大家介绍下Linux如何恢复rm删除的数据库文件,一起来了解下吧。

  ⑵.首先测试rm 误删除数据库文件

  ⑶[oracleprimary dbwdn]$ ll

  ⑷-rw-r----- oracle dba Nov : control.ctl

  ⑸-rw-r----- oracle dba Nov : control.ctl

  ⑹-rw-r----- oracle dba Nov : control.ctl

  ⑺-rw-r----- oracle dba Nov : ggs.dbf

  ⑻-rw-r----- oracle dba Nov : perfstat.dbf

  ⑼-rw-r----- oracle dba Nov : redo.log

  ⑽-rw-r----- oracle dba Nov : redo.log

  ⑾-rw-r----- oracle dba Nov : redo.log

  ⑿-rw-r----- oracle dba Nov : shkz_data_.dbf

  ⒀-rw-r----- oracle dba Nov : sysaux.dbf

  ⒁-rw-r----- oracle dba Nov : system.dbf

  ⒂-rw-r----- oracle dba Nov : temp.dbf

  ⒃-rw-r----- oracle dba Nov : test.dbf

  ⒄-rw-r----- oracle dba Nov : undotbs.dbf

  ⒅-rw-r----- oracle dba Nov : users.dbf

  ⒆[oracleprimary dbwdn]$ rm test.dbf

  ⒇.找到数据库后台进程dbw

  ⒈oracle : ? :: ora_dbw_dbwdn

  ⒉.找到被误删除的数据库文件

  ⒊[oracleprimary dbwdn]$ ll /proc//fd

  ⒋lr-x------ oracle oinstall Nov : -》 /dev/null

  ⒌lr-x------ oracle oinstall Nov : -》 /dev/null

  ⒍lr-x------ oracle oinstall Nov : -》 /dev/zero

  ⒎lr-x------ oracle oinstall Nov : -》 /dev/zero

  ⒏lr-x------ oracle oinstall Nov : -》 /u/app/oracle/product/../db_/rdbms/mesg/oraus.msb

  ⒐lrwx------ oracle oinstall Nov : -》 /u/app/oracle/product/../db_/dbs/hc_dbwdn.dat

  ⒑lrwx------ oracle oinstall Nov : -》 /u/app/oracle/product/../db_/dbs/lkDBWDN

  ⒒lrwx------ oracle oinstall Nov : -》 /u/app/oracle/oradata/dbwdn/control.ctl

  ⒓lrwx------ oracle oinstall Nov : -》 /u/app/oracle/oradata/dbwdn/control.ctl

  ⒔lrwx------ oracle oinstall Nov : -》 /u/app/oracle/oradata/dbwdn/control.ctl

  ⒕lrwx------ oracle oinstall Nov : -》 /u/app/oracle/oradata/dbwdn/system.dbf

  ⒖lrwx------ oracle oinstall Nov : -》 /u/app/oracle/oradata/dbwdn/undotbs.dbf

  ⒗lr-x------ oracle oinstall Nov : -》 /dev/null

  ⒘lrwx------ oracle oinstall Nov : -》 /u/app/oracle/oradata/dbwdn/sysaux.dbf

  ⒙lrwx------ oracle oinstall Nov : -》 /u/app/oracle/oradata/dbwdn/users.dbf

  ⒚lrwx------ oracle oinstall Nov : -》 /u/app/oracle/oradata/dbwdn/test.dbf (deleted

  ⒛lrwx------ oracle oinstall Nov : -》 /u/app/oracle/oradata/dbwdn/ggs.dbf

  ①lrwx------ oracle oinstall Nov : -》 /u/app/oracle/oradata/dbwdn/perfstat.dbf

  ②lrwx------ oracle oinstall Nov : -》 /u/app/oracle/oradata/dbwdn/shkz_data_.dbf

  ③lrwx------ oracle oinstall Nov : -》 /u/app/oracle/oradata/dbwdn/temp.dbf

  ④lr-x------ oracle oinstall Nov : -》 /u/app/oracle/product/../db_/rdbms/mesg/oraus.msb

  ⑤lr-x------ oracle oinstall Nov : -》 /dev/null

  ⑥lr-x------ oracle oinstall Nov : -》 /dev/null

  ⑦l-wx------ oracle oinstall Nov : -》 /u/app/oracle/admin/dbwdn/udump/dbwdn_ora_.trc

  ⑧l-wx------ oracle oinstall Nov : -》 /u/app/oracle/admin/dbwdn/bdump/alert_dbwdn.log

  ⑨lrwx------ oracle oinstall Nov : -》 /u/app/oracle/product/../db_/dbs/hc_dbwdn.dat

  ⑩l-wx------ oracle oinstall Nov : -》 /u/app/oracle/admin/dbwdn/bdump/alert_dbwdn.log

  Ⅰ误删除之后,数据库没有重启,系统也没用重启

  Ⅱ.拷贝数据库文件

  Ⅲ[oracleprimary ~]$ cp /proc//fd/ /u/app/oracle/oradata/dbwdn/test.dbf

  Ⅳ[oracleprimary ~]$ cd /u/app/oracle/oradata/dbwdn

  Ⅴ[oracleprimary dbwdn]$ ls

  Ⅵcontrol.ctl control.ctl perfstat.dbf redo.log shkz_data_.dbf system.dbf test.dbf users.dbf

  Ⅶcontrol.ctl ggs.dbf redo.log redo.log sysaux.dbf temp.dbf undotbs.dbf

  Ⅷ数据库文件找回来了。

  Ⅸ.恢复数据库文件

  Ⅹ[oracleprimary dbwdn]$ sqlplus “/as sysdba”

  ㈠SQL*Plus: Release .... - Production on Tue Nov ::

  ㈡Copyright (c , , Oracle. All Rights Reserved.

  ㈢Connected to: