MySQL 8.0 リファレンスマニュアル


MySQL 8.0 リファレンスマニュアル  /  ...  /  パフォーマンススキーマシステム変数テーブル

27.12.14 パフォーマンススキーマシステム変数テーブル

MySQL サーバーは、構成方法を示す多くのシステム変数を保持します (セクション5.1.8「サーバーシステム変数」 を参照)。 システム変数情報は、次の「パフォーマンススキーマ」テーブルで使用できます:

  • global_variables: グローバルシステム変数。 グローバル値のみが必要なアプリケーションでは、このテーブルを使用する必要があります。

  • session_variables: 現在のセッションのシステム変数。 独自のセッションのすべてのシステム変数値を必要とするアプリケーションでは、このテーブルを使用する必要があります。 これには、セッションのセッション変数と、対応するセッションがないグローバル変数の値が含まれます。

  • variables_by_thread: 各アクティブセッションのセッションシステム変数。 特定のセッションのセッション変数値を知るアプリケーションでは、このテーブルを使用する必要があります。 これには、スレッド ID で識別されるセッション変数のみが含まれます。

  • persisted_variables: 永続化されたグローバルシステム変数設定を格納する mysqld-auto.cnf ファイルへの SQL インタフェースを提供します。 セクション27.12.14.1「パフォーマンススキーマ persisted_variables テーブル」を参照してください。

  • variables_info: システム変数ごとに、最後に設定されたソースとその値の範囲を示します。 セクション27.12.14.2「パフォーマンススキーマ variables_info テーブル」を参照してください。

セッション変数テーブル (session_variablesvariables_by_thread) には、アクティブセッションの情報のみが含まれ、終了したセッションは含まれません。

global_variables テーブルと session_variables テーブルには、次のカラムがあります:

  • VARIABLE_NAME

    システム変数名。

  • VARIABLE_VALUE

    システム変数の値。 global_variables の場合、このカラムにはグローバル値が含まれます。 session_variables の場合、このカラムには現在のセッションで有効な変数値が含まれます。

global_variables テーブルと session_variables テーブルには、次のインデックスがあります:

  • 主キー (VARIABLE_NAME)

variables_by_thread テーブルには、次のカラムがあります:

  • THREAD_ID

    システム変数が定義されているセッションのスレッド識別子。

  • VARIABLE_NAME

    システム変数名。

  • VARIABLE_VALUE

    THREAD_ID カラムで指定されたセッションのセッション変数値。

variables_by_thread テーブルには次のインデックスがあります:

  • 主キー (THREAD_IDVARIABLE_NAME)

variables_by_thread テーブルには、フォアグラウンドスレッドに関するシステム変数情報のみが含まれます。 すべてのスレッドがパフォーマンススキーマによって計測されるわけではない場合、このテーブルにはいくつかの行がありません。 この場合、Performance_schema_thread_instances_lost ステータス変数はゼロより大きくなります。

TRUNCATE TABLE は、パフォーマンススキーマシステム変数テーブルではサポートされていません。


関連キーワード:  テーブル, 変数, パフォーマンス, スキーマ, variables, セッション, events, replication, thread, history