2009-03-09 33 views
0

同じデータベースとアプリケーションがテストマシンで異常に機能しますが、他のコンピュータでもうまく機能します。私たちは、SSLエラー例外を取得SQL Server 2000 Serverのエラー

  • :テストマシンで

    。 MS KBの記事に基づいて修正しましたが、それ以降は

  • Server error」または「General network error」と表示され、1秒あたり1-2回のストアドプロシージャに減速しました。
  • プロファイラは、アプリケーションの実行時に2000〜2500の接続があると言っています。同じアプリケーションには、他のマシンで5〜10の接続しかありません。私はランダムなエラーメッセージは、この巨大な接続数によって引き起こされると思います。

SQL Serverを再インストールし、接続プールを無効にして、すべてのデータウェアハウスを閉じました。

他に何ができますか? MSSQL2k用のより深い設定ツールはありますか?隠されたコンポーネント/ ini/config/registryキー?または私が使用できるSQLプロファイラ以外の別のプロファイラ?あなたがOLE DBリソースのプールをオフにした場合

+0

は、WindowsとSQL Serverのイベントログを確認しましたか? –

+0

SQL2Kはどのテスト・マシンのサービスパックですか?すべてのボックスに同じサービスパックがありますか? –

+0

使用している.NETのバージョンは何ですか? –

答えて

0

Thanx再び、ミッチ、悲しいことに、これらのアイデアのどれも本当の解決策ではありませんでした。驚きはありません - MSSQLからのこれらのエラーメッセージはランダムと思われます。

ランダム、I意味:

  • Xた後、[1]同時接続MSSQLは自動的に接続を閉じるために停止し、接続プールは巨大な溝。Xの前に、私は5〜10の接続しか見ませんでしたが、その後に2500とMSSQLがありました。私たちはDALで閉じられていない接続を持っていた
  • この場合、MSSQLは「一般失敗」などの非決定論的なエラーメッセージがスローされます「ユーザー(null)」のなど
  • (brrr ... 2年ぶりに隠さ)、それを多く使うと、このwreidエラーが発生しました。

[1]私はX

の具体的な値については考えている[2]私はこのクエリを使用しました:

SELECT 
     DB_NAME(dbid) as DBName, 
     COUNT(dbid) as NumberOfConnections, 
     loginame as LoginName 
    FROM 
     sysprocesses 
    WHERE 
     dbid > 0 
    GROUP BY 
     dbid, loginame 
0

何が起こる?:見て

'For SQLOLEDB provider 
'strConnect = "Provider=SQLOLEDB;server=MyServerName;OLE DB Services = -2;uid=AppUser;pwd=AppUser;initial catalog=northwind" 

' For MSDASQL provider 
'strConnect = "DSN=SQLNWind;UID=Test;PWD=Test; OLE DB Services= -2" 
0

もう一つは、あなたが常にADO.NETからストアドプロシージャのパラメータの種類と方向を指定しているかどうかです。

sqlClientは、ADO.NETで設定したパラメータをストアドプロシージャのパラメータの関連するデータ型に変換します。しかし、これは、間違った変換を引き起こす可能性があるnTextパラメータを送信しているときには失敗する可能性があります。

また、ストアドプロシージャのパラメータに非常に長い文が渡されることがあるかどうかを確認します。

1

さらに別の可能性(!):

Multiple Fixes for SQL Server .NET Data Provider

SQLCommand.CommandTimeoutがゼロに 設定されている場合、あなたは無限の タイムアウトを期待しています。ただし、SqlClientプロバイダーのバージョン1.1と1.0 が間違って SQL サーバーからの応答が2つのパケットに分割されるとタイムアウトになります。 パケットの受信直後に、 プロバイダのバージョン1.1および1.0が間違ってタイムアウトしました。この資料に含まれている修正プログラム は、 この問題を修正して、コマンドが に無限のタイムアウトを持つようにします。

+0

ありがとう、おそらくそれは動作します。私はいくつかのテストの後に戻ってきます。 – boj

関連する問題