【状況】
SQLServer2012を使用し、同ドメイン内のサーバAとサーバBでレプリケーションを行うために、現在色々とテストをしています。
レプリケーションの種類はトランザクションです。
常時ではなく、要求時にのみレプリケーションされるようにしたい。
サーバAをパブリッシャー、サーバBをサブスクライバーとし、プルサブスクリプションを行いたいのですが、上手くいかずにジョブ失敗となってしまいます。
プッシュの場合は、問題なくレプリケーションが実行されます。
【エラー内容】
サブスクライバーから同期を開始後、レプリケーションモニターを確認し、「ディストリビューターからサブスクライバーまでの履歴」を確認すると、
「OSエラー3のため、(パス)¥テーブル名_1_2.preを読み取れませんでした」
と表示されています。
ただ、サーバAには上記のファイルが確かに存在しています。
【実行したこと】
・サーバAはファイアーウォールが無効になっているが、サーバBはファイアーウォールが有効になっていた。
そのため、ポート1433.1434をTCP.UDP共に開放(送信、受信ともに)
・エラーに記載したファイルパスに、何らかのアクセス権が必要であるのかと思ったため、ひとまずEveryoneにフルコントロールを許可
プッシュは成功するのに、プルが失敗する状況で何が原因なのかわからなくなってきています。
何か考えられる原因があれば、些細なことでもアドバイスいただけないでしょうか。
よろしくお願いします。
あなたの回答
tips
プレビュー