ITPub博客

首页 > Linux操作系统 > Linux操作系统 > Oracle-AUL:黑夜前的最后救赎

Oracle-AUL:黑夜前的最后救赎

原创 Linux操作系统 作者:sunwei553722769 时间:2010-12-22 14:25:52 0 删除 编辑
  今天自己测试了一下工具AUL,在truncated表之后恢复数据,在此记录下来。
  在AUL官方网站有详细步骤http://www.dbatools.net/mydul/aul-example.html
 
  1.建立测试用的表空间TEST,建表TEST,插入1000条数据。
 
  2.TRUNCATE TABLE TEST后,TEST表数据全部清空。
 
  3.在Oracle目录中,我本地是D:\oracle_db\product\10.2.0\oradata\orcl,拷贝出来两个文件
     SYSTEM01.DBF--系统表空间数据文件,需要用它来确定哪个用户,哪个表
     TEST01.DBF--这个是前面建的测试表空间TEST的数据文件,表TEST的数据还存在这里面
  
  4.我们需要工具AUL来恢复TRUNCATE掉的数据,下载地址:http://www.dbatools.net/software/aul5.zip
 
  5.新建文件db10g.cfg,这个文件是为了告诉AUL具体的数据文件在哪里,内容为:
    #  FILE#   RFILE# NAME
   0        0     D:\oracle_db\product\10.2.0\oradata\orcl\SYSTEM01.DBF
   0        0     D:\oracle_db\product\10.2.0\oradata\orcl\TEST1.DBF
 
  6.进入AUL所在目录(数据文件和AUL.EXE放在同一个目录下面),在命令行输入AUL.EXE,然后依次敲入:
   UNLOAD TABLE USER$;
   UNLOAD TABLE OBJ$;
   UNLOAD TABLE TAB$;
   UNLOAD TABLE COL$;
   这样在目录下面会生成4个文件
 
  7.然后就是你需要恢复哪个表了,我的是
   unload table sunwei.test  to test.txt(sunwei是数据库用户名,test是表名,test.txt是数据文件)
 
  8,这样会在目录下面生成3个文件,分别是test.txt  TEST_sqlldr.ctl   TEST_syntax.sql
 
  9,打开命令行敲入:sqlldr sunwei/sunwei@//192.168.110.218:1521/orcl control=TEST_sqlldr.ctl,大功告成,再到数据库里查询,表test的数据已经恢复。
  
   最后注意一点,测试版AUL能恢复的数据最大为256M。  


   

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/24757413/viewspace-682380/ ,如需转载,请注明出处,否则将追究法律责任。

下一篇: Tomcat-加密数据源
请登录后发表评论 登录
全部评论

注册时间:2010-12-14

  • 博文量
    9
  • 访问量
    23460