Navicat oracle 数据库迁移、数据传输、数据复制或备份或还原

    平安银行rwa整合风险管理平台二期要开始了,这期间也需要一些数据同步等操作。要想复制或者备份还原数据库,肯定涉及到表、表空间、索引以及表分区等等,之前用PL/SQL Developer工具进行直接导出dmp 之后导入dmp或者导出导入USER OBJECTS 此时主要会有两个问题:

    1、表空间名称不一致问题

    2、表分区情况

也就是说源数据库和目标数据库表空间不一致情况下直接用PL/SQL 工具会出问题,部分表会报错如:表空间不存在等问题,如果使用命令方式或许不会报错。

再就是恢复数据库之后发现部分表没导入进来,中途报错了,如果继续使用PL/SQL进行export user objects 万一你用表分区了,那么肯定导入会失败,并且方式不当的话会吞噬日志不带打饱嗝的。

    说了一堆主要是避免直接使用PL/SQL还原数据库,或者直接导出用户对象进行恢复表结构等都可能潜在一些问题,所以推荐Navicat 工具,至少我还没发现问题,有不同看法的欢迎留言等。    

    Navacat 数据传输

    我使用了源表PINGAN_DEV.TEST1进行测试,直接上图

    1、准备表并且要留意源表是否表分区

source_table_test1.gif

    2、开始数据传输

navicat_data_tansfer.gif

    3、留意高级选项

navicat_data_tansfer2.gif

如果选择了"创建前删除目标对象" 就是目标数据库如果存在该表就drop掉重新创建

    4、传输后看下日志

[Msg] [Dtf] DataTransfer started
[Msg] [Dtf] Getting tables properties
[Msg] [Dtf] Getting tables fields
[Msg] [Dtf] Getting tables constraints
[Msg] [Dtf] Getting index-organized tables properties
[Msg] [Dtf] Getting tables indexes
[Msg] [Dtf] Getting tables triggers
[Msg] [Dtf] Getting total records count
[Msg] [Dtf] Drop table: "RWA"."TEST1"
[Msg] [Dtf] Create table: "RWA"."TEST1"
[Msg] [Dtf] Get table data for: RWA.TEST1
[Msg] [Dtf] Start transfer to Target Server: "RWA"."TEST1"
[Msg] [Dtf] Begin transaction on target server
[Msg] [Dtf] End transaction on target server
[Msg] [Dtf] Finished - Successfully
--------------------------------------------------

但是如果要是取消勾选"创建前删除目标对象"

navicat_for_oracle_transer.gif

    5、检查是否正确

    一定要检查正确与否

推荐另一篇比较好的文章:

http://www.2cto.com/database/201405/305467.html 

值得一提的是:navicat 工具–》 数据传输、数据同步、结构同步 分别对应 可不同数据库、同一数据库、可不同数据库 操作方式。

©声明:本站原创文章采用 BY-NC-SA 共享协议,受法律保护,转载请注明出处;转载文章版权归原作者所有。
©转载请注明来源:

未经允许不得转载:最优质网--最有指望 » Navicat oracle 数据库迁移、数据传输、数据复制或备份或还原

赞 (7) 打赏

评论 0

评论前必须登录!

登陆 注册

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏