conduktor.io ↗
← All errors
high PostgreSQL Setup

ERROR: must be superuser to create FOR ALL TABLES publication

Root cause

publication.autocreate.mode=all_tables (the default) requires PostgreSQL superuser privileges to create a FOR ALL TABLES publication. Managed databases (RDS, Aiven, Azure Database for PostgreSQL) do not grant superuser.

How to fix

  1. Create the publication manually as a superuser before starting the connector:
    CREATE PUBLICATION dbz_pub FOR TABLE t1, t2, t3;
  2. Set publication.autocreate.mode=filtered — this mode does not require superuser. Also grant the Debezium user CREATE on the database and ownership (or co-ownership) of the captured tables so it can manage the per-table publication.
  3. On RDS:
    grant the debezium user the rds_replication role.
Official Debezium documentation ↗