How to create and manage read replicas in Azure Database for MySQL Flexible Server using the Azure portal

[APPLIES TO: Azure Database for MySQL - Flexible Server

In this article, you will learn how to create and manage read replicas in the Azure Database for MySQL flexible server using the Azure portal.

Note

  • If GTID is enabled on a primary server (gtid_mode = ON), newly created replicas will also have GTID enabled and use GTID based replication. To learn more refer to Global transaction identifier (GTID)

Prerequisites

Create a read replica

Important

When you create a replica for a source that has no existing replicas, the source will first restart to prepare itself for replication. Take this into consideration and perform these operations during an off-peak period.

A read replica server can be created using the following steps:

  1. Sign into the Azure portal.

  2. Select the existing Azure Database for MySQL flexible server that you want to use as a source. This action opens the Overview page.

  3. Select Replication from the menu, under SETTINGS.

  4. Select Add Replica.

    Azure Database for MySQL - Replication

  5. Enter a name for the replica server. If your region support Availability Zones, you can select Availability zone of your choice.

    Azure Database for MySQL - Replica name

  6. Select OK to confirm creation of the replica.

Note

Read replicas are created with the same server configuration as the source. The replica server configuration can be changed after it has been created. The replica server is always created in the same resource group, same location and same subscription as the source server. If you want to create a replica server to a different resource group or different subscription, you can move the replica server after creation. It is recommended that the replica server's configuration should be kept at equal or greater values than the source to ensure the replica is able to keep up with the source.

Once the replica server has been created, it can be viewed from the Replication blade.

Azure Database for MySQL - List replicas

Stop replication to a replica server

Important

Stopping replication to a server is irreversible. Once replication has stopped between a source and replica, it cannot be undone. The replica server then becomes a standalone server and now supports both read and writes. This server cannot be made into a replica again.

To stop replication between a source and a replica server from the Azure portal, use the following steps:

  1. In the Azure portal, select your source Azure Database for MySQL flexible server.

  2. Select Replication from the menu, under SETTINGS.

  3. Select the replica server you wish to stop replication for.

    Azure Database for MySQL - Stop replication select server

  4. Select Stop replication.

    Azure Database for MySQL - Stop replication

  5. Confirm you want to stop replication by clicking OK.

    Azure Database for MySQL - Stop replication confirm

Delete a replica server

To delete a read replica server from the Azure portal, use the following steps:

  1. In the Azure portal, select your source Azure Database for MySQL flexible server.

  2. Select Replication from the menu, under SETTINGS.

  3. Select the replica server you wish to delete.

    Azure Database for MySQL - Delete replica select server

  4. Select Delete replica

    Azure Database for MySQL - Delete replica

  5. Type the name of the replica and click Delete to confirm deletion of the replica.

    Azure Database for MySQL - Delete replica confirm

Delete a source server

Important

Deleting a source server stops replication to all replica servers and deletes the source server itself. Replica servers become standalone servers that now support both read and writes.

To delete a source server from the Azure portal, use the following steps:

  1. In the Azure portal, select your source Azure Database for MySQL flexible server.

  2. From the Overview, select Delete.

    Azure Database for MySQL - Delete source

  3. Type the name of the source server and click Delete to confirm deletion of the source server.

    Azure Database for MySQL - Delete source confirm

Monitor replication

  1. In the Azure portal, select the replica Azure Database for MySQL flexible server you want to monitor.

  2. Under the Monitoring section of the sidebar, select Metrics:

  3. Select Replication lag in seconds from the dropdown list of available metrics.

    Select Replication lag

  4. Select the time range you wish to view. The image below selects a 30 minute time range.

    Select time range

  5. View the replication lag for the selected time range. The image below displays the last 30 minutes.

    Select time range 30 minutes

Next steps

  • Learn more about read replicas
  • You can also monitor the replication latency by following the steps mentioned here.
  • To troubleshoot high replication latency observed in Metrics, visit the link.