0

それぞれ同一の ASP アプリケーションを実行する 2 つの Web サーバーがあります。これらの Web サーバーは、同じ SQL サーバーに接続します。サーバーの 1 つはアプリケーションを正常に実行していますが、もう 1 つは次のエラーをスローしています。

SQL Server への接続を確立中に、ネットワーク関連またはインスタンス固有のエラーが発生しました。サーバーが見つからないか、アクセスできませんでした。インスタンス名が正しいこと、および SQL Server がリモート接続を許可するように構成されていることを確認してください。(プロバイダー: SQL ネットワーク インターフェイス、エラー: 28 - サーバーは要求されたプロトコルをサポートしていません)

Web サーバーと SQL サーバーの間の両方のトラフィックで Wireshark キャプチャを行いました。稼働中のサーバーでは、トラフィックは TCP を使用しています。稼働していないサーバーでは、SQL サーバーがサポートしていない多くの UDP トラフィックが見られます (エラー メッセージを考えると理にかなっています)。使用されるプロトコルはどこで決定されますか? 各サーバーのアプリケーションは同一であるため、アプリケーション レベルの構成の問題になることはありません。私はネットワークの男ではないので、途方に暮れています

ありがとう、

ジョセフ

4

1 に答える 1

0

接続文字列に「ネットワーク プロトコル」を設定できます。

それは試みに値します。

IPアドレス経由で接続

Data Source=190.190.200.100,1433;Network Library=DBMSSOCN;

その接続文字列は完全ではありません。関連する部分を示しています。

そのサンプルは

http://www.connectionstrings.com/sql-server-2008

この記事は古いものですが、ネットワーク ライブラリのオプションについて説明します。

http://support.microsoft.com/kb/238949

(私の経験では)最も一般的な2つは次のとおりです。

dbnmpntw - Win32 Named Pipes
dbmssocn - Win32 Winsock TCP/IP

編集

もう 1 つのトリックは、PortQryUI をインストールし、この小さなユーティリティを「クライアント」マシンに配置して、SQL Server を「poke」し、同じ結果が得られることを確認することです。

http://www.microsoft.com/en-us/download/details.aspx?id=24009

これは、ファイアウォールの問題を特定するのに役立ちます... SQL Server クライアントを使用していない場合。

于 2013-08-20T14:58:10.473 に答える