作者简介:
作者:LuciferLiu 中国DBA联盟(ACDU)成员。目前从事Oracle DBA工作,曾从事 Oracle 数据库开发工作,主要服务于生产制造,汽车金融等行业。现拥有Oracle OCP,OceanBase OBCA认证,擅长Oracle数据库运维开发,备份恢复,安装迁移,Linux自动化运维脚本编写等。
1、配置TNS
##配置tnsnames.ora
cat <>$TNS_ADMIN/tnsnames.ora
ORCL =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.211.55.100)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
)
)
EOF
2、创建数据泵导出目录
##创建导出目录
mkdir -p /oradata/rmanbak/orcl
sqlplus / as sysdba
create or replace directory DATA_DUMP_ORCL as '/oradata/rmanbak/orcl';
3、创建DBLINK
##创建ORCL的dblink用来传输dump到本地
sqlplus / as sysdba
create public database link DBLINK_ORCL connect to SYSTEM identified by using 'ORCL';
--drop public database link DBLINK_ORCL;
4、导出角色
--远程导出角色
expdp system/oracle network_link=dblink_orcl directory=DATA_DUMP_ORCL dumpfile=role.dmp full=y include=role LOGFILE=role_expdp.log
5、导出指定用户,排除部分表
##编写expdp导出命令脚本
cat <>/oradata/rmanbak/orcl/expdp_all_orcl.txt
directory=DATA_DUMP_ORCL
dumpfile=orcl_\%U.dmp
logfile=orcl_exp.log
SCHEMAS='A','B','C','D'
EXCLUDE=table:"in('AAAAA')"
parallel=4
filesize=30G
network_link=DBLINK_ORCL
EOF
##授予执行权限
chmod +x expdp_all_orcl.txt
expdp system/oracle parfile=expdp_all_orcl.txt
注意:这里的system密码是目标端数据库的密码。
6、导出结果
Dump file set for SYSTEM.SYS_EXPORT_SCHEMA_01 is:
/oradata/rmanbak/orcl/orcl_01.dmp
/oradata/rmanbak/orcl/orcl_02.dmp
/oradata/rmanbak/orcl/orcl_03.dmp
/oradata/rmanbak/orcl/orcl_04.dmp
/oradata/rmanbak/orcl/orcl_05.dmp
/oradata/rmanbak/orcl/orcl_06.dmp
/oradata/rmanbak/orcl/orcl_07.dmp
/oradata/rmanbak/orcl/orcl_08.dmp
限制: 1. 带有long数据类型的表不能在expdp 加NETWORK_LINK时被导出。 2.带有object_type数据类型的表不能在expdp 加NETWORK_LINK时被导出。 3. 在expdp 加NETWORK_LINK时,不能导出分区表中的某个分区。
参考文献:
Export/Import DataPump Parameter VERSION - Compatibility of Data Pump Between Different Oracle Versions [Video] [ID 553337.1]
如果觉得文章对你有帮助,点赞、收藏、关注、评论,一键四连支持,你的支持就是我创作最大的动力,技术交流可以添加公众号~
墨天轮:Lucifer三思而后行 CSDN:Lucifer三思而后行 微信公众号:Lucifer三思而后行