//首先在oracle中创建一个虚拟目录用来做为导出的dump文件输出并赋予读写权限
create directory dmpdir as ‘/home/oracle/dmp‘;grant read,write on directory dmpdir to public;
//验证
select * from dba_directories;
可以看到虚拟目录已经创建成功了
物理目录需不需要手动创建我没验证,我在做的时候事先创建好了物理目录
为了避免莫名奇妙的问题我们还是手动创建一下物理目录吧O(∩_∩)O
mkdir /home/oracle/dmp
//导出全库表结构无数据
expdp 用户名/密码@地址/表空间 directory=虚拟目录的名称(dmpdir) dumpfile=RCCADB.dmp cluster=no schemas=fraudzd content=metadata_only
dumpfile : 导出的dump文件名称
cluster : 是否集群
content=metadata_only 只要表结构
schemas : 你的用户名
完整例子expdp root/[email protected]/myDataBase directory=dmpdir dumpfile=RCCADB.dmp cluster=no schemas=root content=metadata_only
//导入表结构
impdp root1/[email protected]/myDataBase directory=dmpdir dumpfile=RCCADB.dmp cluster=no remap_schema=root:root1 remap_schema = 原始用户:目标用户
//导出指定表结构和数据
//导出指定表包括数据
expdp root/root@localhost/myDataBase directory=dmpdir logfile=M_RULE_EXPORT.LOG dumpfile=M_RULE.dmp TABLES=root.m_met_rules,root.m_ruleset,root.m_ruleset_org cluster=no
注意 这里不要写schema参数 tables 和 schema参数不能同时出现
//导入刚才导出的dump文件
impdp root1/root1@localhost/myDataBase directory=dmpdir logfile=M_RULE_IMPORT.LOG dumpfile=M_RULE.dmp TABLES=root.m_met_rules,root.m_ruleset,root.m_ruleset_org remap_schema=root:root1 cluster=no table_exists_action=REPLACE
table_exists_action 如果目标用户表已存在则覆盖
原文地址:https://www.cnblogs.com/monkSand/p/10858683.html
时间: 2024-10-07 13:24:32