读写分离是指通过一个读写分离的连接地址实现读写请求的自动转发。通过RDS的读写分离连接地址,写请求自动访问主实例,应用直连即可实现自动读写分离。本文将介绍如何开通读写分离功能。
约束限制
RDS for MySQL实例至少带有一个只读实例。
开通读写分离
1、登录管理控制台。
2、单击管理控制台左上角的,选择区域和项目。
3、选择“数据库 > 关系型数据库”。进入关系型数据库信息页面。
4、在实例列表中,单击目标实例的名称,进入实例的“基本信息”页面。
5、在左侧导航栏中,单击“数据库代理”。
您还可以在实例的“基本信息”页面,单击“连接信息”模块“读写分离地址”后的“申请”,跳转到“数据库代理”页面。
6、在“数据库代理”页面单击“创建数据库代理”。
7、在开启数据库代理页面,设置以下参数,单击“下一步”。
基本信息
参数 描述 计费模式 按需计费实例开启数据库代理时,仅支持选择按需计费的代理实例。 代理名称 设置数据库代理名称。 读写属性 读写:读写分离。
只读:不连接主实例,无法接受写请求。路由模式 权重负载:开启读写分离功能后,用户自行设置主备实例和只读实例的权重。
负载均衡:开启了Proxy负载均衡,可以选择该模式。支持基于负载的自动调度策略,读请求将在多个只读节点中按照活跃连接数自动调度,来保证多个只读节点间的负载均衡。
开启数据库代理后,可以修改路由模式,具体操作请参见设置延时阈值和路由模式。主库接受读 “负载均衡”模式需设置。
选择“是”,查询SQL可以发送到主节点和只读节点。
选择“否”,查询SQL将仅发送到只读节点,来降低主节点的负载,确保主节点稳定。性能规格 选择代理实例的规格。创建后可以根据业务需求变更规格。 代理节点数量 支持2~8个节点。创建后可以修改。
建议您根据需要连接的只读实例个数设置代理节点数,1个只读实例配1个代理节点。
权重设置
参数 | 描述 |
---|---|
选择实例 | 选择设置权重的目标实例。 |
读权重分配 | 读权重越高,处理的读请求越多,假设已选2个实例,权重分别设置为100,200,则当前proxy全部读请求自动按照1:2的比例发往已选实例(未选择的实例权重会设置为0)。 |
- 读写分离具备连接保持、读写分离能力。开启读写分离后,将新增1个读写分离连接地址,请将应用连接切换到新地址。
- 读写分离地址:通过读写分离地址连接数据库,可实现读写分离功能。
该读写分离地址与实例的内网IP地址处于同一VPC和子网,且与实例的内网IP地址并存,互不影响。
- 延时阈值:对于成功开启读写分离功能的实例,您可以设置其延时阈值。
- 负载均衡实例选择:对于成功开启读写分离功能的实例,您可以选择负载均衡实例。
8、确认数据库代理信息。
- 如果需要重新选择,单击“上一步”,修改基本信息。
- 信息确认无误,单击“提交”,下发创建数据库代理请求。
9、创建完成后,可以在“数据库代理”页面查看并管理代理服务信息。
在“基本信息”页面查看读写分离地址,通过读写分离地址连接数据库,可实现读写分离功能。
该读写分离地址与实例的内网IP地址处于同一VPC和子网,且与实例的内网IP地址并存,互不影响。