sql-server - SQL Server 复制测试

标签 sql-server sql-server-2008 replication database-replication

我想编写一个 sql 脚本来进行基本的冒烟测试,以检查我的服务器上的复制设置是否正确。

我认为针对应该复制的表的一组简单的 CRUD 操作将实现我所追求的目标,我想工作流程将如下所示:

  1. INSERT 一行到发布者数据库的复制表中
  2. 等待复制作业运行?
  3. 检查订阅者数据库表中是否存在该行

我的问题是,我该如何执行第 2 步?我想我可以通过查看 msdb..sysjob* 表来检查相关作业上次执行的时间,但我不确定这是解决问题的最佳方法。

最佳答案

对于快照复制,您确实可以检查两个作业是否都已运行(快照代理和分发代理),但对于合并和事务,您无法检查,因为代理连续运行。

对于事务,您可以插入跟踪 token 并使用sp_posttracertoken验证跟踪 token 何时被标记为分发给订阅者。和 sp_helptracertokenhistory .

关于sql-server - SQL Server 复制测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2150907/

相关文章:

sql-server - 当右表中没有数据时,使用 LEFT JOIN 为 JSON 选择返回单个元素数组

c# - 使用 System.IO.FileStream 将字节数组保存为图像时无法看到图像

sql - 我可以在SQL Server中创建创建全局函数吗?

基于 MySQL 语句的复制 : Does binlog contain exact queries executed on master?

lucene - 搜索索引复制

kubernetes - Arangodb 在一段时间后停止异步复制

sql-server - SQL Server Mgmt Studio 搞乱了我的数据库!

asp.net - 使用数据库或 MSMQ 进行排队?

SQL - 如何计算一列中多次出现的值

php - PHP 中的报告查看器