Aurora MySQL における Performance Insights のPerformance Schemaの有効化
Performance Schema は、Aurora MySQL 実行時のパフォーマンスを低レベルでモニタリングするオプション機能です。Performance Insights は、Performance Schema の有無に関係なく使用できます。Performance Schema は、データベースのパフォーマンスへの影響を最小限に抑えるように設計されています。
Performance Schema の概要
Performance Schema は、サーバーイベントをモニタリングします。この場合、イベントとは、時間を消費するサーバーアクションのことです。Performance Schema イベントは、binlog イベントおよびスケジューライベントとは異なります。
PERFORMANCE_SCHEMA
ストレージエンジンは、データベースのソースコード内の計測を使用してイベントデータを収集します。エンジンは、収集したイベントを performance_schema
データベースのテーブルに保存します。他のテーブルにクエリを実行するのと同様に、performance_schema
をクエリできます。詳細については、MySQL リファレンスマニュアルの「MySQL Performance Schema
Aurora MySQL の Performance Schema を有効にすると、Performance Insights はこれを使用してより詳細な情報を提供します。例えば、Performance Insights には、詳細な待機イベントによって分類された DB 負荷が表示されます。待機イベントを使用して、ボトルネックを特定できます。Performance Schema を使用しない場合、Performance Insights は挿入や送信などのユーザー状態をレポートしますが、ボトルネックの特定には役立ちません。
Performance Schema を有効化するためのオプション
Performance Schema の有効化のために、次のオプションが用意されています。
-
Performance Insights が必要な Performance Schema パラメータを自動的に管理することを許可します。
Performance Insights を有効にした状態で Aurora MySQL DB インスタンスを作成すると、Performance Schema も有効になります。この場合、Performance Insights は Performance Schema パラメータを自動的に管理します。
自動管理の場合、
performance_schema
を0
に設定し、[Source (ソース)] を0
以外の値に設定する必要があります。デフォルトでは、ソースはengine-default
です。performance_schema
の値を手動で変更し、後で自動管理に戻す方法については、自動管理用 Performance Schema の設定 を参照してください。重要 Performance Insights で Performance Schema を有効にしても、パラメータグループ値は変更されません。ただし、値は実行中のインスタンスで変更されます。変更された値を表示する唯一の方法は、
SHOW GLOBAL VARIABLES
コマンドを実行することです。 -
必要な Performance Schema パラメータを自分で設定します。
Performance Insights で待機イベントを一覧表示するには、次の表に示すようにすべての Performance Schema パラメータを設定します。
パラメータ名 |
パラメータ値 |
---|---|
performance_schema |
1 ( [ソース] 列には値 engine-default があります) |
performance-schema-consumer-events-waits-current |
ON |
performance-schema-instrument |
wait/%=ON |
performance_schema_consumer_global_instrumentation |
ON |
performance_schema_consumer_thread_instrumentation |
ON |
Performance Schema を有効または無効にする場合は、データベースを再起動する必要があります。Performance Insights を有効または無効に切り替える場合、データベースを再起動する必要はありません。
詳細については、MySQL ドキュメントの「Performance Schema Command Options
自動管理用 Performance Schema の設定
次の表は、Performance Insights が Performance Schema を管理している場合と管理していない場合の設定の違いを示しています。
Performance Insights が Performance Schema を管理していない場合 |
Performance Insights が Performance Schema を管理している場合 |
---|---|
performance_schema は 0 または 1 |
performance_schema は 0 。 |
[Source (ソース)] 列を [user (ユーザー)] に設定する | [Source (ソース)] 列を [system (システム)] に設定する |
Performance Insights で Performance Schema を自動管理するには
AWS Management Console にサインインし、Amazon RDS コンソール (https://console.aws.amazon.com/rds/
) を開きます。 -
[パラメータグループ] を選択します。
-
DB インスタンスのパラメータグループの名前を選択します。
-
検索バーに「
performance_schema
」と入力します。 -
performance_schema
パラメータを選択します。 -
[Source (ソース)] が [system (システム)]、[Values (値)] が [0] であることをチェックします。上記の設定の場合、Performance Insights は Performance Schema を自動管理します。上記の設定ではない場合、次のステップに進みます。
-
[Edit parameters] を選択します。
-
[Values (値)] で 0 を選択します。
-
[リセット] を選択します。リセットすると、Aurora MySQL はソースをシステム、値を 0 に設定します。
[Reset parameters in DB parameter group (DB パラメータグループのパラメータをリセット)] ページが表示されます。
-
[Reset parameters (パラメータをリセット)] を選択します。
-
DB インスタンスを再起動します。
重要 Performance Schema を有効または無効にするたびに、DB インスタンスを再起動する必要があります。
インスタンスのパラメータの変更の詳細については、「DB パラメータグループのパラメータの変更」を参照してください。ダッシュボードのページの詳細については、「Performance Insights ダッシュボードを使用してメトリクスを分析する」を参照してください。MySQL Performance Schemaの詳細については、MySQL 8.0 Reference Manual