dreamno

导航

 

在《【IMPDP】同一数据库实例不同用户数据迁移复制—— NETWORK_LINK参数》(http://space.itpub.net/519536/viewspace-631571)文章中谈到了使用 NETWORK_LINK参数实现在相同的数据库实例中不同用户的数据复制。

只要深刻理解了NETWORK_LINK参数的含义,实现不同数据库实例不同用户间数据迁移复制功能道理是相同的。

需求:
将ora10g实例中的sec用户数据迁移到secooler实例的housw用户中。

实现流程:
a.在secooler实例所在的数据库中创建指向ora10g数据库实例的DATABASE LINK;
b.使用NETWORK_LINK参数在secooler实例所在数据库服务器完成数据的导入。

这里要特别注意,操作需要在secooler实例所在的数据库服务器上完成。

真实操练胜过千言万语。

1.确认ora10g数据库实例的sec用户下待迁移的数据
sec@ora10g> conn sec/sec
Connected.
sec@ora10g> select * from tab;

TNAME                          TABTYPE  CLUSTERID
------------------------------ ------- ----------
T_SEC                          TABLE

sec@ora10g> select count(*) from t_sec;

  COUNT(*)
----------
     11678

2.查看secooler实例的housw用户数据
此步骤的目的是为了后面做对比。
sys@secooler> conn housw/housw
Connected.
housw@secooler> select * from tab;

no rows selected

housw用户中不包含数据。

3.在secooler实例上创建指向ora10g实例的DATABASE LINK
sys@secooler> create public database link dblink_to_ora10g connect to system identified by sys using 'ORA10G';

Database link created.

4.使用NETWORK_LINK参数完成使命
secooler@secDB /expdp$ impdp system/sys directory=impdp_dir network_link=dblink_to_ora10g schemas=sec remap_schema=sec:housw

Import: Release 10.2.0.3.0 - 64bit Production on Thursday, 08 April, 2010 7:15:24

Copyright (c) 2003, 2005Oracle.  All rights reserved.

Connected to: Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - 64bit Production
With the Partitioning, Oracle Label Security, OLAP and Data Mining Scoring Engine options
Starting "SYSTEM"."SYS_IMPORT_SCHEMA_01":  system/******** directory=impdp_dir network_link=dblink_to_ora10g schemas=sec remap_schema=sec:housw
Estimate in progress using BLOCKS method...
Processing object type SCHEMA_EXPORT/TABLE/TABLE_DATA
Total estimation using BLOCKS method: 2 MB
Processing object type SCHEMA_EXPORT/USER
ORA-31684: Object type USER:"HOUSW" already exists
Processing object type SCHEMA_EXPORT/SYSTEM_GRANT
Processing object type SCHEMA_EXPORT/ROLE_GRANT
Processing object type SCHEMA_EXPORT/DEFAULT_ROLE
Processing object type SCHEMA_EXPORT/PRE_SCHEMA/PROCACT_SCHEMA
Processing object type SCHEMA_EXPORT/TABLE/TABLE
. . imported "HOUSW"."T_SEC"                              11678 rows
Job "SYSTEM"."SYS_IMPORT_SCHEMA_01" completed with 1 error(s) at 07:15:30

出现的ORA-31684错误是因为我事先已经创建好了housw用户。

5.最后的确认
sys@secooler> conn housw/housw
Connected.
housw@secooler> select * from tab;

TNAME                          TABTYPE  CLUSTERID
------------------------------ ------- ----------
T_SEC                          TABLE

housw@secooler> select count(*) from t_sec;

  COUNT(*)
----------
     11678

OK,使命圆满完成。

6.Oracle官方文档关于IMPDP工具的NETWORK_LINK参数描述参考
http://download.oracle.com/docs/cd/B19306_01/server.102/b14215/dp_import.htm#sthref319

7.小结
IMPDP工具的NETWORK_LINK参数体现了Oracle的进步,慢慢体会吧。

Good luck.

secooler
10.04.08

-- The End --

posted on 2013-07-25 10:07  dreamno  阅读(991)  评论(0编辑  收藏  举报