Oracle数据迁移Data Pump(Expdp/Impdp)

一、Data Pump(expdp/impdp)
特定对象备份、部分迁移、跨平台方案,灵活选择迁移对象(Schema, Table, Metadata)。

#创建导出目录

mkdir -p /oradata/exp_dir         
chown -R oracle:oinstall /oradata #给导出目录授权,oinstall为Oracle安装管理组,$ORACLE_HOME目录属于oinstall组。
sqlplus / as sysdba  #登录数据库
sql>create directory EXPDP_DIR as '/oradata/exp_dir'; #创建备份目录并指定物理路径

#创建表空间DEV、OPS

CREATE TABLESPACE OPS  
DATAFILE '/oracle/oradata/testdb/ops.dbf' 
SIZE 30G 
AUTOEXTEND OFF
EXTENT MANAGEMENT LOCAL
SEGMENT SPACE MANAGEMENT AUTO;

CREATE TABLESPACE DEV 
DATAFILE '/oracle/oradata/testdb/ops.dbf' 
SIZE 30G 
AUTOEXTEND OFF
EXTENT MANAGEMENT LOCAL
SEGMENT SPACE MANAGEMENT AUTO;

#创建测试表DEV.QQ、DEV.WW、DEV.ORDERS(有数据)、DEV.USERS(有数据)等

#查询表空间的表是否创建成功
SELECT table_name, owner FROM all_tables WHERE tablespace_name = 'DEV';

Oracle数据迁移Data Pump(Expdp/Impdp)

1、Expdp (ODSDB_4导出)

#导出多个表
expdp “sys/oracle@ODSDB_4 as sysdba” directory=EXPDP_DIR dumpfile=dump.dmp logfile=dump.log tables=DEV.QQ,DEV.WW parallel=4

Oracle数据迁移Data Pump(Expdp/Impdp)

Oracle数据迁移Data Pump(Expdp/Impdp)

#导出多个用户的所有表
expdp “sys/oracle@ODSDB_4 AS SYSDBA” directory=EXPDP_DIR dumpfile=dev_ops.dmp logfile=dev_ops.log schemas=DEV,OPS exclude=STATISTICS parallel=4

Oracle数据迁移Data Pump(Expdp/Impdp)

Oracle数据迁移Data Pump(Expdp/Impdp)

#导出多个表空间的所有表
expdp “sys/oracle@ODSDB_4 AS SYSDBA” directory=EXPDP_DIR dumpfile=dev_ops_exp.dmp logfile=dev_ops_exp.log tablespaces=DEV,OPS exclude=STATISTICS parallel=4

Oracle数据迁移Data Pump(Expdp/Impdp)

Oracle数据迁移Data Pump(Expdp/Impdp)
 

2、Impdp (导入ODSDB_7)

mkdir -p /oradata/imp_dir  #创建导入目录
chown -R oracle:oinstall /oradata #目录授权
sqlplus / as sysdba  登录数据库
sql>create directory IMP_DIR as '/oradata/imp_dir'; #创建导入目录并指定物理路径

#导入多个表
impdp “sys/oracle@ODSDB_7 AS SYSDBA” directory=IMP_DIR dumpfile=dump.dmp logfile=dump.log tables=DEV.QQ,DEV.WW table_exists_action=replace

Oracle数据迁移Data Pump(Expdp/Impdp)

#导入多个用户的所有表
impdp “sys/oracle@ODSDB_7 AS SYSDBA” directory=IMP_DIR dumpfile=dev_ops.dmp logfile=dev_ops.log schemas=DEV,OPS table_exists_action=replace ignore=Y

#(ignore=Y强制忽略覆盖原有用户权限)、(exclude=USER跳过覆盖原有用户权限)

Oracle数据迁移Data Pump(Expdp/Impdp)

#导入多个表空间数据 (remap_tablespace=DEV:DEV 源表空间名:目标表空间名)
impdp “sys/oracle@ODSDB_7 AS SYSDBA” directory=IMP_DIR dumpfile=dev_ops_exp.dmp logfile=dev_ops_exp.log remap_tablespace=DEV:DEV,OPS:OPS table_exists_action=replace

Oracle数据迁移Data Pump(Expdp/Impdp)

© 版权声明

相关文章

暂无评论

您必须登录才能参与评论!
立即登录
none
暂无评论...