前几天看了dave大神的一篇博文,介绍的方法很有用途,在此记录下。
使用操作系统rm-rf 命令删除了数据文件,因为是linux系统,系统会先把数据文件读入到内存,然后在内存操作,虽然磁盘文件丢失,但是我们可以把内存缓存的文件给拷贝回来,从而达到恢复数据文件的目的。
检查dbwr的进程PID:
[oracle@dg1 trace]$ ps -ef|grep dbw0|grep-v grep
oracle 9964 1 0 00:49 ? 00:00:03 ora_dbw0_dave
[oracle@dg1 trace]$ cd /proc/9964/fd
这里的259 就是我们删掉的数据文件。
//直接cp该句柄文件名回原位置:
[oracle@dg1 fd]$ cp 259/u01/dropspace01.dbf