误删除oracle数据文件时的恢复方法

作者:wendy | 创建时间: 2023-06-26
当误删除oracle数据文件后,文件系统上虽然看不到被删除的数据文件了,但仍可以通过prmscan工具扫描底层磁盘上的oracle数据块,并将这些数据块重组以达到数据恢复的目的。 prmscan 适用于以下的场景: 误手动删除了文件系统(任...
误删除oracle数据文件时的恢复方法

操作方法

例如下面的例子中linux上/u01文件系统挂载点对应/dev/sdb1分区,该文件系统挂载点下的oracle数据文件被维护人员误操作删除了。 这里我们使用prmscan的扫描oracle数据文件块和合并功能,从损坏的文件系统中直接将数据文件都重组出来。

扫描整个磁盘 [oracle@dbdao01 ~]$ java -jar PRMScan.jar –scan /dev/sdb1 –guess 8k –scan 选项代表扫描 /dev/sdb1 设备,并指定Oracle blocksize 为8k

[oracle@dbdao01 ~]$ java -jar PRMScan.jar –outputsh ./8kfull.txt –outputsh 代表写出一个可以合并已扫描到信息的SHELL文件 即这里的8kfull.txt

[oracle@dbdao01 ~]$ sh 8kfull.txt 执行8kfull.txt即可以 在当前目录下生成所有需要合并的数据文件 如下 [oracle@dbdao01 ~]$ ls -ll PD* -rw-r–r– 1 oracle oinstall  295428096 Jul 28 00:37 PD_DBF1.dbf -rw-r–r– 1 oracle oinstall   83427328 Jul 28 00:37 PD_DBF2.dbf -rw-r–r– 1 oracle oinstall  220266496 Jul 28 00:37 PD_DBF3.dbf -rw-r–r– 1 oracle oinstall 1324482560 Jul 28 00:38 PD_DBF4.dbf

使用PRM-DUL扫描这些数据文件

核对恢复到sqlldr导入文件中的恢复数据量

点击展开全文

更多推荐