In this tutorial, you will learn how to create an environment to run your PostgreSQL database (we call this environment an instance), connect to the database, and delete the DB instance. We will do this using Amazon Relational Database Service (Amazon RDS) and everything done in this tutorial is free-tier eligible.

Manage Your AWS Resources

Sign in to the Console

When you click here, the AWS management console will open in a new browser window, so you can keep this step-by-step guide open. When this screen loads, find RDS under Database and click to open the Amazon RDS Console.

AWS Console Image

(click to zoom)

1-rds-console

In this step, we will use Amazon RDS to create a PostgreSQL DB Instance with db.t2.micro DB instance class, 20 GB of storage, and automated backups enabled with a retention period of one day.  As a reminder, all of this is free tier eligible.


a. In the top right corner of the Amazon RDS console, select the Region in which you want to create the DB instance.

Note: AWS Cloud resources are housed in highly available data center facilities in different areas of the world. You have the ability to choose which Region to host your Amazon RDS activity in. 

2-rds-region

(click to zoom)

2-rds-region

b.   In the Create database section, choose Create database.

 

 

3-rds-launch-instance

(click to zoom)

3-rds-launch-instance

c.  You now have options to select your engine. For this tutorial, choose the PostgreSQL icon, choose Only enable options eligible for RDS Free Usage Tier and then click Next.

4-rds-select-postgresql

(click to zoom)

4-rds-select-postgresql

d. You will now configure your DB instance. The list below shows the example settings that you can use for this tutorial:

Instance specifications:

  • License model: Select the default, postgresql-license.
  • DB engine version: Select the default version.
  • DB instance class: Select the default, db.t2.micro --- 1 vCPU, 1 GIB RAM. This equates to 1 GB memory and 1 vCPU. To see a list of supported instance classes, see Amazon RDS Product Details.
  • Multi-AZ deployment: Note that you will have to pay for Multi-AZ Deployment. Using a Multi-AZ Deployment automatically provisions and maintains a synchronous standby replica in a different Availability Zone.  For more information, see High Availability Deployment
  • Storage type: Select General Purpose (SSD). For more information about storage, see Storage for Amazon RDS.
  • Allocated storage: Select the default of 20 to allocate 20 GB of storage for your database. You can scale up to a maximum of 16 TB with Amazon RDS.
  • Enable storage autoscaling: If your workload is cyclical or unpredictable, you would enable storage autoscaling to enable RDS to automatically scale up your storage when needed. This option does not apply to this tutorial.

Settings:

  • DB instance identifier: Type a name for the DB instance that is unique for your account in the Region you selected. For this tutorial, we will name it rds-postgresql-10minTutorial.
  • Master username: Type a username that you will use to log in to your DB instance. We will use masterUsername in this example.
  • Master password: Type a password that contains from 8 to 41 printable ASCII characters (excluding /,", and @) for your master user password.
  • Confirm password: Retype your password.

Click Next.

4-rds-dev-test

(click to zoom)

4-rds-dev-test

e. You are now on the Configure advanced settings page where you provide additional information that RDS needs to launch your PostgreSQL DB instance. The list below shows settings for our example DB instance.

Network & Security
  • Public accessibility: Choose Yes. This will allocate an IP address for your database instance so you can directly connect to the database from your own device.
  • VPC security groups: Select Create new VPC security group. This will create a security group that will allow connection from the IP address of the device that you are currently using to the database created.

Database options

  • Database name: Type a database name that is 1 to 64 alphanumeric characters. If you do not provide a name, Amazon RDS will not automatically create a database on the DB instance you are creating. For this tutorial, use myDatabase.
  • Port: Leave the default value of 5432.
  • Option group: This option is not available in the free tier. Amazon RDS uses option groups to enable and configure additional features.  For more information, see Working with Option Groups.
  • IAM DB authentication: Select Disable. This option allows you to manage your database credentials through AWS IAM users and groups.

Encryption

This option is not available in the free tier. For more information, see Encrypting Amazon RDS Resources.

Backup

  • Backup retention period: You can choose the number of days to retain the backup you take. For this tutorial, set this value to 1 day.
  • Backup window: Use the default of No preference.

Monitoring

  • Enhanced monitoring: Select Enable enhanced monitoring. Enabling enhanced monitoring will give you metrics in real time for the operating system (OS) that your DB instance runs on. For more information, see Viewing DB Instance Metrics.

Performance Insights

Select Disable Performance Insights for this tutorial.

Maintenance

  • Auto minor version upgrade: Select Enable auto minor version upgrade to receive automatic updates when they become available.
  • Maintenance window: Select No preference.

Deletion protection

Clear Enable deletion protection for this tutorial. When this option is enabled, you can't delete the database.

Click Create database.

5-rds-details

(click to zoom)

5-rds-details

f. Your DB Instance is now being created.  Click View Your DB Instances.

Note: Depending on the DB instance class and storage allocated, it could take several minutes for the new DB instance to become available.

The new DB instance appears in the list of DB instances on the RDS console. 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 a database on the DB instance. 

Feel free to move on to the next step as you wait for the DB instance to become available.

ms-sql-8

(click to zoom)

ms-sql-8

After the database instance creation is complete and the status changes to available, you can connect to a database on the DB instance using any standard SQL client. In this step, we will download SQL Workbench, which is a popular SQL client.

Note:  Remember to run SQL Workbench from the same device on the same network from which you created the DB Instance. The security group your database is placed in is configured to allow connection only from the device from which you created the DB instance. If you try to connect from a different network or device, your IP address would have changed. Your database can be configured to be accessed from any IP address (see details here), but for this tutorial we will keep it simple.


a. Go to the SQL Workbench website and click Generic package for all systems including all optional libraries

 

 

8-rds-download-sql-workbench

(click to zoom)

8-rds-download-sql-workbench

b. Next, click here to download the latest JDBC driver from the PostgreSQL website. Save the file in a place where you can easily find it later. This file is needed in the next step.

8-rds-download-driver

(click to zoom)

8-rds-download-driver

In this step, we will connect to the database you created using SQL Workbench.


a. After you have completed your download, install SQL Workbench.

Note: You can launch the application using the .exe file (Windows) or the shell script (macOS, Linux) included in the download folder. See the PDF file included in the download for details.

b. Open the program. A dialog box appears.  Enter the following:

  • Driver: PostgreSQL (org.postgresql.Driver)

Note: When you select a driver from the drop-down menu you will be prompted to edit the driver definition. Select Yes. In the next dialog box, click the folder icon and select the driver you downloaded in the previous step.

  • URL: You can find your JDBC URL on the Amazon RDS console as shown in the screenshot to the right. Enter or paste the endpoint (including port) of the DB Instance after "jdbc:postgresql://". Finally, append a forward slash and the name of your data base instance to the end of the URL. For example, our URL could be jdbc:postgresql://postgresql-instance1.cg034hpkmmjt.us-east-1.rds.amazonaws.com/myDatabase.
  • Username: Type in the username you created for the Amazon RDS database. In this tutorial, it is 'masterUsername.'
  • Password: Enter the password that you used when creating the Amazon RDS database. 

Click OK.

 

9-rds-sql-connection-profile

(click to zoom)

9-rds-sql-connection-profile

c. You are now connected to the database. From your Amazon RDS Console, select your instance from the Databases list and you should see that there is "1 Connection" to your database listed under the Current activity heading. 

Note: At this point your database is ready to use. You can start creating tables, insert data, and run queries from SQL Workbench client. 

10-rds-connection

(click to zoom)

10-rds-connection

You can easily delete the PostgreSQL DB Instance from the Amazon RDS console. It is a best practice to delete instances that you are no longer using so that you don’t keep getting charged for them.


a. Go back to your Amazon RDS Console.  Select Databases, choose the instance that you want to delete, and then select Delete from the Actions dropdown menu.

 

11-rds-delete

(click to zoom)

11-rds-delete

b. You are asked to create a final snapshot and to confirm the deletion. For our example, do not create a final snapshot, acknowledge that you want to delete the instance, and then click Delete. 

    Note: Deleting your DB Instance may take a few minutes.

12-rds-confirm-delete

(click to zoom)

12-rds-confirm-delete

You have created, connected to, and deleted a PostgreSQL Database Instance with Amazon RDS.  Amazon RDS makes it easy to set up, operate, and scale a relational database in the cloud. It provides cost-efficient and resizable capacity while managing time-consuming database administration tasks, freeing you up to focus on your applications and business.

Now that you have learned to create and connect to a PostgreSQL Database through Amazon RDS, you can progress to the next tutorial where you will learn to restore a DB Instance from a DB Snapshot.

Create a Web Server and an Amazon RDS Database »

Yes
No