首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >升级事务内的大型数据库

升级事务内的大型数据库
EN

Database Administration用户
提问于 2015-11-02 09:03:55
回答 1查看 42关注 0票数 0

假设有一个大型数据库,正常的升级(结构变化和数据升级)目前大约需要2-3天(不是问题,在生产期间没有完成,每年约1-2次)。

目前,备份已经完成,如果有任何失败,将恢复备份,并检查升级脚本的原因。我们正在研究在事务中升级数据库的可能性,如果发生任何事情,就回滚更改。

是否有任何最佳做法、理由、知识和/或经验可以说明这是否是一个好主意?

谢谢

EN

回答 1

Database Administration用户

发布于 2015-11-02 18:35:49

恢复到有效备份是最常见和最安全的方法。通过对更改进行版本控制,可以减少需要从备份恢复的风险和可能性。

例如,假设您的升级过程涉及50个步骤,这些步骤都有一定的顺序/顺序要求。在应用重新引导之后,任何步骤或一小组步骤都应该安全地重新调整DB中的版本号,这样您就可以确切地知道上一次成功的升级步骤是什么。然后,您可以恢复该进程,而不必重新启动。

将此添加到事务中的每个步骤或步骤集合中,将有助于确保升级步骤符合ACID要求,并使升级过程更加健壮。我们使用一些主要的升级来实现这一点,并且很少需要在中间出现故障时进行恢复,除非其中一个升级步骤的脚本中有错误。

票数 1
EN
页面原文内容由Database Administration提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://dba.stackexchange.com/questions/119807

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档