企业应用数据迁移要注意什么?

请教各位大虾:
最近公司应用系统在升级,新的应用与原应用的数据模型很大的改变。 请问在不影响业务操作的情况下,如何做好数据迁移工作,需注意什么? 系统是一次性切割好是否合适?

准备工作:

1、做好原始数据备份,这个不再赘述;
2、建立老系统和新系统模型的对应关系,如果发现对应不上的情况,赶紧修改;即使已经建立过关系,强烈建议再次进行核对。
3、确定迁移时间:
3.1何时进行迁移:一般来说,选择夜间没有新业务时;
3.2初步估计迁移需要多少时间:如数据较多,迁移时间较长,可以考虑将数据按条件分多个批次进行迁移。

迁移:
1、选择工具:如果是相同类型的数据库的迁移,可以考虑用存储过程,更推荐使用数据迁移工具来做,一般来说,就kettle就够了;如果是超大数据量,还不差钱的话,可以使用商业工具,Informatica,ODI等等;
2、数据库环境:建议搭建一个与新系统完全相同的测试环境,至少数据库环境要完全相同;
3、迁移:这个用工具,将老系统数据迁移到测试环境的数据库,具体过程不再赘述;如果不同类型的数据库,要特别注意数据类型之间的匹配关系;

完成迁移:
1、迁移完成后,立即启用新系统,让新系统使用测试环境的数据库,如果发现有问题,在进行修改。

基本上就这些了,最后总结一下:
1、一定要做好规划;
2、测试、测试、再测试。

我认为从以下方面:
1、做好重要数据和程序的备份,特别是数据原始参数信息,用户信息和记录等数据。很重要。
2、如果可以的话,先在测试环境中进行迁移。然后进行测试。

1.了解新老系统差异,定义数据转换规则,老系统和系统数据对应的规则。
这个过程是最复杂的,我参与一个新老系统转换,规则多大近万条。
规则完成后,抽几条检查或写SQL语句批量检查,知道数据规则OK
2.无规则数据,有些新老系统之间的数据没有规则,就是一条或者几条数据,这时如果定义规则反而会影响工作效率,可以手工做转换工作,注意,不是所有的数据都是你想象的那样,不合规的数据肯定很多,这个要做好心理准备,有时切换过后,还要进行很多的手工修改数据BUG的问题。
3.评估数据迁移时间,如果时间过长,就要从周五晚上开始迁移(老系统这时肯定要停到,不然新增数据很难再迁移过去,因为数据之间有很多对应关系)
4.老系统数据库备份,这个肯定要做的,同时需要做一个对比库(老系统的另一个备份库),一旦发现现网数据有BUG(切换后新系统),可以和对比库进行对比,修复。切记,老系统备份库任何情况下都不能修改。
5.迁移,切换新系统,发现数据BUG,对比修复。

[table]
||
[/table][code="java"][/code] :wink: