MySQL の現在設定されている構成変数を簡単に見つける
MySQL の現在設定されている構成変数を表示するコマンド
SHOW VARIABLES
ステートメントを使用すると、すべてのグローバル構成変数とセッション構成変数のリストを表示できます。オプションで、特定の変数名またはワイルドカードパターンを使用して、検索結果を絞り込むことができます。
SHOW VARIABLES;
SHOW VARIABLES LIKE '%character_set%';
\status コマンド (MySQL Shell)
MySQL Shell を使用している場合は、\status
コマンドを使用して、現在のグローバル接続に関する情報を表示できます。これには、接続されているサーバー、使用中の文字セット、稼働時間などに関する情報が含まれます。構成変数の値も表示されます。
\status
MySQL Shell を使用している場合は、\option
コマンドを使用して、すべてのモードで MySQL Shell 構成オプションをクエリして変更できます。\option
コマンドを使用して、設定されている構成オプションをリストし、その値が最後にどのように変更されたかを表示できます。
\option
@@ 変数名
特定の構成変数の値を確認するには、@@
演算子と変数名を使用できます。
SELECT @@character_set_database;
構成変数の種類
MySQL には、グローバル構成変数とセッション構成変数の 2 種類の構成変数があります。
- グローバル構成変数: すべてのクライアント接続に適用される設定を制御します。これらの変数は、通常、
my.cnf
構成ファイルまたはSET GLOBAL
ステートメントを使用して設定されます。
構成変数の値を変更するには、SET
または SET GLOBAL
ステートメントを使用できます。
SET character_set_database = 'utf8';
SET GLOBAL character_set_database = 'utf8';
特定の構成変数に関する詳細情報については、MySQL リファレンス マニュアルを参照してください。
SHOW VARIABLES ステートメント
-- すべてのグローバル構成変数とセッション構成変数を表示します。
SHOW VARIABLES;
-- 'character_set%' という名前を含むすべての構成変数を表示します。
SHOW VARIABLES LIKE '%character_set%';
-- 現在のグローバル接続に関する情報を表示します。
\status
-- 設定されている構成オプションをリストし、その値が最後にどのように変更されたかを表示します。
\option
-- 'character_set_database' 変数の値を表示します。
SELECT @@character_set_database;
-- 'character_set_database' 変数の値を 'utf8' に変更します。
SET character_set_database = 'utf8';
-- 'character_set_database' 変数の値をグローバルに 'utf8' に変更します。
SET GLOBAL character_set_database = 'utf8';
これらの例は、MySQL の現在設定されている構成変数を表示および変更する方法をいくつか示しています。ニーズに合わせて他の方法を組み合わせることもできます。
MySQL の構成変数を表示するその他の方法
INFORMATION_SCHEMA
スキーマには、すべてのシステム変数に関する情報を格納する VARIABLES
テーブルがあります。このテーブルを使用して、変数名、値、データ型などの情報をクエリできます。
SELECT * FROM INFORMATION_SCHEMA.VARIABLES;
SELECT VARIABLE_NAME, VARIABLE_VALUE FROM INFORMATION_SCHEMA.VARIABLES
WHERE VARIABLE_NAME LIKE '%character_set%';
パフォーマンススキーマには、user_variables_by_thread
テーブルがあり、すべてのセッションのすべてのユーザー変数を表示できます。このテーブルを使用して、変数名、値、セッション ID などの情報をクエリできます。
SELECT * FROM performance_schema.user_variables_by_thread;
SELECT VARIABLE_NAME, VARIABLE_VALUE, SESSION_ID FROM performance_schema.user_variables_by_thread
WHERE VARIABLE_NAME LIKE '%character_set%';
mysqldb
コマンドラインツールを使用して、MySQL サーバーに接続し、構成変数を表示できます。
mysqldb -h localhost -u root -p --execute="SHOW VARIABLES"
mysqldb -h localhost -u root -p --execute="SELECT @@character_set_database"
サードパーティ製ツール
MySQL を管理するためのサードパーティ製ツールの中には、構成変数を表示できるものがあります。これらのツールは、グラフィカル ユーザー インターフェイスを提供して、構成変数を簡単に表示および変更できるようにすることがあります。
最適な方法の選択
使用する方法は、ニーズによって異なります。構成変数のリストをすばやく表示したい場合は、SHOW VARIABLES
ステートメントが最適なオプションです。特定の変数に関する詳細情報が必要な場合は、INFORMATION_SCHEMA
スキーマテーブルまたはパフォーマンススキーマテーブルを使用できます。 MySQL サーバーにリモートで接続する必要がある場合は、mysqldb
コマンドラインツールを使用できます。グラフィカル ユーザー インターフェイスを備えたツールを好む場合は、サードパーティ製のツールを検討してください。
mysql