Log Flush Wait Timeに問題があります-現在のところ、平均は30000ms(最小0最大35000)です。データベース自体のパフォーマンスは低く、トランザクションログも合理的な説明を超えて成長しています。ログファイルは、ディスクドライブ全体をログファイルでいっぱいにするのではなく、サイズを適切に保つために縮小する必要があります。私はDB待機を確認しましたが、それらは一般的にLCK_M_S
、またOLEDB
。データベース自体はSQL 2016 Always-on上にあります。
設定にSQLサーバーの問題がある可能性があると私はまだ信じています-SQLメモリの負荷が非常に高いこともわかります(30000のフリーストール、〜900000000ページの読み取り、30000ページの寿命)。サーバーには32GB RAM、ホスティングがあります。 〜80データベース。
アプリケーションがこれのおそらく主な理由であることは知っていますが、それでも、手続きに関する提案はありますか?
通常の場合、この場合:IOサブシステムは低速です。 SSDを使用していますか?
DMVは友達です。
アイデンティティと問題の切り分け
ログフラッシュ待機時間
sys.dm_io_virtual_file_stats
とsys.dm_io_pending_io_requests
を使用して調べるログファイルのサイズを適切に設定する
トランザクションログのバックアップ
メモリに関して言えば、32 GBの30000 PLEが私には良さそうですRAMサーバー。これはサーバーのメモリではなく、SQLのメモリであると仮定します。
リソース: