接続の強制切断に関するトラブルシューティング
TCP/IP を使用して SQL Server に接続している場合、次のエラーが発生する可能性があります。
エラー テキスト
エラーは、次の形式で表示されます。
TCP_PROV: 既存の接続はリモート ホストに強制的に切断されました。
"プロバイダ番号: 7、エラー: 10054、エラー メッセージ: "TCP プロバイダ: 既存の接続はリモート ホストに強制的に切断されました..."
処理されない例外: サーバーへの要求の送信時にトランスポート レベルのエラーが発生しました (プロバイダ: TCP プロバイダ、エラー: 0 - 既存の接続はリモート ホストに強制的に切断されました)。
このエラーの一般的な原因
次の表に、このエラーの一般的な原因と解決方法の一覧を示します。
原因 |
解決方法 |
---|---|
クライアントが、サポートされていないバージョンの SQL Server Native Client を使用して接続しています。 |
クライアント コンピュータの SQL Server Native Client をサーバーと同じバージョンに更新します。 |
ネットワーク ハードウェアの障害により、TCP トラフィックの一部が削除されています。 |
ネットワーク監視プログラムを使用して、TCP SYN、ACK、および FIN メッセージを分析します。 |
SynAttackProtect の設定により接続が削除されている可能性があります。 |
後続の「Windows Server 2003 SP1 で実行時の接続の強制切断」のセクションを参照してください。 |
Windows Server 2003 SP1 で実行時の接続の強制切断
Windows Server 2003 Service Pack 1 で実行されている SQL Server データベース エンジンのインスタンスに対して多数のクライアント接続を試みることによりスケーラビリティをテストする際、SQL Server がサービスを提供するより早く要求が着信すると、Windows では接続が削除される場合があります。これは、Windows Server 2003 Service Pack 1 の、着信する TCP 接続要求に対して実装するキューを制限するセキュリティ機能です。
この問題を解決するには、regedit.exe ユーティリティを使用し、次のレジストリ キーを追加します。
キー |
種類 |
名前 |
値 |
---|---|---|---|
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\ |
DWORD |
SynAttackProtect |
00000000 |
セキュリティに関する注意 |
---|
このレジストリ キーを設定すると、サービス拒否攻撃である SYN フラッドの危険にさらされる場合があります。このレジストリ値は、必要な場合にのみ、セキュリティ上のリスクを理解した上で追加してください。テストが完了したら、このレジストリ値は削除してください。 |