- November 15, 2007 5:19 PM
ほとんどここに解説がある。
http://dev.mysql.com/doc/refman/5.1/ja/server-status-variables.html
http://dev.mysql.com/doc/refman/5.1/en/server-status-variables.html
Handler_read_rnd
MySQL でテーブルの全件スキャンや適切にキーを使えない結合を持ったクエリがある可能性
"データ ファイルで次レコードの読み取り要求を受けた回数。
Handler_read_rnd_next
テーブルに適切なインデックス化できない、またはインデックスを利用できないクエリを発行していることを意味する。
つまりフルテーブルスキャンが発生している。"
ただし、2ずつカウントアップする上に、SHOW GLOBAL STATUS;で2つカウントアップ、SHOW TABLES;で表示されるテーブルの数*1, フルテーブルスキャンなSELECTで行数*2、とあまり見る人のことを考えていない実装になっている。
Qcache_lowmem_prune
Query Cacheの設定値が十分でないためにQuery Cacheから追い出されたクエリの数
Created_tmp_disk_tables
ステートメント実行中に、ディスク上に作成された暗黙的テンポラリテーブルの数。
JOIN, GROUP BY, ORDER BYなどで作成される一時テーブル(MEMORYエンジン)
メモリ上のエリア(tmp_table_size)以上に必要となった場合にディスク上に一時テーブルが作成される。
この値が大きい場合は、tmp_table_sizeを大きくする。
Key_reads
ディスクからのキーブロックの物理的読み込み回数。(MyISAM)
この値が大きい場合は、key_buffer_sizeを大きくする。
Select_full_join
インデックスを使用しない結合の数
Select_range_check
キーなしの結合の数
Sort_merge_passes
ソート アルゴリズムで必要としたマージ パスの回数。
一時テーブルをソートした回数。
この値が大きいときは、sort_buffer_sizeを大きくする必要がある。
ちなみにQuestionsはMySQL Serverに発行されたクエリの総数。
COM_*は発行されたコマンドというか、エンジンレベルで稼動したもの。
Query Cacheが有効に機能している場合は、COM_の総数は、ぜんぜんQuestionsには届かない。
Questions=Qcache_hits+Σ(COM_*)