我试图使用T-SQL(使用Octopus部署的Ready-Roll数据库源控制工具)将架构更改应用到发布数据库,但是它迫使我停止脚本运行的复制。 如果有关系,我正在运行事务复制。
这挑战了部署自动化的目的,而且要求复制重置是非常昂贵的。
Transact-SQL (TSQL)是一个search和获取工具。 它可以用来更改数据库的模式。 它通过复制命令来完成。 如果TSQL不起作用,则可能需要另一个步骤。 您可能需要采取不同的方法重新启动stream程。
如果在更改发布数据库的模式的过程中被迫停止复制,则必须考虑一个重要因素。 数据库是否有一个自动冻结任何复制过程的安全标签。 如果是这样,那么你必须采取必要的步骤来发现独特的数据库质量。 这将使你辨别任何安全标签。
另一个select是数据库的多样性。 这个选项带有一个问题; 这是TSQL工具不能工作的唯一发布数据库吗? 这个问题开辟了解决问题的各种新的可能性和途径。 首先,如果你偶然发现了一个给你“停止复制”消息的数据库,那么问题不在于TSQL,而是数据库中的一个问题。
如果在任何发布数据库上发生“停止复制”消息,则必须考虑stream程中的步骤。 TSQL被devise为复制器,它应该改变数据库的模式。 但是,有一些必须采取的步骤。
一定要考虑分配参数。 TSQL是否匹配这些参数。 什么是安装值? 它是否必须为零才能使复制过程具有适当的操作平台? 你的交易过程需要很长时间吗? 一些发布数据库具有最长的事务保留期限。 最后,您的TSQL脚本文件是否按照逻辑顺序执行指定的任务? 最后一个快速考虑。 Transact-SQL脚本制定者应该考虑是否手动configuration了主题数据库脚本。