PostgreSQL

PostgreSQL is an open source, object-relational database built with a focus on extensibility, data integrity, and speed. Its concurrency support makes it fully ACID compliant, and it supports dynamic loading and catalog-driven operations to let users customize its data types, functions, and more.

Plans and Pricing

There are two kinds of database cluster plans you can choose from: single node clusters and high availability clusters.

  • Single node clusters begin at $15.00 per month for a single node cluster with 1 GB of RAM. Single node clusters are not highly available, but they feature automatic failover. These clusters are a good fit for preliminary development and testing.

  • High availability clusters begin at $30.00 per month for a 2 GB RAM/1 vCPU primary node with at least one $20.00 per month matching standby node for automatic failover.

    You can add or remove standby nodes at any time. Other features, like point-in-time recovery and read-only nodes, vary by database engine. Learn more about feature availability.

  • Read-only nodes begin at $10.00 per month. Read-only nodes are replicas of a cluster’s primary node located in additional geographical regions.

Inbound and outbound data transfer is included in the price of the cluster.

Machine Type

All managed databases are deployed onto Droplets. You can choose to deploy your managed database on a Droplet with a CPU that is shared with other DigitalOcean users, or deploy it on a machine with a dedicated CPU.

Learn more about shared CPU vs. dedicated CPU and the best use cases for each kind of plan in Choosing the Right Droplet Plan.

Machine Type CPU vCPUs Memory
Basic Shared 1 - 8 1 - 16 GB RAM
General Purpose Dedicated 2 - 40 8 - 160 GB RAM
4 GB RAM / vCPU
Memory-Optimized Dedicated 2 - 32 16 - 256 GB RAM
8 GB RAM / vCPU
Storage-Optimized Dedicated 2 - 32 16 - 256 GB RAM
8 GB RAM / vCPU
150 - 225 GB SSD / vCPU

Review the region availablity matrix to see which machine types are available for each region.

Regional Availability

PostgreSQL database clusters are in General Availability. Our regional availability matrix has more detail about our datacenter regions and product availability. Managed databases will not be offered in NYC2, AMS2, or SFO1.

Features

Managed Database Cluster Features

  • Automatic updates. You can select a date and time during which weekly automatic updates for the database engine and operating system will occur to keep the service stable and secure.

  • Daily point-in-time backups. Full cluster backups are taken daily and write-ahead-logs are maintained to allow you to restore to any point-in-time within the previous seven days.

  • High availability with automated failover. In the event of a failure, managed databases with a standby node will automatically switch data handling to the standby node to prevent unplanned downtime. Learn more about high availability for managed databases.

  • End-to-end security. Data is encrypted at rest with LUKS and in transit with SSL.

  • Cluster metrics and alerting. Cluster metrics visualizations help you monitor the performance of the nodes in a database cluster, like resource usage, to guide capacity planning and optimization. Alert policies notify you when a metric rises above or falls below a threshold you set, like high CPU or low memory.

PostgreSQL Features

  • Read-only nodes. You can add read-only nodes in geographically disparate data centers.

  • Database metrics and query insights. PostgreSQL-specific performance metrics help you assess the health of the database, pinpoint performance bottlenecks, and identify unusual use patterns that may indicate an application bug or security breach.

    PostgreSQL database metrics include number of database connections, cache hit ratio, deadlock creation rate, and fetch, insert, delete, and update throughput.

Limits

Managed Database Cluster Limits

  • By default, you are limited to 10 clusters per account or team. If you reach this limit but need to create more database clusters, you can submit a request for a higher limit by clicking “Request Increase” on the window that shows when you attempt to create another cluster.

  • Each cluster is limited to 5 read-only nodes.

  • You cannot delete the default database and user.

  • Point-in-time-recovery (PITR) is limited to the last 7 days.

  • VPC networks are only available to resources, accounts, and teams in the same region as the VPC network,

  • You cannot resize cluster nodes to smaller sizes. To move from a bigger node to a smaller node, create a new cluster with the desired node size and import your data.

  • You cannot currently add DigitalOcean Cloud Firewalls to a database cluster’s trusted sources.

  • By default, database clusters only support 100 trusted sources. Each trusted source must resolve to a single IP address, and Droplets typically have two IP addresses (public and private). Therefore, if you are directly adding Droplets as a trusted source, adding 50 Droplets will reach the limit. If you need to add more than 100 trusted sources, contact DigitalOcean support.

  • When you restore from a backup, you must restore to a new node and re-add any read-only or standby nodes. See How to Restore from Backups for details.

PostgreSQL Limits

  • We support only PostgreSQL v10, v11, v12, and v13.

  • We support only selected PostgreSQL extensions. See Supported PostgreSQL Extensions for a comprehensive list.

  • The number of available backend connections varies by plan size:

    Plan Size Available Backend Connections
    1 GB RAM 22
    2 GB RAM 47
    4 GB RAM 97
    8 GB RAM 197
    16 GB RAM 397
    32 GB RAM 797
    64 GB RAM 1,000

    We recommend utilizing connection pooling, backed by PgBouncer, for databases with high connection requirements. However, these PgBouncer pool connections are currently limited to 20 per database. If you require more PgBouncer pool connections than this, contact support.

  • To maintain cluster stability, users cannot access the superuser role.

Known Issues

Managed Database Cluster Known Issues

  • You must use a third-party client to manage access control lists (ACLs). You can add users and databases from the DigitalOcean Control Panel.

  • You can’t use DigitalOcean’s Cloud Firewalls with managed databases. Until support is available, you can restrict access to nodes by their incoming IPv4 addresses.

  • Point-in-time-recovery (PITR) operations are limited to the last 7 days. The date picker doesn’t restrict you from choosing an earlier date; you will receive an error if you try to recover from a date outside of the 7-day window.

PostgreSQL Known Issues

  • Alerting on PostgreSQL metrics is not yet available.

Latest Updates

27 May 2021

3 March 2021

  • Online migration for PostgreSQL and Redis databases has been released in Beta. Select users can now migrate Redis and PostgreSQL databases that reside inside and outside of DigitalOcean to existing database clusters in their DigitalOcean account. Redis migrations from AWS ElasticCache are not currently supported.

7 July 2020

For more information, see all PostgreSQL release notes.