Prepare PostgreSQL for full-load and continuous replication into the managed warehouse.
PostgreSQL ingestion copies the selected tables, then keeps them current with continuous change capture when the source passes replication preflight. Cursor and xmin batch modes remain available when continuous replication is not possible.
Choose PostgreSQL → Google Cloud SQL when the database runs in GCP. Enter the Google Cloud project ID, select Connect Google, then choose the detected PostgreSQL instance and database. Google access is used only during the 30-minute setup session and is deleted after completion. Embrasure requests only Google's provider-specific cloudsql scope and calls read-only discovery endpoints; it never changes the Google project automatically.
The first release supports Cloud SQL instances with a public IP. Private-IP-only instances are shown as unsupported. Enable the Cloud SQL Admin API, then use the links Embrasure provides for the exact instance's Authorized networks, Database flags, and SQL Studio pages. If a Google Console deep link changes, open Cloud SQL → Instances and select the same instance.
Choose the sync mode before creating the database role:
| Mode | Requirements | Delete behavior |
|---|---|---|
| Scheduled | Public IP, SSL, Embrasure egress allowlist, and read access to selected schemas. | Inserts and updates are found with postgres_xmin; hard deletes are not captured. Use a full replacement when deletes must be reconciled. |
| Continuous | Scheduled requirements plus PostgreSQL 15 or earlier, cloudsql.logical_decoding=on, a replication-capable role, and a free replication slot. | AWS DMS performs the full load and then captures inserts, updates, and deletes with test-decoding. |
PostgreSQL 16 and newer are offered Scheduled only because the current AWS DMS source support matrix documents Google Cloud PostgreSQL CDC support through version 15. Embrasure checks this before generating setup SQL and checks the live role, schemas, logical decoding, and replication-slot capacity before creating the connector.
The generated SQL is escaped for the selected database and schemas and contains a server-generated password. Run it in SQL Studio, then select Verify and select tables. Do not paste the block into tickets or logs.
Use the database's direct PostgreSQL endpoint. PgBouncer, transaction poolers, and RDS Proxy do not expose the replication protocol needed for continuous sync. Require SSL and allow the Embrasure connector network path to reach the database port.
wal_level=logical. On Amazon RDS for PostgreSQL, set rds.logical_replication=1 and reboot the instance.CONNECT on the database, USAGE on selected schemas, SELECT on selected tables, and either REPLICATION or the Amazon RDS rds_replication role.Create a PostgreSQL source in Embrasure with the direct endpoint and read-only ingestion credentials. Select the source tables and a destination database, then run preflight. Embrasure will explain any missing replication setting, permission, key, or network requirement before starting the sync.
Cursor mode needs a column that increases whenever a row changes. Index that cursor together with the primary key for large tables. xmin can be used when no cursor exists, but it may scan the full source table on each run. Cursor and xmin modes do not capture hard deletes.
Remove the source in Embrasure first so its ingestion task and encrypted database credentials are cleaned up. Then run DROP ROLE for the generated embrasure_… role as a Cloud SQL administrator. If PostgreSQL reports owned privileges, revoke the grants in each selected schema before dropping the role. Google OAuth access normally disappears automatically when setup completes; you can also revoke Embrasure from your Google Account's third-party connections.