私は SQL Server レプリケーションを初めて使用し、いくつかの変更を既存のレプリケートされた環境にプッシュしました。これは、トランザクション レプリケーションを備えた SQL Server 2005 SP3 です。
新しいテーブルを作成し、既存のテーブルに列を追加し、いくつかの SP を追加しました。これはすべて、発行者データベースで行いました。新しいスナップショットを作成し、サブスクリプションを再初期化しました。新しいテーブルと新しい列が新しいサーバーに複製され、データが正常に同期されましたが、1 回だけです。
直後に、レプリケーション モニターがエラーを報告しています。[ディストリビューターからサブスクライバーの履歴] タブに、「サブクエリが複数の値を返しました」というメッセージが表示されます。試行されたコマンドは...
delete from MSsubscription_articlecolumns
where artid=89 and
agent_id = (
select id from MSsubscription_agents
where update_mode > 0 and
UPPER(publisher) = UPPER('xxxx') and
publisher_db = N'xxxx' and
publication = N'xxxxx'
) end
サブスクリプション エージェントが重複するのはなぜですか? これを修正するにはどうすればよいですか? 助けてくれてありがとう。