
# 只读实例简介
#### 什么是只读实例？
在对数据库有少量写请求，但有大量读请求的应用场景下，单个实例可能无法抵抗读取压力，甚至对主业务产生影响。为了实现读取能力的弹性扩展，分担数据库压力，您可以在某个区域中创建一个或多个只读实例，利用只读实例满足大量的数据库读取需求，以此增加应用的吞吐量。
只读实例与主实例之间采用异步复制方案，存在一定的复制延时，只读实例上的数据最终将与主实例上的数据一致。对于能够适应这种延时的场景，可以使用只读实例。
#### 只读实例架构
只读实例为单个物理节点架构或高可用架构：
- 单机版只读实例：推荐开启数据库代理功能，并购买单机版只读实例。当单个只读故障后，数据库代理可以将流量分担到其他可用只读实例或主实例。购买单机只读实例时，注意表库名的大小写敏感要与主实例保持一致。
- 高可用只读实例：当只读实例所在物理机故障后，备用只读实例自动顶替。购买高可用只读实例时，注意表库名的大小写敏感要与主实例保持一致。
推荐用法：
- 主实例下包含2个及以下只读实例时，高可用只读作用比较好。
- 主实例下包含2个以上只读实例时，建议开启数据库代理，获得更好的性价比。
当只读实例与主数据库之间复制异常后，单机版和高可用版只读都需要较长时间重建和恢复（取决于数据量）。
图1单机版只读实例   
![](https://support.huaweicloud.com/usermanual-rds-mysql/zh-cn_image_0000002602647377.png "点击放大")
图2高可用只读实例   
![](https://support.huaweicloud.com/usermanual-rds-mysql/zh-cn_image_0000002572168144.png "点击放大")
#### 典型应用
- 创建只读实例后，您可以[开通数据库代理](https://support.huaweicloud.com/usermanual-rds-mysql/rds_11_0017.html)，并在设置路由模式时选择该只读实例。数据库代理开通成功后，通过代理地址，写请求自动访问主实例，读请求按照数据库代理的路由模式分发到各个实例，进行读写分离，降低主实例的负载。
- 只读实例发生故障时，重建需要花费较长时间，如果您的业务依赖只读实例，可以[开通数据库代理](https://support.huaweicloud.com/usermanual-rds-mysql/rds_11_0017.html)，解决读业务中断问题。
- 如果未开通读写分离，您需要在应用程序中分别配置主实例和每个只读实例的连接地址，才能实现将写请求发往主实例而将读请求发往只读实例。
 
#### 计费说明
只读实例需要额外收费。支持按需计费，购买方式灵活，按实际使用时长计费；也支持包年/包月计费，相对于按需计费提供更大的折扣，对于长期使用者，推荐该方式。
计费详情请参见[云数据库RDS产品价格详情](https://www.huaweicloud.com/pricing.html#/rds)中的只读实例部分。
#### 功能特点
- 降低工作负荷：只读实例帮助主实例分担读取密集型工作负荷，降低主实例的工作负荷。
- 区域和可用区：只读实例与主实例在同一区域，但可以部署在不同的可用区。
- 存储类型：只读实例的存储类型与主实例一致。
- 存储空间：只读实例的存储空间大小与主实例一致。
- 性能规格：只读实例规格可以与主实例不一致，并且可以随时更改。建议只读实例规格大于等于主实例规格，否则易导致只读实例异常、延迟高、负载高等现象。
- 网络配置：只读实例的VPC、安全组与主实例一致。
- 管理员账号和密码：只读实例的管理员账号为root，密码与主实例一致。修改主实例的密码时，只读实例的密码会被同步修改。
- 监控与告警：提供系统性能监控。
- 异常事件诊断：对内存超限风险、长事务、慢SQL高频、容量空间不足等异常事件进行诊断，并提供诊断异常的处理建议，详见[实例概览简介](https://support.huaweicloud.com/usermanual-rds-mysql/rds_08_0025.html)。
- 只读升主：只读实例可以升级为主实例，断开与主实例的数据复制关系，成为独立的单机实例。
- 只读架构转换：单机版只读可以转换为高可用只读，但高可用只读不能变为单机版只读。
 
#### 功能限制
- 1个主实例最多可以创建10个只读实例。
- 不支持单独购买只读实例，需要购买主实例后才能购买只读实例。
- 不支持单独停止只读实例。停止主实例时，如果存在只读实例，会同时停止只读实例。
- 主实例、备实例及只读实例的数据都是一致的，暂不支持过滤库或者表不同步。
- 备份设置：不支持自动备份设置以及手动备份。只读实例没有备份文件，不会提供Binlog。
- 实例恢复：不支持通过备份文件或任意时间点恢复只读实例，不支持通过备份集覆盖只读实例。
- 数据迁移：不支持将数据迁移至只读实例。
- 数据库管理：不支持创建和删除数据库。
- 账号管理：只读实例不提供创建账号权限。请在主实例上创建，请参见[创建数据库账号](https://support.huaweicloud.com/usermanual-rds-mysql/rds_05_0009.html)。

- 回收站：不支持在回收站管理。
 
