Amazon Aurora PostgreSQL

Amazon Aurora PostgreSQL is a fully managed, PostgreSQL-compatible relational database engine that combines the speed and reliability of high-end commercial databases with the simplicity and cost-effectiveness of open-source databases. Its enterprise database capabilities combined with compatibility with PostgreSQL helps deliver throughput that is much higher compared to the standard PostgreSQL running on the same hardware.

You can ingest data from your Amazon Aurora PostgreSQL database using Hevo Pipelines and replicate it to a Destination of your choice.


Perform the following steps to configure your Amazon Aurora PostgreSQL Source:

Set up Log-based Incremental Replication

1. Create a parameter group

  1. Open the Amazon RDS console.

  2. In the left navigation pane, select Parameter groups.

  3. Click Create parameter group.

  4. Select the instance with Type as DB cluster parameter group.

    Example: postgresql cluster parameter group

  5. Specify the required fields and click Create.

2. Configure the parameters

For the parameter group you just created:

  1. Click Edit parameters in the top right.

  2. Search and update the following parameters:

    Parameter Value Description
    max_replication_slots 5 The number of clients that can connect to the server. Default value: 10. RDS recommends to set this value to at least 5 so that internal replication by RDS is not affected.
    rds.log_replication 1 The setting to enable or disable logical replication. The value of 1 is required to enable write-ahead logging (WAL) at the logical level.
    wal_sender_timeout 0 The time, in seconds, after which PostgreSQL terminates the replication connections due to inactivity. Default value: 60 seconds. You must set the value to 0 so that the connections are never terminated and your Pipeline does not fail.
    You can use the following query to check the value configured for the parameter:
    show wal_sender_timeout

3. Apply the parameter group to your PostgreSQL database

  1. In your Amazon RDS console, click Databases in the left navigation pane.

  2. In the Databases page, click the DB identifier for your database, and the, Modify.

  3. Select the DB cluster parameter group you just created.

  4. Set the backup retention period to at least 3 days. This setting defines the number of days for which automated backups are retained.

    Database settings

For your settings to take affect, reboot the DB instance.

Whitelist Hevo’s IP Addresses

You need to whitelist the Hevo IP addresses for your region to enable Hevo to connect to your PostgreSQL database.

To do this:

1. Add inbound rules

  1. Open the Amazon RDS console.

  2. In the left navigation pane, click Databases (or Instances if you’re using an older version).

  3. In the Databases section on the right, click the DB identifier of the Amazon Aurora instance to configure a security group on.

    DB Identifier

  4. In the Connectivity & security tab, click the link text under Security, VPC security groups.

    VPC Security groups

  5. In the Actions drop-down on the top right, click Edit inbound rules.

    Edit inbound rules

  6. In the Edit inbound rules page:

    1. Click Add rule.

    2. Add a new rule with Hevo’s IP addresses for your region to give access to the PostgreSQL instance.

    3. Click Save rules.

      Add rule

2. Configure Virtual Private Cloud (VPC)

  1. In the Amazon RDS console, click the VPC link text.

    VPC link

  2. In the Your VPCs page, click on the VPC ID, and then, the Network ACL link. ACL link

  3. Click the Inbound Rules tab and ensure that the IP addresses you added have a setting of ALLOW. Check rules are enabled

Grant Privileges to the User

Grant privileges to the database user connecting to the PostgreSQL database as follows:

  1. Log into your Amazon Aurora PostgreSQL database as a user with grant privilege.

  2. Enter the following commands to give accesses to the database user:

     GRANT CONNECT ON DATABASE <database_name> TO <database_username>;
     GRANT USAGE ON SCHEMA <schema_name> TO <database_username>;
     GRANT SELECT ON DATABASE <database_name> TO <database_username>;
  3. Alter the schema’s default privileges to grant SELECT privileges on tables to the database user:

     GRANT SELECT ON TABLES TO <database_username>;

    Note: If you want to use Log-based Incremental Replication, grant the rds_replication role to the database user. Log in to the database as a user with the rds_superuser role and run the following command:

     GRANT rds_replication TO <database_username>;

Source Considerations

  • Amazon Aurora PostgreSQL does not support Logical Replication on read replicas. To enable log-based replication, select a master database instance.


  • The data type Array in the Source is automatically mapped to Varchar at the Destination. No other mapping is currently supported.

See Also

Revision History

Refer to the following table for the list of key updates made to this page:

Date Release Description of Change
Apr-25-2022 NA - Added section, Source Considerations.
- Added a prerequisite for connecting to a master database if logical replication is required.
Feb-07-2022 1.81 Updated section, Whitelist Hevo’s IP Address to remove details about Outbound rules as they are not required.
Jan-24-2022 1.80 Removed from Limitations that Hevo does not support UUID datatype as primary key.
Dec-20-2021 1.78 Updated section, Configure the parameters.
Sep-09-2021 1.71 Updated the section, Limitations to include information about columns with the UUID data type not being supported as a primary key.
Jun-14-2021 1.65 Updated the Grant Privileges to the User section to include latest commands.
Last updated on 16 Jun 2022