MySQLで現在のシステム変数(設定変数)を確認するSHOW VARIABLESコマンドの使い方
MySQLで現在の構成変数(システム変数)を確認したい場合は、SHOW VARIABLESコマンドを使用します。このコマンドを実行すると、サーバーに設定されているすべてのシステム変数とその値が一覧形式で表示されます。
基本構文
構文は以下の通りです。
show variables;
LIKE句で変数を絞り込む
すべての変数を表示すると出力が非常に長くなるため、実務ではLIKE演算子と組み合わせて、必要な変数だけを抽出するのが便利です。構文は以下の通りです。
show variables like '%任意の文字列%';
実行例
たとえば、「max」を含む変数のみを取得したい場合は、次のようにクエリを実行します。
mysql> show variables like '%max%';
出力結果
+------------------------------------------------------+----------------------+ | Variable_name | Value | +------------------------------------------------------+----------------------+ | binlog_max_flush_queue_time | 0 | | cte_max_recursion_depth | 1000 | | ft_max_word_len | 84 | | group_concat_max_len | 1024 | | histogram_generation_max_mem_size | 20000000 | | innodb_adaptive_max_sleep_delay | 150000 | | innodb_change_buffer_max_size | 25 | | innodb_compression_pad_pct_max | 50 | | innodb_ft_max_token_size | 84 | | innodb_io_capacity_max | 2000 | | innodb_max_dirty_pages_pct | 90.000000 | | innodb_max_dirty_pages_pct_lwm | 10.000000 | | innodb_max_purge_lag | 0 | | innodb_max_undo_log_size | 1073741824 | | max_allowed_packet | 4194304 | | max_binlog_cache_size | 18446744073709547520 | | max_binlog_size | 1073741824 | | max_connect_errors | 100 | | max_connections | 151 | | max_execution_time | 0 | | max_heap_table_size | 16777216 | | max_join_size | 18446744073709551615 | | max_prepared_stmt_count | 16382 | | max_user_connections | 0 | | performance_schema_max_digest_length | 1024 | | range_optimizer_max_mem_size | 8388608 | | temptable_max_ram | 1073741824 | +------------------------------------------------------+----------------------+
※ 実際の出力は74行に及びますが、ここでは主要な変数を抜粋して掲載しています。max_connections(最大接続数)、max_allowed_packet(パケット最大サイズ)、max_heap_table_size(メモリテーブルの最大サイズ)など、パフォーマンスチューニングに関わる重要な変数が多数含まれていることが分かります。
補足:GLOBALとSESSIONスコープの違い
SHOW VARIABLESはデフォルトでセッション(SESSION)スコープの値を返します。サーバー全体に適用されているグローバルな設定値を確認したい場合は、以下のようにGLOBALキーワードを付けて実行します。
mysql> show global variables like 'max_connections';
また、MySQL 8.0以降では、パフォーマンススキーマのテーブルから直接システム変数を参照することも可能です。
mysql> SELECT * FROM performance_schema.global_variables
-> WHERE VARIABLE_NAME LIKE '%max%';用途に応じてこれらの方法を使い分けることで、サーバーの設定状況を効率的に把握できます。
-
Windows用MySQLコマンドラインクライアントのインストール方法
MySQLコマンドラインクライアントとはMySQLコマンドラインクライアントは、コマンド操作でデータベースを管理できる便利なツールです。Windows環境で利用するには、公式サイトからMySQL本体をダウンロードし、インストールする必要があります。MySQL公式ダウンロードページへアクセスまず、以下のURLにアクセスしてMySQLの公式ダウンロードページを開きましょう。https://dev.mysql.com/downloads/mysql/アクセスすると、次のようなダウンロード画面が表示されます。オペレーティングシステムの選択ダウンロードページが開いたら、次に使用しているオペレーティングシ
-
LinuxでMySQLの環境変数を設定する方法【シェル別の設定手順を解説】
はじめにLinuxでMySQLを快適に利用するには、環境変数の設定が欠かせません。本記事では、コマンドラインから一時的に環境変数を設定する方法と、シェルのスタートアップファイルを編集して恒久的に設定する方法について、シェル別に詳しく解説します。環境変数の設定方法の基本環境変数はコマンドプロンプトから直接設定できます。この方法では、現在実行中のコマンドプロセッサ(シェル)に対してのみ反映されます。一方、今後のセッションにも継続して反映させたい場合は、恒久的な設定を行う必要があります。環境変数を恒久的に設定するには、シェルのスタートアップファイルに記述するか、OSが提供する設定用のインターフェース