现在的位置: 首页 > 综合 > 正文

EXP/IMP使用技巧总结

2013年02月17日 ⁄ 综合 ⁄ 共 1997字 ⁄ 字号 评论关闭

1、 sys用户全库导出DDL,不导出数据

Exp_all_dll.bat

 

说明:sys用户as sysdba登录,要用单引号引起来,SID紧跟着用户名密码,as sysdba放其后;rowsN表示不导出数据,只导出数据库对象定义

2、  导出某个用户的表的前1000

Exp_query_like.bat

 

说明:做成BAT文件执行,一直闪,执行不了;在CMD直接运行命令会报错,但不影响导出,是字符集设置问题。

3、 使用参数文件

Exp命令(exp_par.bat)

 

参数文件:(exp_par.par)

 

说明:在数据导出在可以使用参数文件的方式,但一般认为没有必要;日志文件和数据文件可以保存为以日期结尾的形式。

4、 预估导出文件的大小

估算导出文件的大小

 

5、 如果对象已经存在,只导入数据,忽视对象创建错误

imp_table_ignore.bat

 

但如果违反了唯一性约束,仍然会出错。

6、 多个数据文件导出与导入

这种做法通常用在表数据量较大,单个 dump文件可能会超出文件系统的限制的情况

exp_more_file.bat

 

imp_more_file.bat

 

说明:导出时,如果列出的数据文件不能完全装载导出的数据,则会提示输入新的数据文件名;导入时,各文件名是作为一个整体(所有导出的数据文件),必须全部列出。

7、 全库导入的一般步骤

注意:在导出时,需要通过toad或其他工具提取源数据库创建主键和索引的脚本

(1).先全库加 rows=n 把结构导进去

$ imp system/manager file=exp.dmp log=imp.log full=y rows=n indexes=n

(2).使业务用户的触发器失效/删除主键和唯一索引

 

执行生成的脚本:

@drop_pk_u.sql

@disable_trigger.sql

(3). ignore=y全库导入

$imp system/manager file=exp.dmp log=imp.log full=y ignore=y

(4).通过 toad或其他工具提取源数据库创建主键和索引的脚本,在目标数据库中创建主键和索引;使触发器生效。

8、 导入时忽略约束

imp_constraints.bat

 

但一般没有实际用处,因为如果这样,数据虽然可能导进去,但逻辑上可能已经全是错误的了。

9、 ……

【上篇】
【下篇】

抱歉!评论已关闭.