私は通常、Visual Foxpro 9.0 を使用して、デスクトップ コンピュータから Windows Enterprise Server (2003) で実行されている MS SQL Server 2005 へのクエリを作成します。私のクエリは反復的で、1 つのセッションで SQL サーバーに 200,000 回もクエリを実行することがあります。最初の数日間、私のプログラムは正常に動作していましたが、突然 SQL Server がクエリの処理を拒否しました。
SQL Server のログを確認したところspid
、クエリ プロセスが強制終了されていることがわかりました。
プロセス ID 71 は、ホスト名 SQLSERVER、ホスト プロセス ID xxxx によって強制終了されました。
ホスト名は、クエリしている SQL Server ではなく、別の SQL Server であるため、混乱しています。
アクティビティ モニターから、問題のプロセス ID に次の情報があることに気付きました。
62 NO sa master sleeping 0 AWAITING COMMAND Sql Agent - Generic Refresher ..
詳細にメッセージが表示されます。
NO_BROWSETABLE を ON に設定
最後に、ビジュアル FoxPro に問題があるのではないかと考えて、SQL Server Management Studio 内からデスクトップ マシンからクエリを実行しようとしましたが、SQL Server にクエリを実行しようとすると、同じ問題が発生しました。
リクエストをサーバーに送信するときにトランスポート レベルのエラーが発生しました。(プロバイダー: TCP プロバイダー、エラー: 0 - 既存の接続がリモート ホストによって強制的に閉じられました。)
接続を確立することはできますが、サーバーによってクエリが拒否されるため、気が遠くなります。繰り返しますが、私のデスクトップに問題があると考えて、別のコンピューターからクエリを実行してみました。最初は動いていましたが、突然同じ問題が発生しました。現在、これら 2 つのデスクトップはサーバーによって拒否されています。
これはセキュリティかもしれないと考えていますが、この問題を解決する方法がわかりません。
また、データベースのバックアップを別のホストに復元しようとしましたが、同じシナリオが発生しました...最初は問題ありませんでしたが、数回のクエリセッションの後に問題が発生しました。
ODBC SQL Server ドライバーは次のとおりです。
- SQL Server 用の Microsoft Ole DB プロバイダー
- SQL Server ネイティブ クライアント 10.0
- SQL Server ネイティブ クライアント 11.0
可能な解決策をウェブで検索し、提案された解決策、spid
ブロッキング、煙突のオフロード、rss などを試しましたが、役に立ちませんでした。どうぞ、あなたの専門家のアドバイスが必要です!
前もって感謝します。