長いこと使ってきている割にオプションとか覚えられないのでメモ程度に書いておく。

tcpdump

MySQLが動作しているマシンで実行する。-cのところは適当に変える。

sudo tcpdump -s 65535 -x -nn -q -tttt -i eth0 -c 10000 port 3306 > dump.pcap

pt-query-digest

インストールされていなければ https://www.percona.com/software/mysql-tools/percona-toolkit を参考にダウンロード、インストールしましょう。

デフォルトの使い方。--limitは出力件数なので適当に調整。 dump.pcapは先にやってあるtcpdumpの結果。

pt-query-digest --type=tcpdump --limit 50 dump.pcap > pt-query-digest-result.txt

index効いてないやつだけ出力

pt-query-digest --type=tcpdump --limit 200 --filter '($event->{No_index_used} eq "Yes" || $event->{No_good_index_used} eq "Yes")' dump.pcap > pt-query-digest-result.txt