我想知道如何自动创建事务复制。
在测试环境中,我经常需要恢复生产数据。测试数据被复制到另一台服务器以进行报告(并测试所述报告)。所有这些对于脚本来说都非常简单 - 但我需要重新启用复制。
我知道我可以编写现有复制的脚本,然后在恢复后重新应用它,但如果恢复的数据库中有其他(或丢失)的对象,这就有问题。
基本上 - 我想要创建一个流程,来创建复制的基本管道,然后遍历数据库中的每个表,将其添加为一篇文章,然后对过程、视图等执行相同的操作。
只要付出一点努力(和时间),我想我就能写出一些可以完成这项工作的东西,我只是不想重新发明轮子……
谢谢。
在 SQL Server 中自动创建事务复制涉及几个步骤。下面是您可以遵循的流程,其中包括编写复制设置脚本并确保所有数据库对象都正确添加为出版物中的文章。
逐步流程
恢复生产数据:确保您的测试环境已恢复最新的生产数据。
重新创建复制:通过定义分发服务器、创建发布和添加文章来重新创建复制设置。可以使用 SQL Server Management Studio (SSMS) 或 SQL 脚本自动执行此过程。
以下是可以帮助您自动化此过程的示例脚本。
您可以使用 SQL Server 代理作业自动执行这些脚本。创建按顺序运行这些脚本的作业。确保错误处理和日志记录到位以监控该过程。
但是,最好考虑以下几点:
安全性:确保您的脚本适当地处理安全性,特别是在生产环境中。
模式变更:如果模式变更频繁,请确保您的脚本能够动态处理这些变更。
测试:在部署自动化之前,请在非生产环境中彻底测试它。