3

2 つの異なるデータベース サーバー (2 つの 32 ビット Windows 2003、1 つの SQL Server 2000、1 つの SQL Server 2005) にアクセスする VB6 アプリケーションが多数あります。約 10 分ごとに、いくつかのエラーが発生します。

[Microsoft][ODBC SQL Server ドライバー]タイムアウト期限切れ [Microsoft][ODBC SQL Server ドライバー][DBNETLIB]SQL Server が存在しないか、アクセスが拒否されました。[マイクロソフト][ODBC SQL Server ドライバー]ConnectionRead()

これは、ランダムな時間に十数台の異なるコンピューターで発生しています。また、すべて同じネットワークを介して動作する IP 電話もあり、それらには問題はありません。ユーザーのコンピューターに VNC を接続してエラーを再現することもできますが、VNC は引き続き機能します。電子メールも機能します。問題を引き起こしているのは、SQL Server への ODBC 接続のようです。エラーは両方の SQL Server で発生します。私たちはグーグルを精査しましたが、解決策を思いつくことができませんでした. 問題を診断するためにできることはありますか? そこに修正はありますか?

アップデート:

サーバーにもクライアントにも内部ファイアウォールはありません。サーバーのDNS名を介してTCP / IP経由で接続します(IPアドレスも試しました)。

一方のサーバーには Windows 2003 SP2 があり、もう一方のサーバーにはありません。

奇妙なことに、何年も問題なく機能していたのに、突然これらのエラーが発生しています。これらのサーバーでは、かなり長い間何も変更されていません。これにより、スイッチが悪いと思われるようになりますが、他のもの (電子メール、電話、vnc、ファイル サーバーなど) はすべて問題なく動作するため、そうではないようです。

4

4 に答える 4

2

この Microsoft Knowledge Base の記事を参照してください。

Windows Server 2003 SP2 のインストール後にいくつかの問題が発生する

OLE DB プロバイダーに切り替えることもお勧めします。私の経験では、ODBC よりも高速で信頼性も高いです。

接続文字列

下にスクロール: SQL Native Client OLE DB Provider

于 2008-12-18T19:22:17.330 に答える
0

なぜこれが起こったのかはわかりませんでした。サーバーを SQL Server 2008 にアップグレードしたところ、エラー メッセージが表示されなくなりました。

于 2009-09-28T20:18:29.703 に答える
0

デフォルト以外のインスタンスを使用していますか? または、内部ファイアウォールはありますか?

内部ファイアウォールの背後にあるクライアントからのこの正確な (IIRC) 断続的な接続の問題を回避するために、「server.fqdn.tld\instance,port」に変更しました。

SQL 接続のみが影響を受けました。

于 2008-12-18T19:37:25.893 に答える
0

私は最近、非常によく似た問題に遭遇し、ここに投稿しました

ScottE は解決策を見つけました。

于 2010-06-23T17:53:00.187 に答える