EXP和IMP是客户端工具程序,它们既可以在客户端使用,也可以在服务端使用。

EXPDP和IMPDP是服务端的工具程序,他们只能在ORACLE服务端使用,不能在客户端使用。

IMP只适用于EXP导出的文件,不适用于EXPDP导出文件;IMPDP只适用于EXPDP导出的文件,而不适用于EXP导出文件。

EXPDP导出命令:

C:\Users\Administrator>expdp ndp_admin/ndp_admin@ndp schemas=ndp2016_04 dumpfile=snndp.dmp directory=data_pump_dir

将用户ndp2016_04导出到服务器上的D:\app\Administrator\admin\orcl\dpdump目录下。

不用事先创建目录,可直接用系统目录data_pump_dir

IMPDP导入命令:事先不用创建接收用户!直接在导入时指定新用户名,连密码都自动设为与导出用户一样,非常方便!

注意用户转换时要用remap_schema=ndp2016_04:myuser 导出用户:导入用户

impdp ndp_admin/ndp_admin@ndp  directory=data_pump_dir dumpfile=snndp.dmp

remap_schema=ndp2016_04:myuser table_exists_action=replace

table_exists_action=replace其实无用,因为用户的空的,如果不是,还有序列、视图、函数等不好操作。

更进一步,不用导出dmp文件,直接将用户同步到本实例或其它实例上的新建用户上!!!

1、先创建数据库连接,需先登录sqlplus

sql> create public database link ndpself connect to system identified by orcl using 'orcl'

注意:ndpself是新建的database link名称,可以随便起。后面connect to system identified by orcl是登录名和密码,using 'orcl'是数据库在服务器上的真正实例名,而不是客户端上的连接名

2、退出sqlplus,直接运行impdp命令,直接新建用户并导入数据

impdp ndp_admin/ndp_admin@ndp network_link=ndpself schemas=ndp_admin remap_schema=ndp_admin:newndpadmin

注意ndp_admin/ndp_admin@ndp是执行这行命令的客户机上的连接名,schemas=ndp_admin指明导出库中的导出用户

再进一步,将不同服务器、不同实例间的用户进行直接同步

在C客户机上运行脚本,将111,A服务器上的的实例 中的NAIP2019_09用户,同步到B服务器上的实例(B服务器上添加连接A的连接名为transnaip,C连B的上的连接名ndp)下的new09用户下。

1、创建dblink

先在C客户端上连接B服务器,在上面建立数据库连接

sqlplus ndp_admin/ndp_admin@ndp //ndp C连B的连接名

create public database link tans_1 connect to system identified by orcl using 'transnaip'  //transnaip:B连A的连接名

注意,C客户机和B服务器往往就是一台电脑,这时一定要注意B连A的连接名'transnaip'必须是服务器路径dbhome_1下连接A机的连接名,而不是客户端路径client_1的到A机的连接名

退出sqlplus

2、导入用户

impdp ndp_admin/ndp_admin@ndp network_link= trans_1 schemas=naip2016_09 remap_schema=naip2016_09:my09 transform=oid:n

补充:

0、db_link最好用system用户连接,否则可能连接不成功,原因未知

1、可以多个用户用一条语句导入,用户间用,隔开

impdp flt_admin/flt_admin@orcl network_link= fltself sche

mas=nvduser_flt,nvduser_fmap2 remap_schema=nvduser_flt:nn1,nvduser_fmap2:nn2 transform=oid:n

2、必须加上transform=oid:n ,否则类型无法创建,因为oralce将同一个实例下的类型不允许有同样的id

3、新创建的用户密码是不可用的,必须事后更改新用户的密码ALTER USER nn1 IDENTIFIED BY nvduser_flt

4、可以通过databse link 实现访问不同服务器上的不同实例下的用户对象如:

select * from naip2016_09.airport@ trans_1来访问其它服务器上的表

但是,不能对远程数据库进行结构调整DDL,如创建表、删除字段等操作,只能进行查询、删除、添加等表记录操作。

5、查看所有dblink连接

select * from dba_db_links;

6、删除dblink连接

drop public database link dblinkname;

2016.8.17服务器端数据库用户导入导出方法 expdp和impdp的更多相关文章

  1. oracle数据库数据导入导出步骤(入门)

    oracle数据库数据导入导出步骤(入门) 说明: 1.数据库数据导入导出方法有多种,可以通过exp/imp命令导入导出,也可以用第三方工具导出,如:PLSQL 2.如果熟悉命令,建议用exp/imp ...

  2. oracle数据库的导入 导出实例

    oracle数据库的导入 导出实例 分类: DataBase2011-09-07 23:25 377人阅读 评论(0) 收藏 举报 数据库oraclefileusercmdservice 我要从另外一 ...

  3. oracle11g数据库导入导出方法教程

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明.本文链接:https://blog.csdn.net/xinxiaoyonng/article/ ...

  4. mysql数据库的导入导出

    当我们在操作数据库的时候,难免会遇到数据导入导出的一些操作,今天突然学到了这个知识点,特意来给大家分享. 我用的是data的这条数据 1.使用数据 mysql> use data; Databa ...

  5. ORACLE数据库在导入导出时序列不一致的问题

    ORACLE数据库在导入导出时序列不一致的问题   在使用ORACLE数据库时,当给一个表设置自增字段时,我们经常会使用到序列+触发器来完成.但当你需要对数据库进行导入导出时,序列很容易出问题. 当你 ...

  6. linux mysql 数据库操作导入导出 数据表导出导入

    linux mysql 数据库操作导入导出 数据表导出导入 1,数据库导入 mysql -uroot -p show databases; create database newdb; use 数据库 ...

  7. Linux数据库的导入导出

    Linux数据库的导入导出 1.导入数据库 mysql -u username -p test < /home/data/test.sql 说明:username是数据库用户名,test为目标数 ...

  8. MySQL数据导入导出方法与工具mysqlimport

    MySQL数据导入导出方法与工具mysqlimport<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office ...

  9. sqlsever备份,还原和导入导出方法

    一:sqlsever数据库的几种备份和还原方法: 第一种:备份还原方法 1.选择要备份的数据库-任务-备份- 打开之后会看到里面有: 常规:在常规页面中我们可以看到:右下角位置有一个可以更改存储(备份 ...

随机推荐

  1. Python httpServer服务器(初级)

    使用原生的python开发的web服务器,入门级! #!/usr/bin/python # -*- coding: UTF-8 -*- import os #Python的标准库中的os模块包含普遍的 ...

  2. whois老域名挖掘技术

    我一般通过站长工具域名WHOIS查询定向收集一些特定域名,拿来分析网站存活站点. 例如: 查询域名基本信息 WHOIS反查得到大部分域名注册信息 一般大一点的厂商都有几百个域名,我们通过此处收集大量顶 ...

  3. TCP的三个接收队列

    之前对于TCP接收过程中的三个队列的关系之前没搞清楚. 这几天,在同事邱的帮助下,终于把关系理清了,故特此做个笔记. 一.在软中断中加入数据包 tcp_v4_rcv()函数是tcp层收包的入口. in ...

  4. linux命令:rm 命令

    昨天学习了创建文件和目录的命令mkdir ,今天学习一下linux中删除文件和目录的命令: rm命令.rm是常用的命令,该命令的功能为删除一个目录中的一个或多个文件或目录,它也可以将某个目录及其下的所 ...

  5. vue v-if with v-for

    遍历和条件判断混合使用示例. <!DOCTYPE html> <html> <head lang="en"> <meta charset= ...

  6. Python给数字前固定位数加零

    python中有一个zfill方法用来给字符串前面补0,非常有用 n = " s = n.zfill(5) " zfill()也可以给负数补0 n = "-123&quo ...

  7. 深度学习—BN的理解(一)

    0.问题 机器学习领域有个很重要的假设:IID独立同分布假设,就是假设训练数据和测试数据是满足相同分布的,这是通过训练数据获得的模型能够在测试集获得好的效果的一个基本保障.那BatchNorm的作用是 ...

  8. Mac开机启动

    1. Finder打开资源库的LaunchAgents目录. 打开Finder,按⇧⌘G,输入 /Library/LaunchAgents/ 以及 ~/Library/LaunchAgents/ 2. ...

  9. JavaScript实现文章复制加版权信息

    function addLink() { var body_element = document.getElementsByTagName('body')[0]; var selection; if( ...

  10. 异步通信rabbitmq——消息重试

    目标: 利用RabbitMQ实现消息重试和失败处理,实现可靠的消费消费.在消息消费异常时,自动延时将消息重试,当重试超过一定次数后,则列为异常消息,等待后续特殊处理. 准备: TTL:Time-To- ...