oracle 之 EXP、IMP 使用简介


注:DOS命令行中执行exp、imp 导出导入ORACLE数据,ORACLE操作者具有相应的权限!

1.1、导出整库或当前用户:
关键字:full
语法:exp 用户/密码@数据库实例名 file=导出文件之后存放的路径文件名.dmp full=y
注释:full=y 表示全库导出;full=n 表示将当前用户导出。 full 总共有2个可选项yes(y)/no(n),默认full=no ,compress=y 是否对导出文件进行压缩。
实例:
全库导出(需要用到sys或system 用户),并压缩成.zip文件:exp lzh/123@orcl file=d:lzhdb.dmp full=y compress=y
导出当前用户:exp lzh/123@orcl file=d:lzhuser.dmp full=n 或者 exp lzh/123@orcl file=d:lzhuser.dmp

1.2、导入整库:
语法:imp 要导入的用户/密码@数据库 file=要导入的.dmp文件路径 full=y ignore=y
注释:full=y 表示整库导入,ignore=y表示忽略已存在的对象(如果不加ignore=y,在导入时,若某些对象已存在,会报错),将对象数据累加进去。
imp lzh/123@orcl file=D:123cc.dmp full=y ignore=y

2.1、导出用户:
关键字:owner
语法:exp 用户/密码@数据库实例名 file=导出文件之后存放的路径文件名.dmp owner=(用户1,用户2....)
注释:限制了owner=用户,只能导出指定用户对象,不能和full=y同时使用,compress=y 是否对导出文件进行压缩。
实例:导出数据库orcl中lzh1、lzh2用户对象:exp lzh/123@orcl file=d:lzhuser.dmp owner=(lzh1,lzh2)

2.2、导入用户:
语法:imp 要导入的用户/密码@要导入的数据库 file=要导入的.dmp文件路径 fromuser=原用户 touser=要导入的用户 ignore=y
注释:ignore=y 和上面用法一样。
实例:imp lzh_new/123@orcl_new file=d:123cc.dmp fromuser=lzh touser=lzh_new ignore=y

3.1、导出指定表:
关键字:tables
语法:exp 用户/密码@数据库实例名 file=导出文件之后存放的路径文件名.dmp tables=(表1,表2.....)
注释:限制了tables=表,只能导出指定表,不能和full=y,owner=用户同时使用,compress=y 是否对导出文件进行压缩。
实例:exp lzh/123@orcl file= d:lzhtable.dmp tables=(lzh_tb1,lzh_tb2....)

3.2、导入表:
语法:imp 要导入的用户/密码@要导入的数据库 file=要导入的.dmp文件路径 tables=(表1,表2...) ignore=y
注释:ignore=y 和上面用法一样。
实例:imp lzh/123@orcl file=d:123cc_tb.dmp tables=(tb_operator)

4、导出字段:
关键字:query
语法:exp 用户/密码@数据库实例名 file=导出文件之后存放的路径文件名.dmp tables=(表1) query=字段 或 query=" where 字段+条件 "
注释:query主要是导出合适条件的数据。使用该参数时,需要注意对所有操作系统保留字符都要使用转义符号。若有括号()也需要转义:转义符:
实例:exp lzh/123@orcl file=d:lzhcolumn.dmp tables=(lzh_operator) query=" where id>=100 "

世风之狡诈多端,到底忠厚人颠扑不破; 末俗以繁华相尚,终觉冷淡处趣味弥长。
原文地址:https://www.cnblogs.com/simple-li/p/10011199.html