Database 有什么样的数据库重构工具?

Database 有什么样的数据库重构工具?,database,refactoring,Database,Refactoring,我正在寻找与我的CI工作流程集成的内容。 我听说过,但我在找别的东西。我不喜欢dbdeploy的原因是我不想在服务器上安装java 当然,我更希望解决方案不涉及将一些shell脚本串在一起。可能会完成您需要的所有操作。虽然很贵 编辑-特别是:是的,红门是魔法。而且它提供的东西也不是那么昂贵 它不是一个工具,但Ambler和Sadalage的书非常好。Visual Studio Team system(数据库版)进行了一些重构 我读了《重构数据库》一书。我认为这很有帮助 但在SoftwareDev

我正在寻找与我的CI工作流程集成的内容。
我听说过,但我在找别的东西。我不喜欢dbdeploy的原因是我不想在服务器上安装java

当然,我更希望解决方案不涉及将一些shell脚本串在一起。

可能会完成您需要的所有操作。虽然很贵


编辑-特别是:

是的,红门是魔法。而且它提供的东西也不是那么昂贵

它不是一个工具,但Ambler和Sadalage的书非常好。Visual Studio Team system(数据库版)进行了一些重构

我读了《重构数据库》一书。我认为这很有帮助


但在SoftwareDev中,您构建测试是为了安全地进行重构。他们没有涉及到《重构数据库》一书中的测试,这让我非常失望。

我认为这些工具非常好,但出于我的目的,我已经编写了自己的定制工具。这样做的主要原因是因为我正在使用SQL Server Compact 3.5数据库,所以列出的工具都不起作用

当然,它不如Redgate的工具强大,但您可以很快获得最重要的功能


它可以重命名所有类型的数据库对象,将列迁移到其他表,并为2个数据库创建一个差异脚本。

您提到过,您喜欢dbDeploy,并且不希望在服务器上安装java。你知道这个工具吗


我最近在一个团队中使用了这个,我们对此非常满意。在我们的例子中,我们的目标是SQL2000,但它可以很容易地配置为针对其他DB平台运行,包括MySQL。当然,它需要您在服务器上安装.NET Framework。。。如果与java运行时相比,这是一个可接受的先决条件。

可能不是您的情况,但是如果您决定使用java,请查看一下持续集成工作流。它易于设置,并允许从Dev db生成测试db。它还允许为登台和生产生成增量数据库更新。该工具可以比较开发和暂存/生产数据库,并生成元数据和数据更新SQL脚本。该工具是免费的。

是功能比较

  • 飞行路线
  • 液化
  • c5 db迁移
  • 数据库部署
  • mybatis
  • 迁移的
  • 迁移4j
  • 维护
  • 自动插接

适用于那些对liquibase感兴趣但不喜欢xml迁移的人。 看看,一个支持groovy迁移的插件

Liquibase在结构上很好,但在xml迁移方面却没有成功。这个插件解决了这个问题

的一个重要部分是迁移部分。 不需要EF或Java的.NET迁移解决方案是Rob Reynold的


也许值得一看。

正如“他们”所说,Redgate是一个炸弹。是我,还是这些都是Java工具?我(和OP)不想部署Java堆栈。这也不是一个完整或无偏见的功能比较。请随时在github.com/flyway/flywaydb.org上的问题跟踪程序上提出改进/更正建议