適用対象:SQL Server
詳細
属性 | 値 |
---|---|
製品名 | SQL Server |
イベント ID | 845 |
イベント ソース | MSSQLSERVER |
コンポーネント | SQLEngine |
シンボル名 | BUFLATCH_TIMEOUT |
メッセージ テキスト | バッファー ラッチを待機中にタイムアウトが発生しました。ページ %S_PGID の型 %d、データベース ID %d。 |
説明
ラッチを取得するためにプロセスが待機中でしたが、制限時間に達したため、取得できませんでした。 このエラーは、I/O 操作の完了までに時間がかかりすぎる場合に発生する可能性があります。通常は、他のタスクによってシステムのプロセスが中断された結果のエラーです。 場合によっては、このエラーはハードウェア障害の結果である可能性があります。
原因
このエラー メッセージは、ご利用のシステムの全体的な環境によって異なります。 次のいずれかの状況では、過剰なシステムが発生する可能性があります。
- 入出力 (I/O) とメモリのニーズを満たしていないハードウェア
- 不適切に構成およびテストされた設定
- 非効率的な設計
システムの負荷が高く、ワークロードの需要を満たさない場合、エラー 845 が発生する可能性があります。 負荷の高い環境の一般的な原因には、次のようなものがあります。
- ハードウェアの問題
- 圧縮されたボリューム
- 既定以外の SQL Server 構成設定
- 非効率的なクエリまたはインデックスの設計
- データベースの自動拡張または自動圧縮操作が頻繁に発生する
ユーザー アクション
このエラーを回避するには、次の操作を試してみます。
ハードウェアにボトルネックがあるかどうかを判断します。 適切な開始場所については、「 ボトルネックの特定 」を参照してください。 必要に応じて、ご利用の環境の構成、クエリ、負荷のニーズに合わせてハードウェアをアップグレードしてください。
すべてのハードウェアが正しく機能していることを確認します。 記録されたエラーを確認し、ハードウェア ベンダーの提供する診断を実行します。 エラー ログまたはイベント ログで、関連する I/O エラーがないか調べます。 通常、I/O エラーはディスクに障害があることを示しています。
ディスク ボリュームが圧縮されていないことを確認します。 圧縮ドライブにデータ ファイルとログ ファイルを格納することはサポートされていません。 データベース ファイルとファイル グループに関するページを参照してください。 圧縮ドライブのサポートの詳細については、次の記事を参照してください。 圧縮ボリュームでの SQL Server データベースのサポートの説明
次のすべての SQL Server 構成オプションをオフにすると、エラー メッセージが消えるかどうかを確認します。
クエリをチューニングして、システムで使用するリソースを削減します。 パフォーマンス チューニングは、システムの負荷を軽減し、個々のクエリの応答時間を短縮するのに役立ちます。
autoshrink プロパティを OFF に設定すると、データベース サイズに対する変更のオーバーヘッドが軽減されます。
自動拡張プロパティを、頻度の低い十分な大きさの増分に設定してください。 ジョブをスケジュールしてデータベース内の使用可能な領域を確認し、ピーク外の時間帯にデータベース サイズを増やします。
応答していないタスクや他の重大なエラーがないか、エラー ログで調べます。 根底にある問題の根本原因を示している場合があるため、これらのエラーを先に解決してください。
アサートなどの重大なエラーが頻繁に発生する場合は、これらの問題を解決してください。
845 エラー メッセージの頻度が低い場合は、エラーを無視できます。