数据库的迁移要注意哪些问题
答案:2 悬赏:10
解决时间 2021-01-22 15:59
- 提问者网友:一抹荒凉废墟
- 2021-01-22 04:59
数据库的迁移要注意哪些问题
最佳答案
- 二级知识专家网友:怀裏藏嬌
- 2021-01-22 05:16
分布式大数据迁移工具 (二) 原创分享中,请参考
全部回答
- 1楼网友:酒安江南
- 2021-01-22 06:14
1.程序逻辑部分,新逻辑上线,注意对老逻辑的兼容,千万不要不管三七二十一暴力替换。
2.数据库部分:
1)能建新表尽量建新表以避免对老数据的破坏。
2)如果老表有字段增加,千万不要做非空,唯一性的约束,否则后果自负。
3)假如需要减字段,那么请考虑临时替代的方案,比如新建一张临时表,让程序先取临时表数据,最后等新表建立后再切换过来,导入数据。
3.CACHE等需要序列化,反序列化的部分。一定要兼容原先在缓存中的数据,例如SID千万不要变化,否则反序列化失败,假如有字段需要增加,那么考虑第一次读入先取数据库。
4.外部接口相关的,能不要求外部接口联调,尽量就不做联调,一是麻烦,二是风险大。尽量对原接口传入和传出的数据保持兼容。假如有变化,考虑用适配器封装,实在没办法再实行下策。
5.注意操作的先后顺序,这个也是非常重要,例如你先发了数据库,但是程序还是老的,并且会受到影响,那么就挂了。
2.数据库部分:
1)能建新表尽量建新表以避免对老数据的破坏。
2)如果老表有字段增加,千万不要做非空,唯一性的约束,否则后果自负。
3)假如需要减字段,那么请考虑临时替代的方案,比如新建一张临时表,让程序先取临时表数据,最后等新表建立后再切换过来,导入数据。
3.CACHE等需要序列化,反序列化的部分。一定要兼容原先在缓存中的数据,例如SID千万不要变化,否则反序列化失败,假如有字段需要增加,那么考虑第一次读入先取数据库。
4.外部接口相关的,能不要求外部接口联调,尽量就不做联调,一是麻烦,二是风险大。尽量对原接口传入和传出的数据保持兼容。假如有变化,考虑用适配器封装,实在没办法再实行下策。
5.注意操作的先后顺序,这个也是非常重要,例如你先发了数据库,但是程序还是老的,并且会受到影响,那么就挂了。
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯