【发布时间】:2008-08-26 09:55:44
【问题描述】:
我正在寻找可以集成到我的 CI 工作流程中的东西。
我听说过dbdeploy,但我正在寻找别的东西。我不喜欢 dbdeploy 的原因是我不想在我的服务器上安装 java。
我当然希望该解决方案不涉及将一些 shell 脚本串在一起。
【问题讨论】:
标签: database refactoring
我正在寻找可以集成到我的 CI 工作流程中的东西。
我听说过dbdeploy,但我正在寻找别的东西。我不喜欢 dbdeploy 的原因是我不想在我的服务器上安装 java。
我当然希望该解决方案不涉及将一些 shell 脚本串在一起。
【问题讨论】:
标签: database refactoring
Here是特征比较之间的
【讨论】:
这不是一个工具,但 Ambler 和 Sadalage 的书,Refactoring Databases: Evolutionary Database Design 相当不错。
【讨论】:
Redgate 可能会做你需要的一切。不过很贵。
编辑 - 具体来说:http://www.red-gate.com/products/sql-development/readyroll/
【讨论】:
您提到您喜欢 dbDeploy 并且您不想在您的服务器上安装 java。你知道这个工具的the .NET port 吗?
我最近在一个团队中使用了它,我们对此非常满意。在我们的例子中,我们的目标是 SQL 2000,但它可以很容易地配置为在其他数据库平台上运行,包括 MySQL。当然,它需要您在服务器上安装 .NET Framework……如果这是一个可接受的先决条件,而不是 java 运行时。
【讨论】:
对于那些对 liquibase 感兴趣但不喜欢 xml 迁移的人。 看看groovy-liquibase,一个支持groovy迁移的插件
Liquibase 在结构上很棒,但在 xml 迁移中却失败了。这个插件解决了这个问题
【讨论】:
这可能不是你的情况,但如果你决定使用 Java,请查看 liquibase
【讨论】:
是的,Redgate 很神奇。而且它提供的东西并不那么昂贵。
【讨论】:
尝试Agile DBRIRE 进行持续集成工作流程。它很容易设置并允许从开发数据库生成测试数据库。它还允许为暂存和生产生成增量数据库更新。该工具可以比较 DEV 和 Staging/Production DB 并生成元数据和数据更新 SQL 脚本。该工具是免费的。
【讨论】:
Visual Studio Team system(数据库版)做了一些重构。
我阅读了重构数据库这本书。我认为这很有帮助。
但在软件开发中,您构建测试以便安全地重构。他们没有触及 Refactoring Databases 书中的测试,这让我非常失望。
【讨论】:
我认为这些工具非常好,但出于我的目的,我自己编写了一个自定义工具。造成这种情况的主要原因是因为我正在使用 SQL Server Compact 3.5 数据库,所以列出的工具都不起作用。
当然,它不如 Redgate 的工具强大,但您可以非常快速地获得最重要的功能。
它能够重命名各种数据库对象并将列迁移到其他表,并为 2 个数据库创建差异脚本。
【讨论】:
Refactoring Databases 的一个重要部分是迁移部分。 不需要 EF 或 Java 的 .NET 迁移解决方案是 Rob Reynold 的 Roundhouse
可能值得一试。
【讨论】: