SQL Server 2005データベースを新しい物理サーバーに移動し、それ以降、30秒間持続する接続をすべて終了しています。
Oracle SQL Developerでこれが発生しており、pyodbcを使用してPythonから接続すると、以前はすべてが完全に機能していましたが、Pythonは30秒後にこのエラーを返します。
('08S01'、' [08S01] [FreeTDS] [SQL Server]サーバーからの読み取りに失敗しました(20004)(SQLExecDirectW)')
SQL Server 2005データベースを新しい物理サーバーに移動し、それ以降、30秒間持続する接続をすべて終了しています。
Oracle SQL Developerでこれが発生しており、pyodbcを使用してPythonから接続すると、以前はすべてが完全に機能していましたが、Pythonは30秒後にこのエラーを返します。
('08S01'、' [08S01] [FreeTDS] [SQL Server]サーバーからの読み取りに失敗しました(20004)(SQLExecDirectW)')
まず最初に必要なのは、SQLサーバーのプロファイルを作成して、アクティビティが発生しているかどうかを確認することです。実行速度の遅いクエリ、CPUおよびメモリのボトルネックを探します。
また、次のようにクエリ文字列にタイムアウトを含めることができます。 "Data Source =(local); Initial Catalog = AdventureWorks; Integrated Security = SSPI; Connection Timeout = 30"; 必要に応じてその数を拡張します。
ただし、「タイムアウト」は時間接続を意味するのではなく、接続を確立しようとしている間待機してから終了する時間であることを忘れないでください。
この問題は、データベースのパフォーマンスまたはネットワークの問題に関するものだと思います。
たぶん、リモートクエリのタイムアウトを確認しますか?デフォルトは600に設定されているはずですが、おそらく30に設定されていますか?ここの情報