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.
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/month for a single node cluster with 1GB 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 $50/month ($0.074/hour) for the 2GB RAM/2 vCPU plan when you add at least one 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..
Inbound data transfer is included in the price of the cluster. Outbound data transfer billing is waived until January 1, 2020, at which time it will be billed at $0.01/GB.
MySQL 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.
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. Databases are automatically backed up every day, which lets you restore data to any point 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.
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 thorughput and latency for fetches, inserts, deletes, and updates.
By default, you are limited to 3 clusters per account or team.
Each cluster is limited to 5 read-only nodes.
You cannot delete the default database and user.
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.
Point-in-time-recovery (PITR) is limited to the last 7 days.
Private networking is available within the same account or team only and within the same datacenter region only.
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.
We support only MySQL v8.
We do not support query statistics.
Connection pooling is not supported for MySQL.
In order to maintain cluster stability, users cannot use the
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
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.
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.
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.