Prerequisites
-
Your Postgres should be in
logicalmode (useSHOW wal_level). -
A user with
REPLICATIONrights on the tables you wish to connect to. One way to do this is:
- Are you using PostgreSQL on Heroku? Here’s a great guide to migrating.
-
Each table should have its
REPLICA IDENTITYset toFULL
- You have to create publications for your tables
- The user should have the rights to list tables.
Key Features
- Real-time Change Data Capture (CDC): The Postgres Source Connector employs a CDC mechanism using the native PostgreSQL logical decoding feature, capturing and streaming changes (inserts, updates, and deletes) as they occur in your database.
- Schema Evolution and Compatibility: This connector supports schema evolution, automatically detecting changes in the PostgreSQL database schema and adapting the data stream accordingly.
- Fault-tolerant and Scalable: The Postgres Source Connector is built with fault tolerance and scalability in mind. It is capable of resuming data replication from the last known offset in case of failures, ensuring data consistency and minimal downtime.
- Initial Load: The connector automatically performs an initial full table load.
- Advanced Filtering: The Postgres Source Connector provides a range of filtering options, including table and schema filters, allowing you to selectively replicate specific tables and schemas based on your needs.
Configuration
Advanced Options
Connecting through an SSH Tunnel
If the database is only reachable through a bastion host, enable SSH Tunnel and provide:Table Selection
After a successful credential check, pick the tables to replicate from the discovered list. The selection is stored as a comma-separated whitelist inschema.table format.