之前有同事问如何在一个数据库中复制一个用户信息,即将一个用户下的所有数据复制到另一个用户下,以方便进行开发测试,而不直接操作原有数据。当前,想到如何导出数据再导入之外,还没有其他方法,今天看到一个通过network_link来使用impdp复制数据的方法,可以解决这个问题,并且还不需要将数据先导出到本地中。
以下内容转自:http://tomszrp.itpub.net/post/11835/293879,原文为 使用数据泵复制schema,作者: Thomas Zhang.
impdp 的数据源既可以是expdp 导出来的DMP文件,也可以是一数据库.
通过network_link 参数来指定数据源
schemas 参数说明要复制的用户
remap_schema 参数说明源用户与目标用户的匹配关系
remap_tablepace 来调整原schemas使用的表空间与目标数据库用户要表空间的对应关系。
首先创建一个dblink:
我是在一个db自身上创建的dblink,用来模拟2个不同的库。同样的道理也说明了一种在同一个库上复制一个schema的方法
数据库链接已创建。
测试DBLINK:
开始使用impdp复制:
注意看下面impdp命令中的network_link参数,这是从自身数据库建立一个Dblink。即相当于从自身数据库进行导入数据。
修改口令,验证新的schema
好的,到这里可以简单的看到,study已经被复制到了thomas下了。
相关文章:
作者: flym
I am flym,the master of the site:)查看flym的所有文章