如何自动化SqlCompare,比较和同步不同服务器上的数据库以便每晚运行?你能给我一个关于如何处理这个问题的链接或简要步骤吗?
答案 0 :(得分:2)
您可以从.bat或.cmd文件中将其作为计划任务运行
在任务内部只需执行以下操作:
cd "C:\Program Files\Red Gate\SQL Compare 7"
SQLCompare /db1:<dbname>
/db2:<dbname>
/synchronize
然后执行同步。或者,您可以通过CI系统执行此操作,并通过msbuild
调用相同类型的命令答案 1 :(得分:2)
这可能不是正确的工作工具SQLCompare只关注模式,这可能会对您的数据产生一些不幸的影响。考虑一下,如果您更改列,RedGate将
听起来你想要的是夜间复制方案,它将保留数据和模式。
答案 2 :(得分:2)
我自己刚刚解决了这个问题。在我的情况下,我有人在我不知道的数据库中徘徊,打破了应用程序。不幸的是我不能让他们停止在数据库中玩,所以我用C#编写了一个简单的程序。它执行SQL Compare命令并在响应字符串中查找“所选对象是相同的”。如果它没有找到这个,它会通过电子邮件通知我有事情发生了。我使用Windows Scheduler在上午和下午安排它。
这不是最优雅的解决方案,但它有效。
答案 3 :(得分:1)
如果您想使用CI服务器来实现此目的,您现在可以使用新发布的CI命令行和http://www.red-gate.com/ci上可用的构建脚本示例文件来执行此操作
对于TeamCity用户,有一个自定义插件。
这些是免费下载,但请记住,您需要相应的Red Gate许可才能在试用期之后使用此版本。
答案 4 :(得分:0)
您可以尝试使用自动化软件,使用调度程序或触发器每晚启动它。 Automation Anywhere对此非常有用。如果您想要更多信息或只是谷歌,请告诉我。 - 汤姆