exp 用户名/密码@服务器IP:端口/服务名 file=dmp文件路径 full=y
例如:
数据导出:导出的数据库名称是在tnsnames.ora文件中定义的(本地oracle BIN目录下,或者是plsql远程连接oracle的配置文件下)
1.数据库数据完全导出 用户payment数据导出到D:\oracle\fina.dmp 下 dmp文件自动创建,目录正确即可
exp payment/payment@192.168.0.88:1521/orcl file=D:\oracle\fina.dmp full=y
full=y 表示全库导出。full总共有2个可选项yes(y)/no(n),缺省情况下full=no,这时只会将该用户下的对象导出。
2.将数据库zxcc中kf用户与cc用户的表导出 owner(支持单多选择,随意)
exp kf/zx@zxcc file=d:\zxcc_ur.dmp owner=(kf,cc)
full方式可以备份所有用户的数据库对象,包括表空间、用户信息等,owner=XX只能备份指定用户的对象,其他用户下的就不备份了,EXP中full=y和owner=XX是不能同时使用的。
数据导入:
需要注意的就是:如果使用下面(1)这种方式导入,导出的数据库资料重新导入存在于导出所用的用户下面
1.将D:\zxcc.dmp 中的数据导入 zxcc数据库中。
imp kf/zx@zxcc file=D:\zxcc.dmp
2.所有对象全部导入到指定的账户下:
imp kf_new/zx@zxcc_new file=d:\zxcc.dmp fromuser=kf touser=kf_new
其中fromuser=kf为.dmp文件里的对象的原先的owner, touser=kf_new 为作为导入的对象的新的Owner.
3.将d:\zxcc_tb.dmp中的表tb_operator 导入
imp kf/zx@zxcc file=d:\zxcc_tb.dmp tables=(tb_operator)
忽略加载约束
有时候导数据进来的时候,我们不需要把它的约束,比如一些外键约束等都导进来,可以加上参数constraints=N
不加载索引(比如唯一性的索引),可以加上参数indexs=N
只加载结构,不加载数据,如果只要表的结构等定义(约束,触发器),而不要里面的数据,可以加上参数rows=N
对于上述操作登陆操作的用户需是管理员,如果不是管理员,而是普通用户,那么这个用户必须有创建删除对象的权利,对象可能包括表,视图,方法,存储过程等等常见的对象。为什么“可能”包括?因为这个视导入导出的时候是否涉及相关类型的对象而定。