持续集成和数据库管理
当与其他几个人一起工作时,通常有几个人有不同的领域,如数据库.
我的挑战是如何让几个人在持续的集成环境中编辑数据库模型. 开发人员建议编写一个“版本控制脚本”,其中每个编辑都输入到.sql脚本中,并具有数据库能够检测到的版本号.该文件中的新增功能将在该文件中加上一个版本,并且一旦脚本被提交并且运行了构建,数据库将被更新. 我也听说过发布商/订阅者…并阅读了一下. 您如何在日常工作中管理这种情况,以及您可以提供什么建议,使数据库更改尽可能无缝地运行? **编辑** 已经提到了迁移框架和迁移脚本.如果你有一些实践经验,并建议一个框架,那也将不胜感激. 解决方法引用杰夫阿特伍德在优秀的 Get Your Database Under Version Control职位:
真的,整个系列是值得阅读,即使你们中的很多人似乎是特别感兴趣的第三部分.和BTW,看看第三部分提到的Bulletproof Sql Change Scripts Using INFORMATION_SCHEMA Views文章.您可能已经意识到了,但它解释了为什么写idempotent更改脚本很重要的其他好的做法. 关于工具,您可能需要考虑基于ThoughtWorks软件开发实际经验的UpToDater(以代码为中心),LiquiBase(基于xml)或… dbdeploy的小宝石.这不是第一个不好,但这是我的首选(可用于Java,PHP或.NET). (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |