MySQLの状態を確認する
mysqlコマンドラインツールでSQLを発行し、MySQLの状態を確認する。
状態確認に最低限必要と思われるコマンドのみ記載しています。
mysqlコマンドで接続
localhostのMySQLにログイン
mysql -u[user] -p (--socket=[socketfile])
リモートホストのMySQLにログイン
mysql -u[user] -p[passwd] -h[hostname]
DBの状態、構成を確認する
実行中クエリを確認する
- show 構文で確認
query
show [full] processlist;
-
information_schemaから確認
where句で絞るなど、showコマンドより柔軟に接続情報を取得できる。 -
processlistを取得
queryselect * from information_schema.processlist;
-
where句で絞る
queryselect * from information_schema.processlist where HOST = '[remote_host]';
[MySQL5.6 PROCESSLISTテーブル]
(http://dev.mysql.com/doc/refman/5.6/ja/processlist-table.html)
[MySQL5.6 information_schema]
(http://dev.mysql.com/doc/refman/5.6/ja/information-schema.html)
DB構成を確認
-
DB一覧を取得
queryshow databases;
-
クエリを実行するDBを指定
queryuse [db_name];
-
テーブル一覧を表示
queryshow tables;
-
テーブル詳細を表示
queryshow table status;
-
テーブル構成(CREATE TABLE文)を表示
queryshow create table [table_name];
権限を確認
-
権限一覧を取得 (user,hostでソートしておくと見やすい)
queryselect user,host from mysql.user order by user,host;
-
権限の詳細を取得
queryshow grants for `[user]`@`[host]`;
MySQLの設定を確認
query
show global variables;
MySQLの状態を確認
query
show global status;
レプリケーション設定、状態を確認
query
show slave status\G
innodbの詳細確認
query
show engine innodb status\G