Aurora MySQL — 固有の information_schema テーブル
Aurora MySQL には、Aurora に固有の特定の information_schema
テーブルがあります。
information_schema.aurora_global_db_instance_status
information_schema.aurora_global_db_instance_status
テーブルには、グローバルデータベースのプライマリ DB クラスターとセカンダリ DB クラスター内のすべての DB インスタンスのステータスに関する情報が含まれています。使用できる列を次の表に示します。残りの列は Aurora 内部でのみ使用されます。
注記
この情報スキーマテーブルは、Aurora MySQL バージョン 3.04.0 以降のグローバルデータベースでのみ使用できます。
列 | データ型 | 説明 |
---|---|---|
SERVER_ID | varchar(100) | DB インスタンスの ID。 |
SESSION_ID | varchar(100) | 現在のセッションの一意識別子。MASTER_SESSION_ID の値は、Writer (プライマリ) DB インスタンスを識別します。 |
AWS_REGION | varchar(100) | このグローバルデータベースインスタンスが実行する AWS リージョン。リージョンのリストについては、「利用可能なリージョン」を参照してください。 |
DURABLE_LSN | bigint unsigned | ストレージで耐久性のあるログシーケンス番号 (LSN)。ログシーケンス番号 (LSN) は、データベーストランザクションログ内のレコードを識別する一意の連続番号です。LSN は、より大きな LSN が後のトランザクションを表すように順序付けられます。 |
HIGHEST_LSN_RCVD | bigint unsigned | ライター DB インスタンスから DB インスタンスが受信した最も高い LSN。 |
OLDEST_READ_VIEW_TRX_ID | bigint unsigned | ライター DB インスタンスがパージできる最も古いトランザクションの ID。 |
OLDEST_READ_VIEW_LSN | bigint unsigned | ストレージから読み取るために DB インスタンスが使用した最も古い LSN。 |
VISIBILITY_LAG_IN_MSEC | float(10,0) unsigned | プライマリ DB クラスターのリーダーの場合、この DB インスタンスがライター DB インスタンスよりどれだけ遅れているか (ミリ秒単位)。セカンダリ DB クラスターのリーダーの場合、この DB インスタンスがセカンダリボリュームからどれだけ遅れているかをミリ秒単位で示します。 |
information_schema.aurora_global_db_status
information_schema.aurora_global_db_status
テーブルには、Aurora グローバルデータベースの遅延のさまざまな側面に関する情報が含まれています。具体的には、基盤となる Aurora ストレージの遅延 (いわゆる耐久性の遅延) と目標復旧時点 (RPO) 間の遅延などです。使用できる列を次の表に示します。残りの列は Aurora 内部でのみ使用されます。
注記
この情報スキーマテーブルは、Aurora MySQL バージョン 3.04.0 以降のグローバルデータベースでのみ使用できます。
列 | データ型 | 説明 |
---|---|---|
AWS_REGION | varchar(100) | このグローバルデータベースインスタンスが実行する AWS リージョン。リージョンのリストについては、「利用可能なリージョン」を参照してください。 |
HIGHEST_LSN_WRITTEN | bigint unsigned | この DB クラスターに現在存在するログシーケンス番号 (LSN) の最大値。ログシーケンス番号 (LSN) は、データベーストランザクションログ内のレコードを識別する一意の連続番号です。LSN は、より大きな LSN が後のトランザクションを表すように順序付けられます。 |
DURABILITY_LAG_IN_MILLISECONDS | float(10,0) unsigned | セカンダリ DB クラスターの HIGHEST_LSN_WRITTEN とプライマリ DB クラスターの HIGHEST_LSN_WRITTEN とのタイムスタンプ値の差。この値は、Aurora グローバルデータベースのプライマリ DB クラスターでは常に 0 です。 |
RPO_LAG_IN_MILLISECONDS | float(10,0) unsigned | 目標復旧時点 (RPO) の遅延。RPO 遅延とは、最近のユーザートランザクション COMMIT が、Aurora グローバルデータベースのプライマリ DB クラスターに保存された後、セカンダリ DB クラスターに保存されるまでにかかる時間です。この値は、Aurora グローバルデータベースのプライマリ DB クラスターでは常に 0 です。 簡単に言うと、このメトリクスは、Aurora グローバルデータベース内の各 Aurora MySQL DB クラスターの目標復旧時点、つまり、障害が発生した場合に失われる可能性のあるデータの量を計算します。遅延と同様に、RPO は時間単位で測定されます。 |
LAST_LAG_CALCULATION_TIMESTAMP | datetime | DURABILITY_LAG_IN_MILLISECONDS と RPO_LAG_IN_MILLISECONDS について値が最後に計算された時刻を指定するタイムスタンプ。1970-01-01 00:00:00+00 のような時間値は、これがプライマリ DB クラスターであることを意味します。 |
OLDEST_READ_VIEW_TRX_ID | bigint unsigned | ライター DB インスタンスがパージできる最も古いトランザクションの ID。 |
information_schema.replica_host_status
information_schema.replica_host_status
テーブルにはレプリケーション情報が含まれています。使用できる列を以下のテーブルに示します。残りの列は Aurora 内部でのみ使用されます。
列 | データ型 | 説明 |
---|---|---|
CPU | double | レプリカホストの CPU 使用率。 |
IS_CURRENT | tinyint | レプリカが最新かどうか。 |
LAST_UPDATE_TIMESTAMP | datetime(6) | 前回の更新が行われた時刻。レコードが古くなっているかどうかを判断するために使用されます。 |
REPLICA_LAG_IN_MILLISECONDS | double | ミリ秒単位でのレプリカ遅延。 |
SERVER_ID | varchar(100) | データベースサーバーの ID。 |
SESSION_ID | varchar(100) | データベースセッションの ID。DB インスタンスがライターインスタンスかリーダーインスタンスかを判断するために使用されます。 |
注記
レプリカインスタンスが遅延すると、その information_schema.replica_host_status
テーブルからクエリされる情報が古くなることがあります。このような状況では、代わりにライターインスタンスからクエリを実行することをお勧めします。
mysql.ro_replica_status
テーブルにも同様の情報がありますが、使用することは推奨されません。
information_schema.aurora_forwarding_processlist
information_schema.aurora_forwarding_processlist
テーブルには、書き込み転送に関係するプロセスについての情報が含まれています。
このテーブルの内容は、グローバルまたはクラスター内書き込み転送がオンになっている DB クラスターのライター DB インスタンスでのみ表示されます。リーダー DB インスタンスでは、空の結果セットが返されます。
フィールド | データ型 | 説明 |
---|---|---|
ID | bigint | ライター DB インスタンス上の接続の識別子。この識別子は、SHOW PROCESSLIST ステートメントの Id 列に表示され、スレッド内の CONNECTION_ID() 関数によって返される値と同じです。 |
USER | varCHAR(32) | ステートメントを発行した MySQL ユーザー。 |
HOST | varCHAR(255) | ステートメントを発行した MySQL クライアント。転送されたステートメントの場合、このフィールドには、転送側リーダー DB インスタンスで接続を確立したアプリケーションクライアントのホストアドレスが表示されます。 |
DB | varCHAR(64) | スレッドのデフォルトデータベース。 |
コマンド | varCHAR(16) | スレッドがクライアントに代わって実行しているコマンドのタイプ、またはセッションがアイドル状態の場合は Sleep 。スレッドコマンドの説明については、MySQL ドキュメントの「スレッドコマンド値 |
TIME | 整数 | スレッドが現在の状態になっていた時間 (秒単位)。 |
STATE | varCHAR(64) | スレッドが何をしているのかを示すアクション、イベント、または状態。状態値の説明については、MySQL ドキュメントの「一般的なスレッドの状態 |
INFO | longtext | スレッドが実行しているステートメント、またはステートメントを実行していない場合は NULL 。ステートメントは、サーバーに送信されるステートメントかもしれず、ステートメントが他のステートメントを実行する場合は最も内側のステートメントかもしれません。 |
IS_FORWARDED | bigint | スレッドがリーダー DB インスタンスから転送されるかどうかを示します。 |
REPLICA_SESSION_ID | bigint | Aurora レプリカの接続識別子。この識別子は、転送側の Aurora リーダー DB インスタンスで SHOW PROCESSLIST ステートメントの Id 列に表示されるのと同じ値です。 |
REPLICA_INSTANCE_IDENTIFIER | varCHAR(64) | 転送側スレッドの DB インスタンス識別子。 |
REPLICA_CLUSTER_NAME | varCHAR(64) | 転送側スレッドの DB クラスター識別子。クラスター内書き込み転送の場合、この識別子は、ライター DB インスタンスと同じ DB クラスターです。 |
REPLICA_REGION | varCHAR(64) | 転送側スレッドの送信元の AWS リージョン。クラスター内書き込み転送の場合、このリージョンは、ライター DB インスタンスと同じ AWS リージョン です。 |