SQL Serverが遅くなった? まずこれを試せ!

2021年6月3日木曜日

SQL Server

t f B! P L

突如、SQL Serverが遅くなった… 今まで、一瞬で応答が返ってきていたSQLが、数十秒かかるようになった…

このように、SQL Serverを使っていると、突如として遅くなり性能問題になることがあります。性能劣化が発生する要因は多岐にわたるため、コレっていう解決方法がありませんが、今回は比較的よく発生する統計情報と、実行計画のキャッシュに起因する問題の対策方法を紹介します。

スポンサーリンク

統計情報の再取得

SQL Serverでは、テーブルのデータ件数やデータのカーディナリティの情報など、統計情報としてテーブルデータの情報を持っています。

この統計情報が実際にテーブルに入っているデータと大きく違っていると、SQLの実行計画を立てる時に、非効率なアクセスパスになることがあり、結果的に性能劣化に繋がります。

統計情報は、次のSQLで更新することができ、更新することで最適な実行計画になり、性能問題が改善することがあります。

■ テーブル指定で統計情報を更新する場合

UPDATE STATISTICS <テーブル名>

■ データベース全体の統計情報を更新する場合

sp_updatestats 

スポンサーリンク

実行計画のキャッシュをクリア

・ インスタンス単位で実行計画のキャッシュをクリア

DBCC FREEPROCCACHE;
スポンサーリンク
スポンサーリンク

このブログを検索

Profile

自分の写真
Webアプリエンジニア。 日々新しい技術を追い求めてブログでアウトプットしています。
プロフィール画像は、猫村ゆゆこ様に書いてもらいました。

仕事募集もしていたり、していなかったり。

QooQ