Multi-AZ DB cluster deployments

A Multi-AZ DB cluster deployment in Amazon RDS is a high availability setup with a main database and two additional readable replicas. These replicas are located in separate Availability Zones within the same AWS Region. Multi-AZ DB clusters provide increased availability, enhanced capacity for reading data, and quicker write response times compared to Multi-AZ DB instance deployments.

multiaz-rds-cluster

To import data from an on-premises database to a Multi-AZ DB cluster, follow the steps outlined in the guide on importing data to an Amazon RDS MariaDB or MySQL database with reduced downtime.

You can also buy reserved DB instances specifically for a Multi-AZ DB cluster. Details on this can be found in the documentation on reserved DB instances for Multi-AZ DB clusters.

Overview of Multi-AZ DB Clusters

In a Multi-AZ DB cluster, Amazon RDS replicates changes from the main (writer) DB instance to both reader DB instances using native replication features of the database engine. When a modification occurs on the main instance, it is sent to each reader instance.

Multi-AZ DB cluster deployments use semisynchronous replication, requiring acknowledgment from at least one reader instance for a change to be committed. There is no need for acknowledgment that events are fully executed and committed on all replicas.

Reader instances automatically take over if the main instance experiences an outage and also handle reading data to improve application read throughput. RDS manages failover based on which reader instance has the most recent change record.

Limitations for Multi-AZ DB Clusters

  • Only Provisioned IOPS storage is supported.
  • Modifications are done at the DB cluster level, not the DB instance level.
  • Certain features are not supported, including IPv6 connections, cross-Region automated backups, exporting snapshot data to Amazon S3, IAM DB authentication, Kerberos authentication, and modifying the port.
  • Alternatives are provided for some limitations, such as restoring to a point in time with a different port.
  • Various actions like stopping and starting the DB cluster, copying a snapshot, encrypting an unencrypted cluster, and others are not supported for Multi-AZ DB clusters.
  • Specific system stored procedures are supported for MySQL and PostgreSQL Multi-AZ DB clusters, and certain extensions are not supported for PostgreSQL. Check the documentation for details on supported procedures and extensions.

To handle a Multi-AZ DB cluster using the console, follow these steps:

  1. Log in to the AWS Management Console and access the Amazon RDS console at https://console.aws.amazon.com/rds/.

  2. In the left sidebar, click on "Databases," and then select the Multi-AZ DB cluster you want to manage.

  3. The console will display an image of the Multi-AZ DB cluster for your reference.

  4. The actions available in the "Actions" menu depend on whether you have the entire Multi-AZ DB cluster selected or if you have a specific DB instance within the cluster selected.

  5. If you choose the Multi-AZ DB cluster, you can view the cluster details and perform actions that apply to the entire cluster.

  6. If you select a specific DB instance within the Multi-AZ DB cluster, you can view details and perform actions specific to that particular DB instance.