周末按计划进行了1.3TB左右的数据的迁移;迁移过程大致如下:
1 周四下午将数据库中只读(或不会发生数据变化的那部分数据)按schema进行了导出;导出方法如下:
expdp system/pwd directory=dump_path dumpfile=a.dump logfile=a.log schema=a exclude=statistics;
expdp system/pwd directory=dump_path dumpfile=b.dump logfile=b.log schema=b exclude=statistics;
此部分数据大概字450G左右,导出耗时3小时左右(通过网络导到NAS系统上)
2 周五下午同时进行如下操作:
1)将周四导出的数据按SCHEMA先后在新服务器上进行导入;
impdp system/pwd directory=dump_path dumpfile=a.dump logfile=a_imp.log schema=a parallel=14;
impdp system/pwd directory=dump_path dumpfile=b.dump logfile=b_imp.log schema=b parallel=14;
整个导入过程大概耗时 5小时左右(注:此部分数据只是单纯的数据,索引很少)
2)导入新服务器的同时,在老服务器上将剩余的schema导出;导出方法跟1中所述一样.
此部分数据导出大致6小时,数据量950G左右,分多个SCHEMA(其中一个有780G)
3)导出完成后按schema进行导入,
780G的导入过程:
1)晚上9:27开始,第二天8:01结束,耗时 11个小时左右;(注此部分数据包括大量索引)
3 周六检查数据,分析数据索引,数据迁移完成.
***
整个过程的些须经验:
1 EXPDP/IMPDP确实做了极大的改进;尤其是IMPDP,加上并行参数后,效果大增!!非常明显!!!!
2 在数据迁移过程中,发现了一个IMPDP的更好的地方(也许各位老大知道,但小弟之前确实不知道有此功能):
在两实例间迁移数据,无需先将数据expdp出来成文件,只需要在目的服务器上建立一个源服务器实例的链接,然后通过impdp直接将源服务器上schema导到目的服务器上,无需dumpfile;
NETWORK_LINK Name of remote database link to the source system.
REMAP_SCHEMA Objects from one schema are loaded into another schema.
有兴趣的朋友可以试下,在实际环境中我没采用此方式(发现晚了,以后做数据迁移,可能会采用此方式进行)
阅读(484) | 评论(0) | 转发(0) |