すべてのプロダクト
Search
ドキュメントセンター

PolarDB:pgAudit (ログ監査)

最終更新日:Jan 14, 2026

PolarDB for PostgreSQL (Oracle 互換) および は、監査ログを生成する pgAudit 拡張機能をサポートしています。これらのログは、政府、金融、または ISO 認証の要件を満たすためによく使用されます。監査ログを使用して、データベースのエラーの診断、動作分析、データベース操作の追跡を行うことができます。

適用範囲

PolarDB for PostgreSQL (Oracle 互換) は、次のバージョンをサポートしています。

  • Oracle 構文互換 2.0 (マイナーエンジンバージョン 2.0.14.5.1.0 以降)

  • Oracle 構文互換 1.0 (マイナーエンジンバージョン 2.0.11.9.25.0 以降)

説明

マイナーエンジンバージョンは、コンソールで表示するか、SHOW polardb_version; 文を実行して確認できます。ご利用のクラスターがバージョンの要件を満たしていない場合は、マイナーエンジンバージョンをアップグレードしてください。

注意事項

  • 監査ログは SQL Explorer で表示できます。

  • 拡張機能のパラメーターを設定するには、特権アカウントが必要です。

使用方法

拡張機能のインストール

CREATE EXTENSION pgaudit;

読み取り操作の監査

次のコマンドを実行して、pgaudit_testdb データベース内のすべての読み取り操作を監査できます。

ALTER DATABASE pgaudit_testdb SET pgaudit.log = 'READ';

コマンドを実行すると、pgaudit_testdb データベース内の SELECT などのすべての読み取り操作が監査されます。INSERTUPDATE などの書き込み操作は監査されません。

読み取り/書き込み操作の監査

次のコマンドを実行して、pgaudit_testdb データベース内のすべての読み取り/書き込み操作を監査できます。

ALTER DATABASE pgaudit_testdb SET pgaudit.log = 'READ,WRITE';

コマンドを実行すると、pgaudit_testdb データベース内の SELECTINSERTUPDATE などのすべての読み取り/書き込み操作が監査されます。

監査の無効化

ALTER DATABASE pgaudit_testdb SET pgaudit.log = 'NONE';

特定のオブジェクトに対する操作の監査

次のコマンドを実行して、pgaudit_testdb データベースの監査ユーザーを設定し、テーブルを作成して、そのテーブルに対するすべての権限をそのユーザーに付与します。

CREATE USER audit_role;
ALTER DATABASE pgaudit_testdb SET pgaudit.role = 'audit_role';

CREATE TABLE test_audit (id INT);
GRANT ALL ON test_audit TO audit_role;

コマンドを実行すると、pgaudit_testdb データベース内の test_audit テーブルに対する操作のみが監査されます。

拡張機能のアンインストール

DROP EXTENSION pgaudit;

関連ドキュメント

pgAudit の詳細については、pgAudit の公式ドキュメントをご参照ください。