Connecting to an AWS RDS database
How to connect Sequin to an AWS RDS database
This guide provides step-by-step instructions to connect your AWS RDS database to Sequin.
Enable logical replication on RDS
By default, logical replication is not enabled on RDS. You can double check if logical replication is enabled by connecting to your database and running the following command:
If the output is off
, then logical replication is not enabled.
To enable it, follow these steps:
Create an RDS parameter group
In the AWS RDS console, create a new parameter group for your database (“RDS” > “Parameter groups” > “Create parameter group”):
- “Parameter group family”: Select your Postgres version.
- ”Parameter group name”: Enter a name for your parameter group.
- ”Description”: Optionally, enter a description for your parameter group.
Enable logical replication
Edit the parameter group to enable logical replication by setting rds.logical_replication
to 1
:
Apply the parameter group to your database
Open your database options (“RDS” > “Databases” > “Modify”) and set the “DB parameter group” to the parameter group you created in the previous step. Select to “Apply immediately”.
Restart your database
Navigate to your database (“RDS” > “Databases”) and click on your database instance. Then click on the “Actions” button and select “Reboot”.
Provision a Postgres user for Sequin
When in development, it’s probably fine to supply Sequin with an existing user.
However, when in production, you should create a dedicated user for Sequin. The user needs the following permissions:
connect
permission on the database.select
permission on all the tables you want to connect to Sequin.replication
permission to read from replication slots.
Here’s how to create a dedicated user with the minimum required permissions:
To generate a secure password, if you have OpenSSL installed, you can use the following command:
Connect Sequin to your RDS database
After enabling logical replication on RDS, you’ll now connect to your database in Sequin.
Enter connection details in Sequin
In the Sequin Console, click on the “Connect Database” button and enter the credentials for your RDS database:
- Host: Your RDS host (e.g.,
mydbinstance.abcdefghijkl.us-west-2.rds.amazonaws.com
) - Port: 5432 (default Postgres port)
- Database: Your database name
- Username: The sequin database user you created earlier
- Password: The password for your sequin database user
Make sure to enable the SSL option for secure connection.
Create a publication
Connect to your database using the SQL client of your choice and execute the following SQL query to create a publication:
If you want to publish changes from all tables, you can use:
Create a replication slot
Next, create a replication slot to capture changes from the publication:
Enter the replication slot details in Sequin
Back in the Sequin Console, enter the name of the replication slot (e.g. sequin_slot
) and publication (e.g. sequin_pub
) you just created. Then, name your database and click Create Database.
Create a sink
With your AWS RDS database connected to Sequin, you are ready to create a sink. Follow one of our guides below to get started:
Stream to Webhooks
Send database changes to your HTTP endpoints to trigger workflows and keep services in sync
Stream to SQS
Send changes to AWS SQS queues to trigger Lambda functions and other AWS services
Stream to Redis
Stream changes to Redis streams for real-time data processing and caching
Stream to Kafka
Publish database changes to Kafka topics for event streaming and processing
Stream to GCP Pub/Sub
Send changes to GCP Pub/Sub topics to trigger Cloud Functions and power event-driven architectures
Was this page helpful?