PostgreSQLのデータベース・ユーザーおよび権限の準備

データベース・ユーザーの作成およびOracle GoldenGate for PostgreSQLの権限の割当てについて学習します。

Oracle GoldenGateプロセスでは、データベース・ユーザーがPostgreSQLデータベースに対してデータを取得して配信する必要があり、ExtractおよびReplicatに専用のPostgreSQLデータベース・ユーザーを作成することをお薦めします。

Oracle GoldenGateでPostgreSQLデータベースに対する取得および適用を実行するには、次のデータベース・ユーザー権限が必要です。

権限 Extract Replicat 目的

データベース・レプリケーション権限

CONNECT

はい

はい

データベース接続に必要です。

GRANT CONNECT ON DATABASE dbname TO gguser;

WITH REPLICATION

はい

NA

ユーザーがExtractをレプリケーション・スロットに登録するために必要です。

ALTER USER gguser WITH REPLICATION;

WITH SUPERUSER

はい

NA

表レベルのサプリメンタル・ロギング(ADD TRANDATA)を有効にするために必要ですが、表に対してTRANDATAを有効にした後で取り消すことができます。

ALTER USER gguser WITH SUPERUSER;

Azure Database for PostgreSQLの場合、管理ユーザーのみがSUPERUSER権限を持ち、TRANDATAを有効にできる唯一のユーザーです。

USAGE ON SCHEMA

はい

はい

レプリケート対象のスキーマ内の表へのメタデータ・アクセス用。

GRANT USAGE ON SCHEMA tableschema TO gguser;

SELECT ON TABLES

はい

はい

レプリケート対象の表に対する選択アクセス権を付与します。

GRANT SELECT ON ALL TABLES IN SCHEMA tableschema TO gguser;

ターゲット表のINSERTUPDATEDELETETRUNCATE。または、すべての表をレプリケートする場合は、INSERTUPDATEDELETEをすべての表に付与するかわりに、GRANT INSERT, UPDATE, DELETE, TRUNCATE ON ALL TABLES IN SCHEMA TOをReplicatユーザーに使用できます。

NA

はい

レプリケートされたDMLをターゲット・オブジェクトに適用

GRANT INSERT, UPDATE, DELETE, TRUNCATE ON TABLE tablename TO gguser;

ハートビートおよびチェックポイント表の権限

CREATE ON DATABASE

はい

はい

ExtractおよびReplicatユーザーが、ハートビートおよびチェックポイント表の作成用にOracle GoldenGateスキーマを追加するために必要です。

GRANT CREATE ON DATABASE dbname TO gguser;

または、GGSCHEMAがユーザーと同じ場合は、CREATE SCHEMA AUTHORIZATION ggsuser;を発行して、オブジェクトをユーザーの下に作成できます

CREATE, USAGE ON SCHEMA

はい

はい

ExtractまたはReplicatユーザーがオブジェクトを所有していない場合の、ハートビートとチェックポイント表の作成/削除用。

GRANT CREATE, USAGE ON SCHEMA ggschema TO gguser;

EXECUTE ON ALL FUNCTIONS

はい

はい

関数をコールするユーザーがオブジェクトを所有していない場合の、ハートビート更新関数およびパージ関数の実行用。

GRANT EXECUTE ON ALL FUNCTIONS IN SCHEMA ggschema TO gguser;

SELECT, INSERT, UPDATE, DELETE

はい

はい

ユーザーがオブジェクトを所有していない場合の、ハートビートとチェックポイント表の挿入、更新および削除用。

GRANT SELECT, INSERT, UPDATE, DELETE, ON ALL TABLES IN SCHEMA ggschema TO gguser;