MySQL is an open source, object-relational database built with speed and reliability in mind. Its large and active developer community has created many third-party applications, tools, and libraries that expand MySQL’s functionality.

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. We recommend these clusters 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
Storage-Optimized Dedicated 2 - 32 16 - 256 GB RAM
150 - 225 GB SSD / vCPU

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

Regional Availability

MySQL database clusters are in General Availability in the following regions:

Shared CPU
General Purpose
Storage-Optimized "Low availability"

Learn more about regional availability.


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.

MySQL Features

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

  • Database metrics and query insights. MySQL-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.

    MySQL master server metrics include connection status, index vs. sequential reads, and operations throughput. MySQL database metrics include throughput and latency for fetches, inserts, deletes, and updates.


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.

  • 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 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 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.

  • You cannot migrate databases from clusters inside of DigitalOcean to other clusters inside of DigitalOcean using the online migration feature.

  • 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.

MySQL Limits

  • Each cluster is limited to 3 nodes.

  • We support only MySQL v8.

  • We do not support query statistics.

  • Connection pooling is not supported for MySQL.

  • You cannot change the storage engine for MySQL from InnoDB to MyISAM.

  • To maintain cluster stability, users cannot use the root user.

  • The MySQL system variables are set depending upon the size of the cluster’s Droplets. You can’t edit them, but you can see what they are with SHOW VARIABLES;.

  • MySQL nodes can have up to 75 simultaneous connections per gigabyte of usable memory, rounded down to the nearest gigabyte. Usable memory is the total memory on the node minus approximately 350 MB of overhead for the operating system and management.

    Plan Size Available Backend Connections
    1 GB RAM 75
    2 GB RAM 150
    4 GB RAM 225
    8 GB RAM 700
    16 GB RAM 1,500
    32 GB RAM 3,100
    64 GB RAM 6,200

    max_connections is set to one connection higher to accommodate a system process that does not count against the node’s connection limit. For example, a 4 GB node has roughly 3.6 GB of usable memory. It can have up to 3 * 75 = 225 connections and its max_connections is set to 226.

  • Each MySQL cluster allows 75 backend connections per 1 GB of usable memory. Usable memory is the total memory on the node minus the estimated 350 MiB used by the operating system. Usable memory is rounded to the nearest gigabyte.

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.

  • MySQL databases containing tables without a primary key and which contain more than 5000 rows may experience replication issues. To prevent this, by default, DigitalOcean now requires you to add a primary key for each new table you create in any managed MySQL database created after 8 April 2020. We strongly recommend that you also add primary keys in existing databases to avoid replication issues. You can override this requirement by making a configuration request via our API.

Latest Updates

4 March 2022

  • You can now configure your MySQL, PostgreSQL, and Redis Managed Databases by making a PATCH request to /v2/databases/{database_cluster_uuid}/config. For example:

      "config": {
        "sql_require_primary_key": true

    For more details, see the full reference documentation for the managed databases API.

1 February 2022

  • The database online migration feature for the MySQL, PostgreSQL, and Redis database engines no longer supports migrating databases from clusters inside of DigitalOcean to other clusters inside of DigitalOcean.

25 January 2022

  • Online migration is now available for the MySQL, PostgreSQL, and Redis database engines. Online migration allows you to migrate databases from external servers or cloud providers to databases in your DigitalOcean account.

For more information, see all MySQL release notes.