2

サーバーのレプリケーション設定が正しいことを確認するための基本的なスモークテストを実行するSQLスクリプトを作成したいと思います。

複製されることになっているテーブルに対する単純な一連のCRUD操作で、私が求めているものが達成されると思います。ワークフローは次のようになると思います。

  1. INSERTパブリッシャーデータベースのレプリケートされたテーブルへの行
  2. レプリケーションジョブが実行されるのを待ちますか?
  3. サブスクライバデータベースのテーブルに行が存在することを確認します

私の質問は、ステップ2をどのように行うかです。表を見ると、関連するジョブが最後に実行されたのはいつかを確認できると思いますがmsdb..sysjob*、これが問題を解決するための最良の方法かどうかはわかりません。

4

1 に答える 1

5

スナップショットレプリケーションの場合、両方のジョブ(スナップショットエージェントとディストリビューションエージェント)が実行されているかどうかを実際に確認できますが、マージとトランザクションの場合、エージェントは継続的に実行されるため、確認できません。

トランザクションの場合、sp_posttracertokenおよびsp_helptracertokenhistoryを使用して、トレーサートークンを挿入し、トレーサートークンがサブスクライバーに配布済みとしてマークされていることを確認できます。

于 2010-01-27T23:35:20.797 に答える