一、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';

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


#导出多个用户的所有表
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


#导出多个表空间的所有表
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


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

#导入多个用户的所有表
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跳过覆盖原有用户权限)

#导入多个表空间数据 (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



