SHOW [GLOBAL | SESSION] VARIABLES
[LIKE 'pattern' | WHERE expr]
SHOW VARIABLES
は、MySQL システム変数の値を表示します。この情報はまた、mysqladmin variables コマンドを使用して取得することもできます。LIKE
句 (存在する場合) は、どの変数名と照合するかを示します。セクション21.32「SHOW ステートメントの拡張」で説明されているように、WHERE
句を指定すると、より一般的な条件を使用して行を選択できます。このステートメントにはどの権限も必要ありません。これには、サーバーに接続できることのみが必要です。
GLOBAL
修飾子を指定すると、SHOW VARIABLES
は、MySQL への新しい接続に使用される値を表示します。MySQL 5.6 では、変数にグローバル値がない場合、値は表示されません。SESSION
を指定すると、SHOW VARIABLES
は、現在の接続に有効な値を表示します。修飾子が存在しない場合、デフォルトは SESSION
です。LOCAL
は SESSION
のシノニムです。
SHOW VARIABLES
は、バージョンに依存する表示幅の制限に従います。完全には表示されない非常に長い値を持つ変数の場合、回避策として SELECT
を使用します。例:
SELECT @@GLOBAL.innodb_data_file_path;
デフォルトのシステム変数値が適切でない場合は、mysqld の起動時にコマンドオプションを使用して設定できるほか、そのほとんどは SET
ステートメントで実行時に変更できます。セクション5.1.5「システム変数の使用」およびセクション13.7.4「SET 構文」を参照してください。
部分的な出力を次に示します。名前と値のリストが、実際のサーバーでは異なることがあります。セクション5.1.4「サーバーシステム変数」では、各変数の意味について説明しています。また、セクション8.11.2「サーバーパラメータのチューニング」には、そのチューニングに関する情報が示されています。
mysql> SHOW VARIABLES;
+-----------------------------------------+---------------------------+
| Variable_name | Value |
+-----------------------------------------+---------------------------+
| auto_increment_increment | 1 |
| auto_increment_offset | 1 |
| autocommit | ON |
| automatic_sp_privileges | ON |
| back_log | 50 |
| basedir | /home/jon/bin/mysql-5.5 |
| big_tables | OFF |
| binlog_cache_size | 32768 |
| binlog_direct_non_transactional_updates | OFF |
| binlog_format | STATEMENT |
| binlog_stmt_cache_size | 32768 |
| bulk_insert_buffer_size | 8388608 |
...
| max_allowed_packet | 1048576 |
| max_binlog_cache_size | 18446744073709547520 |
| max_binlog_size | 1073741824 |
| max_binlog_stmt_cache_size | 18446744073709547520 |
| max_connect_errors | 10 |
| max_connections | 151 |
| max_delayed_threads | 20 |
| max_error_count | 64 |
| max_heap_table_size | 16777216 |
| max_insert_delayed_threads | 20 |
| max_join_size | 18446744073709551615 |
...
| thread_handling | one-thread-per-connection |
| thread_stack | 262144 |
| time_format | %H:%i:%s |
| time_zone | SYSTEM |
| timed_mutexes | OFF |
| timestamp | 1316689732 |
| tmp_table_size | 16777216 |
| tmpdir | /tmp |
| transaction_alloc_block_size | 8192 |
| transaction_prealloc_size | 4096 |
| tx_isolation | REPEATABLE-READ |
| unique_checks | ON |
| updatable_views_with_limit | YES |
| version | 5.5.17-log |
| version_comment | Source distribution |
| version_compile_machine | x86_64 |
| version_compile_os | Linux |
| wait_timeout | 28800 |
| warning_count | 0 |
+-----------------------------------------+---------------------------+
LIKE
句を指定すると、このステートメントは、そのパターンに一致する名前を持つ変数の行のみを表示します。特定の変数の行を取得するには、LIKE
句を次に示すように使用します。
SHOW VARIABLES LIKE 'max_join_size';
SHOW SESSION VARIABLES LIKE 'max_join_size';
名前がパターンと一致する変数のリストを取得するには、LIKE
句の中で 「%
」 のワイルドカード文字を使用します。
SHOW VARIABLES LIKE '%size%';
SHOW GLOBAL VARIABLES LIKE '%size%';
ワイルドカード文字は、照合されるパターン内のどの場所でも利用できます。厳密には、「_
」 は任意の 1 文字と一致するワイルドカードであるため、文字どおりに照合するには 「\_
」 としてエスケープしてください。実際には、これはほとんど必要ありません。