比较Ubuntu / Linux上的ms-sql数据库架构
收藏

ms-sql(在linux上)中是否有比较两个数据库之间模式的命令?


最佳答案:

我有非常相似的需求(我目前在Linux上使用PostgreSQL),如果不一定要使用ms sql命令,我有两种可能的解决方案:
解决方案1:
使用Microsoft的mssql脚本程序(https://github.com/Microsoft/mssql-scripter
例如,您可以通过

pip install mssql-scripter.

并执行以下命令:
$ mssql-scripter -S serverName -d databaseSource -U user > ./source.sql
$ mssql-scripter -S serverName -d databaseTarget -U user > ./target.sql
$ diff source.sql target.sql

解决方案2:
如果你有可能使用桌面环境(如我所做的),我会使用比较工具,这在我看来是更友好的用户。
TiCodeX SQL Schema Compare(https://www.ticodex.com)是一个很好的工具,可以在Linux、Windows和Mac上运行,可以比较MS-SQL、MySQL和PostgreSQL数据库的模式。使用方便有效。可能会对你有帮助。
为了使用它:
配置源数据库(指定服务器名、用户名、密码等…)
配置目标数据库
如果要排除数据库对象或更改输出,可以使用一些选项
按比较按钮
您将得到两个数据库之间的差异,最终还将得到迁移脚本,以使目标数据库与源数据库相同。

    公众号
    关注公众号订阅更多技术干货!