

# Amazon RDS for MariaDB または MySQL における Performance Insights のPerformance Schema の概要
<a name="USER_PerfInsights.EnableMySQL"></a>

Performance Schema は、Amazon RDS for MariaDB または MySQL ランタイムのパフォーマンスを低い詳細レベルでモニタリングするオプション機能です。Performance Schema は、データベースのパフォーマンスへの影響を最小限に抑えるように設計されています。Performance Insights は、Performance Schema の有無に関係なく使用できる独立した機能です。

**Topics**
+ [Performance Schema の概要](#USER_PerfInsights.EnableMySQL.overview)
+ [Performance Insights と Performance Schema](#USER_PerfInsights.effect-of-pfs)
+ [Performance Insights による Performance Schema の自動管理](#USER_PerfInsights.EnableMySQL.options)
+ [Performance Schema の再起動による影響](#USER_PerfInsights.EnableMySQL.reboot)
+ [Performance Insights が Performance Schema を管理しているかどうかの確認](USER_PerfInsights.EnableMySQL.determining-status.md)
+ [Amazon RDS for MariaDB または MySQL における Performance Schema の有効化](USER_PerfInsights.EnableMySQL.RDS.md)

## Performance Schema の概要
<a name="USER_PerfInsights.EnableMySQL.overview"></a>

Performance Schema は、MariaDB および MySQL データベースのイベントをモニタリングします。*イベント*とは、時間を消費し、タイミング情報を収集できるように実装されたデータベースサーバーアクションです。イベントの例には、以下のようなものがあります。
+ 関数呼び出し
+ オペレーティングシステムの待機
+ SQL 実行のステージ
+ SQL ステートメントのグループ

`PERFORMANCE_SCHEMA` ストレージエンジンは、Performance Schema 機能を実装するためのメカニズムです。このエンジンは、データベースのソースコード内の計測を使用してイベントデータを収集します。エンジンは、イベントを `performance_schema` データベースのメモリ専用テーブルに保存します。他のテーブルにクエリを実行するのと同様に、`performance_schema` をクエリできます。詳細については、*MySQL リファレンスマニュアル*の「[MySQL Performance Schema](https://dev.mysql.com/doc/refman/8.0/en/performance-schema.html)」を参照してください。

## Performance Insights と Performance Schema
<a name="USER_PerfInsights.effect-of-pfs"></a>

Performance Insights と Performance Schema は別々の機能ですが、両者は関連しています。 Amazon RDS for MariaDB または MySQL の Performance Insights の動作は、Performance Schema がオンになっているかどうか、およびオンになっている場合は、Performance Insights が Performance Schema を自動的に管理するかどうかによって異なります。次の表は、動作の説明です。


| Performance Schema がオンになっている | Performance Insights 管理モード | Performance Insights の動作 | 
| --- | --- | --- | 
|  はい  |  自動  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/AmazonRDS/latest/UserGuide/USER_PerfInsights.EnableMySQL.html)  | 
|  はい  |  手動  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/AmazonRDS/latest/UserGuide/USER_PerfInsights.EnableMySQL.html)  | 
|  いいえ  |  該当なし  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/AmazonRDS/latest/UserGuide/USER_PerfInsights.EnableMySQL.html)  | 

## Performance Insights による Performance Schema の自動管理
<a name="USER_PerfInsights.EnableMySQL.options"></a>

Performance Insights を有効にした状態で Amazon RDS for MariaDB または MySQL DB インスタンスを作成すると、Performance Schema も有効になります。この場合、Performance Insights は Performance Schema パラメータを自動的に管理します。この設定を推奨します。

Performance Insights が Performance Schema を自動的に管理するとき、`performance_schema` の **Source** は `System default` です。

**注記**  
t4g.medium インスタンスクラスでは、パフォーマンススキーマの自動管理はサポートされていません。

`performance_schema` パラメータの値を手動で変更し、後で自動管理に戻す方法については、「[Amazon RDS for MariaDB または MySQL における Performance Schema の有効化](USER_PerfInsights.EnableMySQL.RDS.md)」を参照してください。

**重要**  
Performance Insights で Performance Schema を有効にしても、パラメータグループ値は変更されません。ただし、値は実行中の DB インスタンスで変更されます。変更された値を表示する唯一の方法は、`SHOW GLOBAL VARIABLES` コマンドを実行することです。

## Performance Schema の再起動による影響
<a name="USER_PerfInsights.EnableMySQL.reboot"></a>

Performance Insights と Performance Schema は、DB インスタンスの再起動の要件が異なります。

**Performance Schema**  
この機能をオンまたはオフにするには、DB インスタンスを再起動する必要があります。

**Performance Insights**  
この機能をオンまたはオフにするために、DB インスタンスを再起動する必要はありません。

Performance Schema が現在有効になっていない場合、DB インスタンスを再起動せずに Performance Insights を有効にすると、Performance Schema は有効になりません。

# Performance Insights が Performance Schema を管理しているかどうかの確認
<a name="USER_PerfInsights.EnableMySQL.determining-status"></a>

Performance Insights が、現在、サポート対象のメジャーエンジンバージョンの Performance Schema を管理しているかどうかを確認するには、次の表を参照してください。


| performance\$1schema パラメータの設定 | [Source] (ソース) 列の設定 | Performance Insights が Performance Schema を管理しているかどうか | 
| --- | --- | --- | 
| 0 | System default | はい | 
| 0 または 1 | Modified | いいえ | 

次の手順では、Performance Insights が Performance Schema を自動的に管理しているかどうかを確認します。

**Performance Insights が Performance Schema を自動管理しているかどうかを確認するには**

1. AWS マネジメントコンソール にサインインし、Amazon RDS コンソール ([https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/)) を開きます。

1. [**パラメータグループ**] を選択します。

1. DB インスタンスのパラメータグループを選択します。

1. 検索バーに **performance\$1schema** と入力します。

1. **[ソース]** がシステムデフォルト、**[値]** が **[0]** であることをチェックします。上記の設定の場合、Performance Insights は Performance Schema を自動管理します。

   上記の例では、Performance Insights は Performance Schema を自動管理していません。  
![\[performance_schema パラメータの設定が変更されていることを示しています。\]](http://docs.aws.amazon.com/ja_jp/AmazonRDS/latest/UserGuide/images/perf_schema_user.png)

# Amazon RDS for MariaDB または MySQL における Performance Schema の有効化
<a name="USER_PerfInsights.EnableMySQL.RDS"></a>

DB インスタンスまたはマルチ AZ DB クラスターで Performance Insights がオンになっているが、現在 Performance Schema は管理していないと仮定します。Performance Insights が Performance Schema を自動管理できるようにするには、次のステップを実行します。

**自動管理用 Performance Schema を設定するには**

1. AWS マネジメントコンソール にサインインし、Amazon RDS コンソール ([https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/)) を開きます。

1. **[パラメータグループ]** を選択します。

1. DB インスタンスまたはマルチ AZ DB クラスターのパラメータグループの名前を選択します。

1. **[編集]** を選択します。

1. 検索バーに **performance\$1schema** と入力します。

1. `performance_schema` パラメータを選択します。

1. **[デフォルト値に設定]** を選択します。

1. **[値をデフォルトに設定]** を選択して確定します。

1. **[Save changes]** (変更の保存) をクリックします。

1. DB インスタンスまたはマルチ AZ DB クラスターを再起動します。
**重要**  
Performance Schema のオンとオフを切り替えるたびに、DB インスタンスまたはマルチ AZ DB クラスターを必ず再起動します。

インスタンスのパラメータの変更の詳細については、「[Amazon RDS の DB パラメータグループのパラメータの変更](USER_WorkingWithParamGroups.Modifying.md)」を参照してください。ダッシュボードのページの詳細については、「[Performance Insights ダッシュボードを使用してメトリクスを分析する](USER_PerfInsights.UsingDashboard.md)」を参照してください。MySQL パフォーマンススキーマの詳細については、MySQL ドキュメントの「[MySQL Performance Schema](https://dev.mysql.com/doc/refman/8.0/en/performance-schema.html)」(8.0 の場合) および「[MySQL Performance Schema](https://dev.mysql.com/doc/refman/8.4/en/performance-schema.html)」(8.4 の場合) を参照してください。