SHOW STATUS
は、サーバのステータス情報を提供します(mysqladmin
extended-status
と同様)。出力は以下のようになります(形式と数値は場合によって異なります)。
+--------------------------+------------+ | Variable_name | Value | +--------------------------+------------+ | Aborted_clients | 0 | | Aborted_connects | 0 | | Bytes_received | 155372598 | | Bytes_sent | 1176560426 | | Connections | 30023 | | Created_tmp_disk_tables | 0 | | Created_tmp_tables | 8340 | | Created_tmp_files | 60 | | Delayed_insert_threads | 0 | | Delayed_writes | 0 | | Delayed_errors | 0 | | Flush_commands | 1 | | Handler_delete | 462604 | | Handler_read_first | 105881 | | Handler_read_key | 27820558 | | Handler_read_next | 390681754 | | Handler_read_prev | 6022500 | | Handler_read_rnd | 30546748 | | Handler_read_rnd_next | 246216530 | | Handler_update | 16945404 | | Handler_write | 60356676 | | Key_blocks_used | 14955 | | Key_read_requests | 96854827 | | Key_reads | 162040 | | Key_write_requests | 7589728 | | Key_writes | 3813196 | | Max_used_connections | 0 | | Not_flushed_key_blocks | 0 | | Not_flushed_delayed_rows | 0 | | Open_tables | 1 | | Open_files | 2 | | Open_streams | 0 | | Opened_tables | 44600 | | Questions | 2026873 | | Select_full_join | 0 | | Select_full_range_join | 0 | | Select_range | 99646 | | Select_range_check | 0 | | Select_scan | 30802 | | Slave_running | OFF | | Slave_open_temp_tables | 0 | | Slow_launch_threads | 0 | | Slow_queries | 0 | | Sort_merge_passes | 30 | | Sort_range | 500 | | Sort_rows | 30296250 | | Sort_scan | 4650 | | Table_locks_immediate | 1920382 | | Table_locks_waited | 0 | | Threads_cached | 0 | | Threads_created | 30022 | | Threads_connected | 1 | | Threads_running | 1 | | Uptime | 80380 | +--------------------------+------------+
上記のステータス変数にはそれぞれ以下のような意味があります。
変数 | 意味 |
Aborted_clients |
接続を閉じる前にクライアントが終了してしまったために中断された接続数。 See 項A.2.10. 「通信エラー/Aborted connection」。 |
Aborted_connects |
MySQL サーバへの接続試行失敗回数。 See 項A.2.10. 「通信エラー/Aborted connection」。 |
Bytes_received |
すべてのクライアントから受信したバイト数。 |
Bytes_sent |
すべてのクライアントに送信されたバイト数。 |
Com_xxx |
各 xxx コマンドの実行回数。 |
Connections |
MySQL サーバへの接続試行回数。 |
Created_tmp_disk_tables |
ステートメント実行中に、ディスク上に作成された暗黙的テンポラリテーブルの数。 |
Created_tmp_tables |
ステートメント実行中に、メモリ上に作成された暗黙的テンポラリテーブルの数。 |
Created_tmp_files |
mysqld
が作成したテンポラリファイルの数。 |
Delayed_insert_threads |
INSERT DELAYED ハンドラスレッドの数。 |
Delayed_writes |
INSERT DELAYED
で書き込まれたレコードの数。 |
Delayed_errors |
エラー発生(重複キー の可能性が高い)により、INSERT
DELAYED
で書き込まれたレコードの数。 |
Flush_commands |
FLUSH コマンドの実行回数。 |
Handler_commit |
内部 COMMIT コマンド数。 |
Handler_delete |
テーブルからレコードが削除された回数。 |
Handler_read_first |
最初のエントリがインデックスから読み取られた回数。
この値が大きい場合、サーバが何回もフルインデックススキャンを実行していると考えられる。たとえば、SELECT
col1 FROM foo を実行したときに col1
がインデックスになっているとそうなる。 |
Handler_read_key |
キーに基づくレコード読み取り要求の回数。この値が大きい場合、クエリおよびテーブルが適切にインデックス化されていると考えられる。 |
Handler_read_next |
キー順序での次のレコードの読み取り要求の回数。範囲指定をしてインデックスカラムに対してクエリを実行すると、これがインクリメントされる。インデックススキャンを実行してもインクリメントされる。 |
Handler_read_prev |
キー順序での前のレコードの読み取り要求の回数。これは主に、ORDER
BY ... DESC
を最適化するのに使用される。 |
Handler_read_rnd |
固定位置に基づくレコード読み取り要求の回数。 結果のソートを必要とするクエリを多く実行すると、この値が大きくなる。 |
Handler_read_rnd_next |
データファイルでの次のレコードの読み取り要求の回数。 テーブルスキャンが多く実行されると、この値が大きくなる。この場合、一般的に、テーブルが適切にインデックス化されていないか、クエリがインデックスを有効に利用していないかを意味する。 |
Handler_rollback |
内部 ROLLBACK コマンド数。 |
Handler_update |
テーブル内のレコードの更新要求回数。 |
Handler_write |
テーブルへのレコードの挿入要求回数。 |
Key_blocks_used |
キーキャッシュの使用ブロック数。 |
Key_read_requests |
キャッシュからのキーブロック読み取り要求回数。 |
Key_reads |
ディスクからのキーブロックの物理的読み取り回数。 |
Key_write_requests |
キャッシュへのキーブロックの書き込み要求回数。 |
Key_writes |
ディスクへのキーブロックの物理的書き込み回数。 |
Max_used_connections |
同時使用可能な最大接続数。 |
Not_flushed_key_blocks |
変更されたが、ディスクへのフラッシュはまだされていないキーキャッシュのキーブロック。 |
Not_flushed_delayed_rows |
INSERT DELAY
キューで書き込みを待っているレコードの数。 |
Open_tables |
開いているテーブルの数。 |
Open_files |
開いているファイルの数。 |
Open_streams |
開いているストリームの数(主にログ用に使用)。 |
Opened_tables |
開かれたテーブルの数。 |
Rpl_status |
フェールセーフなレプリケーションのステータス(まだ使用されていない)。 |
Select_full_join |
キーを使用しない結合の数(この値が 0 でない場合、テーブルのインデックスをチェックする必要がある)。 |
Select_full_range_join |
参照テーブルで範囲指定の検索を使用した結合の数。 |
Select_range |
最初のテーブルの範囲指定された部分のみを使用した結合の数(通常、この値が大きくても問題にはならない)。 |
Select_scan |
最初のテーブルでフルスキャンを行った結合の数。 |
Select_range_check |
各レコードの後でキー使用をチェックする、キーを使用しない結合の数(この値が 0 でない場合、テーブルのインデックスをチェックする必要がある)。 |
Questions |
サーバに送信されたクエリの数。 |
Slave_open_temp_tables |
スレーブスレッドによって現在開かれているテンポラリテーブルの数。 |
Slave_running |
マスタに接続されているスレーブの場合は
ON 。 |
Slow_launch_threads |
生成に slow_launch_time
より時間がかかったスレッドの数。 |
Slow_queries |
long_query_time
秒より時間がかかったクエリの数。 See
項4.10.5. 「スロークエリログ」。 |
Sort_merge_passes |
ソートアルゴリズムで必要だったマージパスの回数。この値が大きければ、sort_buffer
の値を大きくすることを考慮すべきである。 |
Sort_range |
範囲指定で行われたソートの回数。 |
Sort_rows |
ソートされたレコードの数。 |
Sort_scan |
テーブルのスキャンによって実行されたソートの回数。 |
ssl_xxx |
SSL によって使用される変数(まだ導入されていない)。 |
Table_locks_immediate |
テーブルロックがすぐに実行された回数。3.23.33 で導入。 |
Table_locks_waited |
テーブルロックがすぐには実行されず、待機が必要だった回数。この値が大きい場合、パフォーマンス上の問題がある。まずクエリを最適化し、次にテーブルを分割するかレプリケーションを使用すべきである。3.23.33 で導入。 |
Threads_cached |
スレッドキャッシュ内のスレッド数。 |
Threads_connected |
現在開いている接続の数。 |
Threads_created |
接続を処理するために作成されたスレッドの数。 |
Threads_running |
スリープ状態になっていないスレッドの数。 |
Uptime |
サーバの稼動秒数。 |
補足コメント
Opened_tables
値が大きい場合、table_cache
変数が小さすぎると考えられる。
Key_reads
値が大きい場合、key_buffer_size
変数が小さすぎると考えられる。キャッシュミスレートは、Key_reads
/Key_read_requests
で計算される。
Handler_read_rnd
値が大きい場合、MySQL
がテーブル全体をスキャンする必要のあるクエリが多すぎるか、キーを適切に使用しない結合があると考えられる。
Threads_created
値が大きい場合、thread_cache_size
変数を大きくすることを考慮すべきである。キャッシュヒットレートは、Threads_created
/Connections
で計算される。
Created_tmp_disk_tables
値が大きい場合、tmp_table_size
変数を大きくして、ディスクベースではなくメモリベースでテンポラリテーブルを取得できるようにする。
This is a translation of the MySQL Reference Manual that can be found at dev.mysql.com. The original Reference Manual is in English, and this translation is not necessarily as up to date as the English version.