Oracle在10g的时候有一个很好用的导出工具expdp(数据泵)

但是这个工具好用的同时,有一个局限,就是必须用本地的用户才可以导出数据,也就是说数据泵只能导出本地数据库的数据

但是如果业务需求是   将一个用户的全部表都导出,但是不需要t1,t2,t3而且这个数据库不是本地的,是异地的一个数据库

正常的思路是通过exp userxx/passwd@192.168.1.100/orcl file=xxx.dmp log=xxx.log 就可以异地导出,但是消耗很多时间,而且有一个硬性要求,必须要除去某些表,所以必须要用到expdp来完成

expdp中有一个参数是exclude,这个参数中就可以添加不想导出的索引或者表之类的

但是再一想,必须要用expdp,而且是一个异地的数据库,主机登录不上,很是矛盾

思考了好久,终于想到办法

用dblink来做一个中间的链接,再用expdp导出

完事具备,开搞:

1.在本地创建一个用户,一个目录,授权

$ mkdir /home/oracle/dmpfile

CREATE USER TEST IDENTIFIED BY TEST DEFAULTE TABLESPACE XXX; 
CREATE DIRECTORY DMPFILE AS '/oracle/dmpfile'
GRANT resource,connect,imp_full_database to TEST;
GRANT read,write on directory dmpfile to test;

还要有一个准备工作:

如果需要用dblink来导出数据的话需要给远程的用户一个exp_full_database的权限

sqlplus system/xxxx@192.168.1.100/orcl

GRANT EXP_FULL_DATABASE TO USERXX;

2.创建dblink

这里要注意,创建的dblink必须要是public的

否则及时创建完后,也会报错找不到dblink

create public database link db_local
connect to userxx IDENTIFIED BY passwd
using '(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.100)(PORT = 1521))
)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl )
)
)';

创建完成后,查看下数据是否存在

select * from userxx.test@db_local;

如果找到userxx重的test表的数据,证明dblink创建成功

3.用expdp导出数据

这是最关键的一步,因为参数有很多,所以使用parfile来完成,格式更好看些

vim test.par

userid=test/test            --导出的用户,本地用户!!
directory=dmpfile          --导出的目录,一定要在oracle中创建完成的,并且给用户授权读写权限
dumpfile=userxx.dmp      --导出的数据文件的名称,如果想在指定的位置的话可以写成dumpfile=/home/oracle/userxx.dmp
logfile=userxx.log          --日志文件,如果不写这个参数的话默认名称就是export.log,可以在本地的文件夹中找到
SCHEMAS=userxx       --使用dblink导出的用户不是本地的用户,需要加上schema来确定导出的用户,类似于exp中的owner,但还有一定的区别
EXCLUDE=TABLE:"IN('T1','T2','T3')"     --exclude 可以指定不导出的东西,table,index等,后面加上不想导出的表名
network_link=db_local          --这个参数是使用的dblink来远程导出,需要指定dblink的名称

完成后退出保存。

执行导出

expdp parfile=test.par

就可以看到最后的导出了

导入的话需要这样:必须要在oracle中有一个目录,而且要有读写权限,要有imp_full_database权限

impdp testuser/testuser dumfile=userxx.dmp logfile=imp_userxx.log directory=dmpfile remap_schema=userxx:testuser

最后一个参数需要加上remap_schema=old:new

由一个用户导入到其他的用户,需要添加最后一个参数。

这样就可以导入成功了

SQL> 
SQL> 

【EXPDP】expdp/impdp数据泵远程导入导出的更多相关文章

  1. ORACLE使用EXPDP和IMPDP数据泵进行导出导入的方法

    ORACLE使用EXPDP和IMPDP数据泵进行导出导入的方法 (2010-05-28 12:54:34) http://blog.sina.com.cn/s/blog_67d41beb0100ixn ...

  2. oracle11g-R2数据库的逻辑备份(数据泵的导入导出)

    一.环境: server1迁移到server2 server1: 服务器号:201 系统:Windows server 2008 R2 x64 IP地址:192.168.2.201 oracle数据库 ...

  3. 【Oracle】EXPDP和IMPDP数据泵进行导出导入的方法

    一.expdp/impdp和exp/imp 客户端工具 1.exp和imp是客户端工具程序,它们既可以在客户端使用,也可以在服务端使用. 服务端工具 2.expdp和impdp是服务端的工具程序,他们 ...

  4. PLSQL_数据泵Datapump导入导出数据IMPDP / EXPDP(概念)(Oracle数据导入导出工具)(转)

    一.摘要 在平常备库和数据库迁移的时候,当遇到大的数据库的时候在用exp的时候往往是需要好几个小时,耗费大量时间.oracle10g以后可以用expdp来导出数据库花费的时间要远小于exp花费的时间, ...

  5. expdp/impdp数据泵分区表导入太慢了。添加不检查元数据参数提高效率:ACCESS_METHOD=DIRECT_PATH

    分区表数据泵导入太慢,达不到客户的迁移要求导出语句如下:(10G单节点)userid='/ as sysdba'directory=milk_dirdumpfile=mon_%U.dmplogfile ...

  6. Oracle数据泵的导入导出

    说明:数据泵技术是Oracle Database 10g 中的新技术,它比原来导入/导出(imp,exp)技术快15-45倍.速度的提高源于使用了并行技术来读写导出转储文件. expdp导出 1.以s ...

  7. Oracle数据库采用数据泵方式导入导出数据

    特别说明:Oralce的数据泵导入导出技术只能用在数据库服务器上,在只有客户端的机器上是无法使用数据泵技术的. 1.创建备份文件目录  mkdir d:\dmp 2.在Oralce中注册该目录,将目录 ...

  8. oracle表分区、表分析及oracle数据泵文件导入导出开心版

    1.先说oracle表分区是什么吧,这样吧我们来举个桃子,栗子太小,我们就不举了,我们来举个桃子. 你有500万份文件,你要把他存在磁盘上,好嘛,我们就一个文件夹,500万分文件在那儿杵着,我们想找到 ...

  9. oracle表分区、表分析及oracle数据泵文件导入导出

    1.先说oracle表分区是什么吧 你有500万份文件,你要把他存在磁盘上,好嘛,我们就一个文件夹,500万分文件在那儿杵着,我们想找到要的那个打开,嘿嘿,我们得找到什么时候. 这时候,有个人告诉你, ...

随机推荐

  1. 求求你,别再用wait和notify了!

    Condition 是 JDK 1.5 中提供的用来替代 wait 和 notify 的线程通讯方法,那么一定会有人问:为什么不能用 wait 和 notify 了? 哥们我用的好好的.老弟别着急,听 ...

  2. matplotlib的学习9-bar柱状图

    import matplotlib.pyplot as plt import numpy as np ''' 向上向下分别生成12个数据,X为 0 到 11 的整数 ,Y是相应的均匀分布的随机数据. ...

  3. Linux工具包

    Linux的工具包 JDK 版本:14    百度网盘:链接: https://pan.baidu.com/s/1hWqGVmsElOCBufMuscPXzw  密码:st3y 安装步骤: 1.使用S ...

  4. 给因特尔S2600CO服务器主板安装【SAS控制器】驱动

    给因特尔S2600CO服务器主板安装[SAS控制器]驱动 1:首先打开[设备管理器]找到未识别驱动的[SAS控制器]双击进入 2:在[详细信息]选项卡,选择[兼容Id]属性可以看到PCI\VEN_80 ...

  5. 【升级版】如何使用阿里云云解析API实现动态域名解析,搭建私有服务器【含可执行文件和源码】

    原文地址:http://www.yxxrui.cn/article/179.shtml 未经许可请勿转载,如有疑问,请联系作者:yxxrui@163.com 我遇到的问题:公司的网络没有固定的公网IP ...

  6. 【译】JWT(JSON Web Token) 入门指南

    JWT 入门指南 原文地址:https://blog.angular-university.io/angular-jwt/ 这篇文章是两篇手把手教你如何在Angular应用(也适用于企业级应用)中实现 ...

  7. VNC使用及其常见问题解决方法

    博主之前在博文(https://www.cnblogs.com/kangbazi666/p/14153604.html)中已经介绍了多人VNC的配置方法,下面将简单介绍其使用方法及常见问题的解决方法. ...

  8. 编写高质量JAVA代码之让接口的职责保持单一

    上述标题读者朋友应该也注意到了是让接口的职责保持单一,而不是实现者单一. 设计模式六大原则之单一原则: 定义 不要存在多于一个导致类变更的原因.**通俗的说,即一个类只负责一项职责. 下面以一个电话模 ...

  9. 负载均衡各个算法JAVA诠释版

    00 前言 首先给大家介绍下什么是负载均衡(来自百科) 负载均衡建立在现有网络结构之上,它提供了一种廉价有效透明的方法扩展 网络设备和 服务器的带宽.增加 吞吐量.加强网络数据处理能力.提高网络的灵活 ...

  10. 手摸手带你用Hexo撸博客(三)之添加评论系统

    原文地址 注: 笔者采用的是butterfly主题, 主题内置集成评论系统 butterfly主题开启评论 开启评论需要在comments-use中填写你需要的评论. 以Valine为例 commen ...