有奖捉虫:云通信与企业服务文档专题,速来> HOT

操作场景

云数据库 MySQL 支持用户创建一个或多个只读实例,以支持用户的读写分离和一主多从应用场景,可显著提高用户数据库的读负载能力。
目前已支持数据库代理,创建只读实例后,可以购买数据库代理并开启读写分离功能,在应用程序中配置数据库代理地址,就可以使写请求自动转发到主实例,读请求自动转发到各个只读实例。
说明
只读实例费用请参见 产品定价
只读实例支持在实例详情页开启独立内网地址,并且支持内网 IP 和端口自定义修改。



基本概念

RO 组:带有负载均衡功能的只读实例组。若 RO 组内有多个只读实例,可将用户读请求量均匀分配到组内的每个只读实例上。且 RO 组会对外提供 IP、PORT 供访问数据库。
只读实例:可以支持读请求的单节点(无从机)实例。只读实例无法单独存在,每个只读实例都属于某个 RO 组。

基础架构

只读实例采用 MySQL binlog 主从同步功能,将主实例(源数据库)的更改同步到所有只读实例中。只读实例均采用单节点(不含备机)架构,若只读实例宕机,我们将不断的尝试恢复,若需要更高的可用性,您可以选择 RO 组。
注意
RO 组中只有一个只读实例的情况会存在单点风险,且此 RO 组不会计入云数据库 MySQL 服务的整体可用性计算中,单个只读实例不提供可用性 SLA 保证,建议 RO 组中至少选购2个只读实例,来保证 RO 组的可用性。




功能限制

同一个 RO 组内的实例类型需保持一致,不能既有通用型实例,又有独享型实例。
单节点云盘版实例不支持创建只读实例。
仅支持1GB内存、50GB硬盘及以上规格,且 MySQL 5.6 及以上版本、InnoDB 引擎的双节点、三节点主实例购买只读实例,若主实例低于此规格,请先升级主实例规格。
只读实例最低规格要求为1GB内存、50GB硬盘,且必须大于或等于主实例已购存储规格。
一个主实例最多可以创建5个只读实例。
不支持备份以及回档功能。
不支持数据迁移至只读实例。
不支持创建/删除数据库,不支持 phpMyAdmin(PMA)。
不支持创建/删除账号,不支持为账号授权以及修改账号及密码。

注意事项

只读实例无需维护账号与数据库,均从主实例同步。
若 MySQL 版本为 5.6 但未开启 GTID,可通过控制台开启 GTID,再添加只读实例。 开启 GTID 过程耗时较长,且实例将会有几秒钟的闪断,建议在业务低谷期操作,并在访问数据库的程序中添加重连机制。
只读实例仅支持 InnoDB 引擎。
由于数据同步有延迟,多个只读实例之间可能存在少量数据不一致的情况。各只读实例与主实例之间的同步时延可在控制台查看。
只读实例的实例规格可以与主实例不一致,方便用户根据负载情况升级。建议同一 RO 组内的只读实例的实例规格保持一致。

操作步骤

1. 登录 MySQL 控制台,在实例列表,单击实例 ID 或操作列的管理,进入实例详情页。
2. 在实例详情页,单击实例架构图中的添加只读实例,或在只读实例页,单击新建,进入购买页。
3. 在购买页,选择只读实例的相应配置,确认无误后,单击立即购买
说明
如需统一只读实例与主实例的到期时间,可在 续费管理控制台 设置统一到期日,具体操作步骤请参见 统一到期日

参数
说明
指定 RO 组
支持系统自动分配、新建 RO 组、已有 RO 组。
系统自动分配:若一次购买多个实例,将为每个实例分配一个独立的 RO 组,权重分配方式默认为系统自动分配。
新建 RO 组:新建一个 RO 组,若一次购买多个实例,将都分配至这个 RO 组,权重分配方式默认为系统自动分配。
已有 RO 组:指定一个已有 RO 组,若一次购买多个实例,将都分配至这个 RO 组。权重分配方式与 RO 组设置相同:如果 RO 组设置为系统自动分配,则根据购买规格自动添加 RO 组;如果为自定义分配,则默认权重为零。由于同一 RO 组内网地址相同,因此若是 VPC 网络将共享同一个安全组设置。若选择已有 RO 组,则在购买时无法再自定义安全组。
设置 RO 组名称
选择新建 RO 组时需设置新 RO 组的名称,支持长度小于60的中文/英文/数字/"-"/"_"/"."
延迟超限剔除
选择是否启用剔除策略。若启用,则需设置延迟阈值和最小保留实例数,被剔除的实例权重自动设置为0。
若只读实例延迟超过阈值被剔除,会向用户发出告警(配置只读实例剔除告警和接收对象请参见 告警功能),且实例状态为停服同步中、权重为0,当只读实例延迟时间小于阈值时会重新加入到 RO 组。同时,不管实例是否启用延时超限剔除功能,当只读实例故障被剔除后,待实例修复也会重新加入到 RO 组。

计费模式
支持包年包月和按量计费。
可用区
新建 RO 组时,支持选择与主实例同可用区或跨可用区。不同可用区之间没有实质性区别,选择创建跨可用区 RO 组将提升数据容灾能力,但存在几毫秒的网络延迟。
4. 购买完成后,返回实例列表,待实例状态变为运行中,即可正常使用。

热点问题

只读实例剔除规则是什么?

启用延迟超限剔除后,RO 组会根据延迟阈值和最少保留实例数来判断剔除实例,被剔除的实例权重自动设置为0。若只读实例延迟超过阈值被剔除会向用户发出告警,且实例状态为停服同步中、权重为0,当只读实例延迟时间小于阈值时会重新加入到 RO 组。
延迟阈值:为只读实例设置延迟超限阈值,超过阈值的只读实例会被剔除 RO 组。
最少保留实例数:组内需要保证的实例下限数,若现有只读实例数小于等于此下限且延迟时间超过阈值,现有只读实例均不被剔除。

若只读实例销毁/退货,对主实例有什么影响?

只读实例销毁/退货,对主实例没有影响。

创建只读实例时,为什么无法选择某个可用区?

无法选择某个可用区,表示该可用区暂无资源,您可以根据实际购买页面选择其他可用区,不影响您使用只读实例。

创建只读实例时,是否可以选择和主实例分布在不同的可用区?

可以。创建只读实例,选择新建 RO 组时,支持选择和主实例不同的可用区,但如果创建只读实例时选择已有 RO 组,则该只读实例的可用区只能与所选的已有 RO 组所在可用区保持一致,不一定和主实例分布在同一可用区。