pgactive スキーマについて
pgactive スキーマは、RDS for PostgreSQL のアクティブ/アクティブレプリケーションを管理します。このスキーマには、レプリケーション設定とステータス情報を保存するテーブルが含まれています。
注記
pgactive スキーマは進化しており、変更される可能性があります。これらのテーブルのデータを直接変更しないでください。
pgactive スキーマのキーテーブルには以下のものが含まれます。
-
pgactive_nodes
− アクティブ/アクティブレプリケーショングループ内のノードに関する情報を保存します。 -
pgactive_connections
− 各ノードの接続の詳細を保存します。
pgactive_nodes
pgactive_nodes は、アクティブ/アクティブレプリケーショングループに参加しているノードに関する情報を保存します。
列 |
タイプ |
照合 |
NULLABLE |
デフォルト値 |
---|---|---|---|---|
node_sysid | text | – | NOT NULL | – |
node_timeline | oid | – | NOT NULL | – |
node_dboid | oid | – | NOT NULL | – |
node_status | char | – | NOT NULL | – |
node_name | text | – | NOT NULL | – |
node_dsn | text | – | NOT NULL | – |
node_init_from_dsn | text | – | NOT NULL | – |
node_read_only | boolean | – | – | false |
node_seq_id | smallint | – | NOT NULL | – |
- node_sysid
-
ノードの一意の ID。
pgactive_create_group
またはpgactive_join_group
中に生成されます。 - node_status
-
ノードの準備状況:
-
b - セットアップの開始
-
i - 初期化
-
c - キャッチアップ
-
o - アウトバウンドスロットの作成
-
r - 準備完了
-
k - 強制終了
注記
この列は、ノードが接続されているか切断されているかを示しません。
-
- node_name
-
ユーザーが指定した一意のノード名。
- node_dsn
-
接続文字列またはユーザーマッピング名
- node_init_from_dsn
-
このノードが作成された DSN。
pgactive_connection
pgactive_connections は、各ノードの接続の詳細を保存します。
列 | タイプ | 照合 | Nullable | デフォルト値 |
---|---|---|---|---|
conn_sysid | text | なし | NOT NULL | なし |
conn_timeline | oid | なし | NOT NULL | なし |
conn_dboid | oid | なし | NOT NULL | なし |
conn_dsn | text | なし | NOT NULL | なし |
conn_apply_delay | integer | なし | なし | なし |
conn_replication_sets | text | なし | なし | なし |
- conn_sysid
-
このエントリが参照するノードのノード識別子。
- conn_dsn
-
pgactive.pgactive_nodes
node_dsn
と同じです。 - conn_apply_delay
-
設定されている場合、リモートノードから各トランザクションを適用するまで待機するミリ秒数。主にデバッグ用。null の場合、グローバルデフォルトが適用されます。
レプリケーションセットの使用
レプリケーションセットは、レプリケーションオペレーションに含めるテーブルと除外するテーブルを決定します。デフォルトでは、次の関数を使用して指定しない限り、すべてのテーブルがレプリケートされます。
-
pgactive_exclude_table_replication_set()
- 指定されたテーブルをレプリケーションから除外する -
pgactive_include_table_replication_set()
- 指定されたテーブルをレプリケーションに含める
注記
レプリケーションセットを設定する前に、次の点を考慮してください。
-
テーブルの包含または除外は、
pgactive_create_group()
の実行後、pgactive_join_group()
を実行するより前にのみ設定できます。 -
pgactive_exclude_table_replication_set()
を使用した後、pgactive_include_table_replication_set()
を使用することはできません。 -
pgactive_exclude_table_replication_set()
を使用した後、pgactive_include_table_replication_set()
を使用することはできません。
システムは、初期設定に基づいて新しく作成されたテーブルを異なる方法で処理します。
-
テーブルを除外した場合:
pgactive_join_group()
以降に作成された新しいテーブルは、自動的にレプリケーションに含まれます。 -
テーブルを含めた場合:
pgactive_join_group()
以降に作成された新しいテーブルは、自動的にレプリケーションから除外されます。
特定のテーブルのレプリケーションセット設定を表示するには、pgactive.pgactive_get_table_replication_sets()
関数を使用します。