以下に示すように、動的ポートを使用して構成された新しいサーバーがあります。
このサーバーに接続するアプリケーションは次の接続文字列を使用しますが、次のエラーが発生します。
開発者に接続ポートを61844から動的ポートである53187に変更するように依頼しました。
これを実行してサービスを再開すると、アプリケーションはSQL Serverに接続できます。
動的ポートを使用する必要がある特定の理由はありますか?
SQL Server用に構成したポートを別のものが使用しているとしましょう。 SQL Serverは起動しますが、別のポートを使用しますか?ダイナミックを使用します。まったく起動しませんか?静的を使用します。
別の側面は、開発者がアプリケーションのポート番号(接続文字列)をハードワイヤードしているように見えることです。 yourserver,45346
。それはそれを行う1つの方法です。別の方法は、yourserver\instancename
などのインスタンス名を使用して接続することです。この方法でポート解決が処理されますが、サーバーマシンでSQL Serverブラウザーサービスが開始されている必要があり、UDPポート1434を使用してname-> portnumber "query"にアクセスできます。
動的ポートを使用する必要がある特定の理由はありますか?
動的ポートを使用し続ける正当な理由はありません。 SQL Serverには1433以外に既知のポートがないため、デフォルトで名前付きインスタンスに使用され、リスニングポートを開くための信頼できる唯一の方法は、起動時に使用可能なポートを選択することです。
クライアントがインスタンス名なしで、SQLブラウザーサービスを使用せずに接続できるように、インスタンスごとに定期的に固定ポートを選択する必要があります。