如何使用 Azure CLI 在 Azure Database for MySQL 灵活服务器中创建和管理只读副本

适用于: Azure Database for MySQL - 灵活服务器

本文介绍如何使用 Azure CLI 在 Azure Database for MySQL 灵活服务中创建和管理只读副本。 若要详细了解只读副本,请参阅概述

注意

  • 如果在主服务器上启用了 GTID (gtid_mode = ON),则新创建的副本也会启用 GTID 并使用基于 GTID 的复制。 若要了解详细信息,请参阅全局事务标识符 (GTID)

Azure CLI

可以使用 Azure CLI 创建和管理只读副本。

先决条件

创建只读副本

重要

在为没有现有副本的源创建副本时,该源服务器会先重启,以便为复制做好自身准备。 请考虑这一点并在非高峰期执行这些操作。

可以使用以下命令创建只读副本服务器:

az mysql flexible-server replica create --replica-name mydemoreplicaserver --source-server mydemoserver --resource-group myresourcegroup

重要

使用 CLI 从具有专用访问权限的源服务器创建区域内读取副本时,会沿用源服务器的网络设置。 专用访问输入参数(如“private-dns-zone”、“subnet”和“vnet”)将被忽略,并且使用与源服务器相同的专用访问设置创建区域内只读副本。

注意

只读副本是使用与源服务器相同的服务器配置创建的。 副本服务器配置在创建后可以更改。 始终会在与源服务器相同的资源组、位置和订阅中创建副本服务器。 如果要将副本服务器创建到不同的资源组或不同的订阅,可以在创建后移动副本服务器。 建议副本服务器的配置应始终采用与源服务器相同或更大的值,以确保副本能够与源服务器保持一致。

列出源服务器的副本

若要查看给定源服务器的所有副本,请运行以下命令:

az mysql flexible-server replica list --server-name mydemoserver --resource-group myresourcegroup

停止复制到副本服务器

重要

停止复制到服务器操作不可逆。 一旦源服务器和副本服务器之间的复制停止,将无法撤消它。 然后,副本服务器将成为独立服务器,并且现在支持读取和写入。 此服务器不能再次成为副本服务器。

可以使用以下命令停止复制到只读副本服务器:

az mysql flexible-server replica stop-replication --name mydemoreplicaserver --resource-group myresourcegroup

删除副本服务器

可以通过运行 az mysql server delete 命令删除只读副本服务器。

az mysql flexible-server delete --resource-group myresourcegroup --name mydemoreplicaserver

删除源服务器

重要

删除源服务器会停止复制到所有副本服务器,并删除源服务器本身。 副本服务器成为现在支持读取和写入的独立服务器。

若要删除源服务器,可以运行 az mysql flexible-server delete 命令。

az mysql flexible-server delete --resource-group myresourcegroup --name mydemoserver

后续步骤