SSHトンネルを介してSQL Server 2005のマージレプリケーションを実行できますか?
-
04-07-2019 - |
質問
使用事例は、アカウント、セッション、ライセンスなどを担当するデータベースです。<!>#8212;クライアントの起動時にポーリングする必要があるため、高い信頼性が重要です。そのため、データセンター全体がダウンした場合に備えて、物理的に別々のネットワーク内の異なるサーバーに複製したいと考えています。同じネットワーク内の別のサーバーへのプッシュサブスクリプションを正常にセットアップしたので、これは一般に機能します。これは、今作業するために必要なネットワークへの接続外部です。
レプリケーションはネットワーク間で直接機能しません。 Microsoft VPNまたはWebレプリケーションのいずれかを提案します。後者は非効率的であると思います(そして<!> quot;と言います。注:Web同期は、ポータブルコンピューター、ハンドヘルドデバイス、および他のクライアントとデータを同期するために設計されています。アプリケーション。<!> quot;)
前者のVPNは機能しますが、VPN接続を継続的に実行することは、不必要に複雑なソリューション(セキュリティ問題の可能性は言うまでもありませんが)であると考えています。 SSHトンネルを実行したいだけです。しかし、これを行う方法を説明する記事はなく、MySQLについてもありません。
サブスクライバーにSSHサーバーをセットアップし、PuTTYを使用して<publisher>:1434
から<subscriber>:1433
へのトンネルを確立しました。ただし、SQL Server Management Studioにこの方法で接続させることはできません(:
ポート構文をサポートするかどうかはわかりません)。また、<publisher>
のSQL Server Configuration Managerで、@@servername
を指す<subscriber>
でlocalhost:1434
を指すエイリアスを設定しました。それに接続しても機能しないようです。
プッシュサブスクリプションオプションを使用したので、パブリッシャーはサブスクライバーに接続する必要がありますが、逆ではありません。
両方のサーバーはデフォルトのインスタンスを使用し、Windows Server 2003 SP 2上でSQL Server 2005 SP 2を実行します。サブスクライバー上のSSHサーバーはfreeSSHd 1.2.1です。
これはまったく可能ですか?同じネットワーク内にマシンが存在するふりをするためにSSHを活用できる別の方法はありますか?または、VPNを使用する必要がありますか?
解決
サーバーの異なる場所について話すとき、それはまた異なるドメインを意味しますか? Webレプリケーションに関するコメントは正しいですが、データベースに加えられた毎日の変更にのみ適用されます。初期のスナップショットは、たとえ巨大なデータベースであっても、どのようなサイズでもかまいません。あなたの毎日の更新が限られている場合(私にとっては数千は大丈夫だと思われる)、それのために行きます。速い!
編集:
サーバー間でデータを交換することを考え始めると、主要なドメイン/セキュリティの問題があります。 VPNまたは専用リンクを介して異なるドメインに属するサーバーを接続する必要があり、SQL Securityを使用したくない場合(避けてください!)、ドメインの信頼に関連する特定の(およびライセンス!)問題に直面します。 Webレプリケーションのスマートな側面の1つは、httpsプロトコルを介して接続を保護することにより、この種の問題(および追加コスト)を回避することです。
他のヒント
これは古い投稿であることは知っていますが、うまくいけば役立つでしょう:SQL Server Management Studioはコンマを使用してホストとポートを区切ります。