当社には、Web ポータル用のクライアント データベースをホストする専用サーバーがあります。このデータベースに接続するには、IP アドレスが必要です。
サーバー上でスナップショットの公開が既に完了しているので、マージ レプリケーションを試してみることにしました。
クライアントからサブスクリプションを作成しようとすると、IP アドレスを入力できず、次のエラーが表示されます。
SQL Server レプリケーションでは、サーバーに接続するために実際のサーバー名が必要です。サーバー エイリアス、IP アドレス、またはその他の別名による接続はサポートされていません。実際のサーバー名を指定してください。
出版物とサブスクリプションを混同していませんか? ローカルではない出版物に接続するにはどうすればいいですか?
答え1
エラー メッセージは正しいです: レプリケーションはサーバー名に関して「おかしい」です。使用する必要があるものを確認するには、select name from sys.servers where server_id = 0
トポロジ内のすべての参加者に対して を実行します。
答え2
もちろん、選択肢は 3 つありますが、私の状況に当てはまるのは 2 つだけです。サイトにアクセスしたので、その選択肢が何であるかを明確にします。
マージレプリケーション- マージ レプリケーションは、トランザクション レプリケーションと同様に、通常はパブリケーション データベース オブジェクトとデータのスナップショットから開始されます。パブリッシャーとサブスクライバーで行われた後続のデータ変更とスキーマ変更は、トリガーによって追跡されます。サブスクライバーは、ネットワークに接続するとパブリッシャーと同期し、前回の同期以降にパブリッシャーとサブスクライバー間で変更されたすべての行を交換します。
スナップショットレプリケーション- スナップショット レプリケーションでは、特定の時点のデータがそのまま配信され、データの更新は監視されません。同期が発生すると、スナップショット全体が生成され、サブスクライバーに送信されます。
さて、問題の核心に移りましょう。
インターネット経由のレプリケーションの種類によって、セキュリティ レベルは異なります。また、FTP サイトを使用してレプリケーション ファイルを転送する場合は、サイトをセキュリティ保護しながらもレプリケーション エージェントがアクセスできるようにするための予防措置を講じる必要があります。
仮想プライベートネットワーク
仮想プライベート ネットワーク (VPN) の使用は、インターネット経由でレプリケーションを実装するための最も安全なオプションです。VPN にはクライアント ソフトウェアが含まれており、コンピューターはインターネット (または特別な場合はイントラネット) 経由で専用コンピューターまたはサーバーのソフトウェアに接続できます。オプションで、両端での暗号化とユーザー認証方法により、データを安全に保護できます。インターネット経由の VPN 接続は、論理的にはサイト間のワイド エリア ネットワーク (WAN) リンクとして機能します。
VPN は、あるネットワークのコンポーネントを別のネットワーク経由で接続します。これは、ユーザーがインターネットまたは別のパブリック ネットワークをトンネリングできるようにすることで実現されます (Microsoft® Windows NT® バージョン 4.0 または Microsoft Windows® 2000 オペレーティング システムで使用可能な Microsoft Point-to-Point Tunneling Protocol (PPTP)、または Windows 2000 オペレーティング システムで使用可能な Layer Two Tunneling Protocol (L2TP) などのプロトコルを使用)。このプロセスにより、以前はプライベート ネットワークでのみ使用可能だったのと同じセキュリティと機能が提供されます。
まとめると、公開するには同じドメイン、VPN、または IIS を使用する必要があります。SQL Server は、同じドメイン上にない限り、Sql Server から Sql Server に直接公開しません。