expdp与impdp导出导入表

原文链接:https://blog.csdn.net/leftfist/article/details/80738170

1、导出指定表
expdp 'sys/pwd@server1 as sysdba' directory=dbbak dumpfile=tables.dmp logfile=tables.log tables=schema1.table1,schema1.table2

expdp 导出   

 sys/pwd@server1 as sysdba 用户/密码 

 directory=dbbak   目录   #注意这边的/dbbak目录oracle用户必须是属主

 dumpfile=tables.dmp 要导出的文件名 

 logfile=tables.log   日志目录

tables=schema1.table1,schema1.table2  要导出的表

expdp 'sys/pwd@server1 as sysdba' directory=dbbak dumpfile=tables.dmp logfile=tables.log tables=schema1.table1,schema1.table2的意思就是把 table1 table2表中数据导成目录中dbbak的 tables.dmp文件和tables.log 日志

2、导入指定表
--如果源库和目标库对应的表空间没变:
impdp 'sys/pwd@server2 as sysdba' directory=dbbak dumpfile=tables.dmp tables=schema1.table1,schema1.table2  REMAP_SCHEMA=schema1:schema1
--REMAP_SCHEMA=schema1:schema1,源库shema:目标库schema 

的意思是将目录 dbbak和 源库shema的tables.dmp文件数据 导入到目标库schema  数据库 table1,table2中

注意目标库的schema对应的账号,因为可能涉及到创建表等各种元素,要有足够的权限,才能导进去

其中,dbbak没有的话,要先创建:

在sqlplus下:

 创建directory:   create directory dbbak as 'c:\temp';--(手动创建temp文件夹)

授权: grant read or write on directory dbbak to temp;

这个dbbak是个啥东东呢?据说数据库某种程度上类似一个操作系统,它有自己的一套磁盘管理机制,一般不直接使用操作系统的文件系统。甚至乎,它希望直接使用“生磁盘”,就是没有格式化过的磁盘。所以,dbbak是一个磁盘路径映射,要将"操作系统下的路径映射到oracle里,有了地址,你才能取文件或者寄文件",。


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值