Aurora MySQL — 固有の information_schema テーブル - Amazon Aurora

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_IDvarchar(100)DB インスタンスの ID。
SESSION_IDvarchar(100)現在のセッションの一意識別子。MASTER_SESSION_ID の値は、Writer (プライマリ) DB インスタンスを識別します。
AWS_REGIONvarchar(100)このグローバルデータベースインスタンスが実行する AWS リージョン。リージョンのリストについては、「利用可能なリージョン」を参照してください。
DURABLE_LSNbigint unsignedストレージで耐久性のあるログシーケンス番号 (LSN)。ログシーケンス番号 (LSN) は、データベーストランザクションログ内のレコードを識別する一意の連続番号です。LSN は、より大きな LSN が後のトランザクションを表すように順序付けられます。
HIGHEST_LSN_RCVDbigint unsignedライター DB インスタンスから DB インスタンスが受信した最も高い LSN。
OLDEST_READ_VIEW_TRX_IDbigint unsignedライター DB インスタンスがパージできる最も古いトランザクションの ID。
OLDEST_READ_VIEW_LSNbigint unsignedストレージから読み取るために DB インスタンスが使用した最も古い LSN。
VISIBILITY_LAG_IN_MSECfloat(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_REGIONvarchar(100)このグローバルデータベースインスタンスが実行する AWS リージョン。リージョンのリストについては、「利用可能なリージョン」を参照してください。
HIGHEST_LSN_WRITTENbigint unsignedこの DB クラスターに現在存在するログシーケンス番号 (LSN) の最大値。ログシーケンス番号 (LSN) は、データベーストランザクションログ内のレコードを識別する一意の連続番号です。LSN は、より大きな LSN が後のトランザクションを表すように順序付けられます。
DURABILITY_LAG_IN_MILLISECONDSfloat(10,0) unsignedセカンダリ DB クラスターの HIGHEST_LSN_WRITTEN とプライマリ DB クラスターの HIGHEST_LSN_WRITTEN とのタイムスタンプ値の差。この値は、Aurora グローバルデータベースのプライマリ DB クラスターでは常に 0 です。
RPO_LAG_IN_MILLISECONDSfloat(10,0) unsigned

目標復旧時点 (RPO) の遅延。RPO 遅延とは、最近のユーザートランザクション COMMIT が、Aurora グローバルデータベースのプライマリ DB クラスターに保存された後、セカンダリ DB クラスターに保存されるまでにかかる時間です。この値は、Aurora グローバルデータベースのプライマリ DB クラスターでは常に 0 です。

簡単に言うと、このメトリクスは、Aurora グローバルデータベース内の各 Aurora MySQL DB クラスターの目標復旧時点、つまり、障害が発生した場合に失われる可能性のあるデータの量を計算します。遅延と同様に、RPO は時間単位で測定されます。

LAST_LAG_CALCULATION_TIMESTAMPdatetimeDURABILITY_LAG_IN_MILLISECONDS と RPO_LAG_IN_MILLISECONDS について値が最後に計算された時刻を指定するタイムスタンプ。1970-01-01 00:00:00+00 のような時間値は、これがプライマリ DB クラスターであることを意味します。
OLDEST_READ_VIEW_TRX_IDbigint unsignedライター DB インスタンスがパージできる最も古いトランザクションの ID。

information_schema.replica_host_status

information_schema.replica_host_status テーブルにはレプリケーション情報が含まれています。使用できる列を以下のテーブルに示します。残りの列は Aurora 内部でのみ使用されます。

データ型 説明
CPUdoubleレプリカホストの CPU 使用率。
IS_CURRENTtinyintレプリカが最新かどうか。
LAST_UPDATE_TIMESTAMPdatetime(6)前回の更新が行われた時刻。レコードが古くなっているかどうかを判断するために使用されます。
REPLICA_LAG_IN_MILLISECONDSdoubleミリ秒単位でのレプリカ遅延。
SERVER_IDvarchar(100)データベースサーバーの ID。
SESSION_IDvarchar(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 リージョン です。