【发布时间】:2018-04-14 05:42:40
【问题描述】:
我有一种情况,我必须将我的数据库版本(架构)与我的所有客户端(可能不同的版本)进行比较,并部署必要的更改以使所有版本都相似。我正在寻找一种自动将我的数据库架构与我的客户架构进行比较、生成差异脚本并执行它以确保所有版本都相同的方法。
我知道 Red Gate 和类似工具,但问题是我需要从我的客户端获取架构(这很难获取)。
提前致谢。
【问题讨论】:
-
如果无法从客户端获取架构,您将如何比较架构?
-
您解释了一种可以做到这一点的方法。不太确定这里的问题是什么。
-
执行此操作的一般方法是使用版本控制和更新/回滚脚本,部署的架构版本存储在客户端,您可以根据需要进行更新。我个人最喜欢的迁移工具是mybatis migrations,其他选项stackoverflow.com/questions/131020/migrations-for-java
-
SQL Server Data Tools 带有架构比较和迁移工具。但是,如果您无法访问您的客户架构,您认为您可以做什么?您可以尝试使用该工具在客户端自动生成更改脚本,但这可能是灾难性的。
-
您拥有 SQL 比较吗?如果是这样,我将在此处发布一个答案,描述如何从客户端获取架构而不需要 SQL 比较的副本。
标签: sql sql-server ssms sqlpackage sqlcompare