コマンド
pt-visual-explain [ オプション ] [ ファイル名 ]
目的
EXPLAIN文を元に、クエリの構成をツリー構造で出力します
シナリオ
まずはEXPLAIN文の実行結果を入力したファイルを用意します
“employees”データベースの”employees”テーブルから、200000 < emp_no < 300000 のレコードをセレクトする、というクエリのEXPLAIN結果を pt-visual-explain.txt というファイルに出力させます
# mysql -u root -e "EXPLAIN SELECT * FROM employees WHERE emp_no > 200000 \
> AND emp_no < 300000" employees > /tmp/pt-visual-explain_result.txt
そのファイルを、pt-visual-explain で読み取ります
# pt-visual-explain /tmp/pt-visual-explain_result.txt
結果
以下のようなツリー構造が標準出力されます
[root@localhost ~]# pt-visual-explain /tmp/pt-visual-explain_result.txt
Filter with WHERE
+- Bookmark lookup
+- Table
| table employees
| possible_keys PRIMARY
+- Index range scan
key employees->PRIMARY
possible_keys PRIMARY
key_len 4
rows 149822
[root@localhost ~]#
良い点
EXPLAINの結果を視覚的に分かりやすく表示できます
その他
EXPLAIN文をパイプで引き渡すこともできます?
# mysql -e "EXPLAIN SELECT * FROM mysql.user" | pt-visual-explain