PostgreSQL on Amazon RDS

This page was generated from content adapted from the AWS Developer Guide

PostgreSQL features

  • Note Huge pages aren't supported for db.m1, db.m2, and db.m3 DB instance classes.

  • Note In addition to the native PostgreSQL logical replication feature introduced in PostgreSQL 10, RDS for PostgreSQL also supports the pglogical extension. For more information, see Using pglogical to synchronize data across instances.

Connecting to a PostgreSQL instance

  • Note A connection attempt with --no-password fails when the server requires password authentication and a password is not available from other sources. For more information, see the psql documentation.

Using a custom DNS server for outbound network access

  • Note If you don't set up a custom DNS server and rds.custom_dns_resolution is set to 1, hosts are resolved using an Amazon Route 53 private zone. For more information, see Working with private hosted zones.

Upgrading the PostgreSQL DB engine

Upgrading a PostgreSQL DB snapshot engine version

  • Note You can't upgrade automated DB snapshots that are created during the automated backup process.

Working with read replicas for RDS for PostgreSQL

  • Note For cascading read replicas, RDS for PostgreSQL supports 15 read replicas for each source DB instance at first level of replication, and 5 read replicas for each source DB instance at the second and third level of replication.

Importing data into PostgreSQL

  • Note The PostgreSQL command pg_dumpall requires super_user permissions that are not granted when you create a DB instance, so it cannot be used for importing data.

Exporting PostgreSQL data to Amazon S3

  • Note Cross-account export to Amazon S3 isn't supported.

  • Note You can save DB snapshot data to Amazon S3 using the AWS Management Console, AWS CLI, or Amazon RDS API. For more information, see Exporting DB snapshot data to Amazon S3.

Invoking a Lambda function from RDS for PostgreSQL

  • Note Invoking an AWS Lambda function is supported in these RDS for PostgreSQL versions: All PostgreSQL 15 versions PostgreSQL 14.1 and higher minor versions PostgreSQL 13.2 and higher minor versions PostgreSQL 12.6 and higher minor versions

Using PostgreSQL extensions

  • Note As of RDS for PostgreSQL 14.5, RDS for PostgreSQL supports Trusted Language Extensions for PostgreSQL. This feature is implemented as the extension pg_tle, which you can add to your RDS for PostgreSQL DB instance. By using this extension, developers can create their own PostgreSQL extensions in a safe environment that simplifies the setup and configuration requirements. For more information, see Working with Trusted Language Extensions for PostgreSQL.

  • Note RDS for PostgreSQL doesn't support the utl_file package that is part of the orafce extension. This is because the utl_file schema functions provide read and write operations on operating-system text files, which requires superuser access to the underlying host. As a managed service, RDS for PostgreSQL doesn't provide host access.

  • Note Parameter settings at the session level take precedence over the settings in the custom DB parameter group for the RDS for PostgreSQL DB instance. If you don't want database users to bypass your audit logging configuration settings, be sure to change their permissions.

Working with Trusted Language Extensions for PostgreSQL

  • Note You need to have the privileges of the pgtle_admin role to follow this procedure.

Last updated