AUL6数据导出_sqlloader导入总结

时间:2024-10-21 16:30:09

1、创建AUL6的cfg配制文件,主要包括需要恢复的数据文件(必须包括system.dbf,否则即使AUL6恢复流程不报错,却不会导出文本数据),格式如下示:0 0 D:\AUL_TEST\SUN.DBF0 0 D:\AUL_TEST\SYSTEM01.DBF

2、将AUL导出的文本数据通过oracle的sqlloader装载入与要恢复表结果完全相同的一张临时表。导出文本格式如下示:7369|SMITH|CLERK|7902|1980-12-1700:00:00|800||207499|ALLEN|SALESMAN|7698|1981-02-2000:00:00|1600|300|307521|WARD|SALESMAN|7698|1981-02-2200:00:00|1250|500|307566|JONES|MANAGER|7839|1981-04-0200:00:00|2975||207654|MARTIN|SALESMAN|7698|1981-09-2800:00:00|1250|1400|307698|BLAKE|MANAGER|7839|1981-05-0100:00:00|2850||307782|CLARK|MANAGER|7839|1981-06-0900:00:00|2450||107788|SCOTT|ANALYST|7566|1987-04-1900:00:00|3000||207839|KING|PRESIDENT||1981-11-1700:00:00|5000||107844|TURNER|SALESMAN|7698|1981-09-0800:00:00|1500|0|307876|ADAMS|CLERK|7788|1987-05-2300:00:00|1100||207900|JAMES|CLERK|7698|1981-12-0300:00:00|950||307902|FORD|ANALYST|7566|1981-12-0300:00:00|3000||207934|MILLER|CLERK|7782|1982-01-2300:00:00|1300||10

3、通过核心主键字段做minus找出需要恢复的纪录,插入到新建的另外一张临时表中,脚本如下示:createtableorg_info_tempas(select*fromorg_info_bkt1wheret1.org_namein(selectt2.org_namefromorg_info_bkt2minus(selectt3.org_namefromorg_infot3)));

4、将校对出的丢失数据通过plsql导出成sql脚本,然后批量append插入到需要恢复的表中,当然最好事先做个数据库备份

5、心得体会:个人感觉此次恢复过程难度不大,细节很重要,如果不是分区表,表数据又很大,单单AUL6导出数据就需要不少时间,还有一个需要注意的东西就是sqlloader做批量导入时的文本格式,由其字段是日期格式的,处理过程中还发现AUL6导出文本数据时有时会漏了表最后几个字段值(如果是空的话)

6、分享:最后,和大家分享海伦.凯勒的一句话:一个人要想获得真才实学,必须自己去攀登奇峻险峰

© 手抄报圈