SQLの性能チェックEXPLAIN

SQLの性能チェックEXPLAIN

データベースSQLの性能チェックEXPLAIN

自分の書いた SQL 文が目的の INDEX を利用しているか、目的の条件を満たしているかなどを調べるコマンドが、データベース(ミドルウエア)には用意されていますが、意外に知らない人も多いようです。

@IT の下記の記事で EXPLAIN について触れられていたので紹介しておこうと思います。

PostgreSQLを遅くしている犯人はどこだ?

今回は PostgreSQL なので EXPLAIN ANALYZE を扱っていますが、MySQL の場合は EXPLAIN、Oracle の場合は EXPLAIN PLAN が用意されています。これらは、コンソール上で SELECT の前などに付けて実行すると詳細な実行結果(内部的な)を見ることができます。

また、PostgreSQL には、あらかじめ設定した時間を越えるクエリが投げられた場合にログ出力する項目があります。postgresql.conf の log_min_duration_statement です。

MySQL にも log_slow_queries(SLOW LOG)があり、同じような目的で使われます。これらのコマンドや設定の詳細は記事を見て下さい。このように、PostgreSQL 以外の DBMS にも似たような機能や項目があるので知っておくといい知識だと思います。

最終更新日:

関連記事

人気記事

新着情報