Amazon Relational Database Service
User Guide (API Version 2014-10-31)

Creating a DB Instance Running the PostgreSQL Database Engine

The basic building block of Amazon RDS is the DB instance. This is the environment in which you will run your PostgreSQL databases.


You must complete the tasks in the Setting Up for Amazon RDS section before you can create or connect to a DB instance.

Create a PostgreSQL DB Instance

To launch a PostgreSQL DB instance

  1. Sign in to the AWS Management Console and open the Amazon RDS console at

  2. In the top right corner of the AWS Management Console, select the AWS Region where you want to create the DB instance.

  3. In the navigation pane, choose Databases.

    If the navigation pane is closed, choose the menu icon at the top left to open it.

  4. Choose Create database to start open on the Select engine page.

								Engine selection
  5. On the Select engine page, choose the PostgreSQL icon, and then choose Next.

  6. Next, the Use case page asks if you are planning to use the DB instance you are creating for production. If you are, choose Production. If you choose this option, the following are preselected in a later step:

    • Multi-AZ failover option

    • Provisioned IOPS storage option

    • Enable deletion protection option

    Choose Next when you are finished.

  7. On the Specify DB Details page, specify your DB instance information. Choose Next when you are finished.

    For This Parameter Do This

    License Model

    PostgreSQL has only one license model. Choose postgresql-license to use the general license agreement for PostgreSQL.

    DB Engine Version

    Choose the version of PostgreSQL you want to use.

    DB Instance Class

    Choose db.t2.small for a configuration that equates to 2 GiB memory, 1 ECU (1 virtual core with 1 ECU), 64-bit platform, and moderate I/O capacity. For more information about all the DB instance class options, see Choosing the DB Instance Class.

    Multi-AZ Deployment

    Choose Yes to have a standby replica of your DB instance created in another Availability Zone for failover support. We recommend Multi-AZ for production workloads to maintain high availability. For development and testing, you can choose No.

    For more information, see High Availability (Multi-AZ) for Amazon RDS.

    Storage Type

    Choose the storage type General Purpose (SSD). For more information about storage, see Amazon RDS DB Instance Storage.

    Allocated Storage

    Type 20 to allocate 20 GiB of storage for your database. In some cases, allocating a higher amount of storage for your DB instance than the size of your database can improve I/O performance. For more information about storage allocation, see Amazon Relational Database Service Features.

    DB Instance Identifier

    Type a name for the DB instance that is unique for your account in the AWS Region you chose. You can add some intelligence to the name, such as including the AWS Region and DB engine you chose, for example postgreSQL-test.

    Master Username

    Type a name using alphanumeric characters to use as the master user name to log on to your DB instance. For information on the default privileges granted to the master user name, see Amazon RDS for PostgreSQL Versions and Extensions

    Master Password and Confirm Password

    Type a password that contains from 8 to 128 printable ASCII characters (excluding /,", and @) for your master password, then type the password again in the Confirm Password box.

  8. On the Configure Advanced Settings page, provide additional information that RDS needs to launch the PostgreSQL DB instance. The table shows settings for an example DB instance. Specify your DB instance information, then choose Create database.

    For This Parameter Do This


    This setting depends on the platform you are on. If you are a new customer to AWS, choose the default VPC shown. If you are creating a DB instance on the previous E2-Classic platform that does not use a VPC, choose Not in VPC. For more information about VPC, see Amazon Virtual Private Cloud (VPCs) and Amazon RDS.

    Subnet Group

    This setting depends on the platform you are on. If you are a new customer to AWS, choose default, which is the default DB subnet group that was created for your account. If you are creating a DB instance on the previous E2-Classic platform and you want your DB instance in a specific VPC, choose the DB subnet group you created for that VPC. For more information about VPC, see Amazon Virtual Private Cloud (VPCs) and Amazon RDS.

    Publicly Accessible

    Choose Yes to give the DB instance a public IP address, meaning that it is accessible outside the VPC; otherwise, choose No, so the DB instance is only accessible from inside the VPC. For more information about hiding DB instances from public access, see Hiding a DB Instance in a VPC from the Internet.

    Availability Zone

    Use the default value of No Preference unless you want to specify an Availability Zone.

    VPC Security Group

    If you are a new customer to AWS, choose the default VPC. If you created a VPC security group, choose the VPC security group you previously created.

    When you choose Create new VPC security group in the RDS console, a new security group is created with an inbound rule that allows access to the DB instance from the IP address detected in your browser.

    Database Name

    Type a name for your database of up to 63 alpha-numeric characters. If you do not provide a name, the default "postgres" database is created.

    To create additional databases, connect to the DB instance and use the SQL command CREATE DATABASE. For more information about connecting to the DB instance, see Connecting to a DB Instance Running the PostgreSQL Database Engine.

    Database Port

    Specify a port you want to use to access the database. PostgreSQL installations default to port 5432.

    DB Parameter Group

    Use the default value unless you have created your own parameter group.

    Option Group

    Use the default value unless you have created your own option group.

    Copy Tags To Snapshots

    Choose this option to have any DB instance tags copied to a DB snapshot when you create a snapshot. For more information, see Tagging Amazon RDS Resources.

    Enable Encryption

    Choose Yes to enable encryption at rest for this DB instance. For more information, see Encrypting Amazon RDS Resources.

    Backup Retention Period

    Set the number of days you want automatic backups of your database to be retained. For testing purposes, you can set this value to 1.

    Backup Window

    Unless you have a specific time that you want to have your database backup, use the default of No Preference.

    Enable Enhanced Monitoring

    Choose Yes to enable real-time OS monitoring. Amazon RDS provides metrics in real time for the operating system (OS) that your DB instance runs on. You are only charged for Enhanced Monitoring that exceeds the free tier provided by Amazon CloudWatch Logs.

    Monitoring Role

    Choose Default to use the default IAM role.


    Choose 60 to monitor the instance every minute.

    Auto minor version upgrade

    Choose Enable auto minor version upgrade to enable your DB instance to receive preferred minor DB engine version upgrades automatically when they become available. Amazon RDS performs automatic minor version upgrades in the maintenance window.

    Maintenance Window

    Choose the 30-minute window in which pending modifications to your DB instance are applied. If the time period doesn't matter, choose No Preference.

    Enable deletion protection Enable deletion protection to prevent your DB instance from being deleted. If you create a production DB instance with the AWS Management Console, deletion protection is enabled by default. For more information, see Deleting a DB Instance.
  9. On the final page, choose Create database.

  10. On the Amazon RDS console, the new DB instance appears in the list of DB instances. The DB instance will have a status of creating until the DB instance is created and ready for use. When the state changes to available, you can connect to the DB instance. Depending on the DB instance class and store allocated, it could take several minutes for the new instance to be available.

						My DB instances list


To create a PostgreSQL DB instance, use the AWS CLI create-db-instance command with the following parameters:

  • --db-instance-identifier

  • --allocated-storage

  • --db-instance-class

  • --engine

  • --master-username

  • --master-user-password

For Linux, OS X, or Unix:

aws rds create-db-instance --db-instance-identifier pgdbinstance \ --allocated-storage 20 \ --db-instance-class db.t2.small \ --engine postgres \ --master-username masterawsuser \ --master-user-password masteruserpassword

For Windows:

aws rds create-db-instance --db-instance-identifier pgdbinstance ^ --allocated-storage 20 ^ --db-instance-class db.t2.small ^ --engine postgres ^ --master-username masterawsuser ^ --master-user-password masteruserpassword

This command should produce output similar to the following:

DBINSTANCE pgdbinstance db.t2.small postgres 20 sa creating 3 **** n 9.3 SECGROUP default active PARAMGRP default.PostgreSQL9.3 in-sync


To create a PostgreSQL DB instance, use the Amazon RDS APICreateDBInstance command with the following parameters:

  • Engine = postgres

  • DBInstanceIdentifier = pgdbinstance

  • DBInstanceClass = db.t2.small

  • AllocatedStorage = 20

  • BackupRetentionPeriod = 3

  • MasterUsername = masterawsuser

  • MasterUserPassword = masteruserpassword

Example ?Action=CreateDBInstance &AllocatedStorage=20 &BackupRetentionPeriod=3 &DBInstanceClass=db.t2.small &DBInstanceIdentifier=pgdbinstance &DBName=mydatabase &DBSecurityGroups.member.1=mysecuritygroup &DBSubnetGroup=mydbsubnetgroup &Engine=postgres &MasterUserPassword=<masteruserpassword> &MasterUsername=<masterawsuser> &SignatureMethod=HmacSHA256 &SignatureVersion=4 &Version=2013-09-09 &X-Amz-Algorithm=AWS4-HMAC-SHA256 &X-Amz-Credential=AKIADQKE4SARGYLE/20140212/us-west-2/rds/aws4_request &X-Amz-Date=20140212T190137Z &X-Amz-SignedHeaders=content-type;host;user-agent;x-amz-content-sha256;x-amz-date &X-Amz-Signature=60d520ca0576c191b9eac8dbfe5617ebb6a6a9f3994d96437a102c0c2c80f88d