操作场景
- 有读写分离需求的业务场景。
- 需要按照权重分发请求到后端只读实例的场景。
- 连接数过多导致主实例负载过高的场景。
- 一主多备,备节点支持可读的场景。
约束限制
- 数据库版本: 5.7,8.0。
- 实例类型为:单机、一主一备、一主两备。
- 开通数据库代理服务时,数据库状态为运行中才可以开启数据库代理服务。
- 开通数据库代理服务后,需要先设置代理服务和IP白名单。
- 配置代理服务时,需要满足的条件是MySQL主实例和数据库代理状态同时为运行中。
- 配置IP白名单时,需要满足的条件是MySQL主实例和数据库代理状态同时为运行中。
- 目前尚不支持绑定弹性公网IP访问。
步骤一:开启数据库代理
- 天翼云官网首页右上角选择控制中心,登录进入控制中心界面。
- 控制中心产品概览页左上角单击管理控制台,选择区域。
- 选择“数据库 > 关系数据库MySQL版”。进入关系数据库控制台。
- 在“实例管理”页面,点击实例名称。
- 在“数据库代理”页面,查看数据库代理。
- 点击“立即开启代理”。
- 在跳转的“关系数据库MySQL版-数据库代理服务”页面查看基本信息。
- 可以按需修改代理实例名称。
- 勾选“我已经阅读,接受并理解”, 点击“下一步”。
- 查看“配置确认”页面, 点击“立即创建”。
- 等待服务开启完成。
步骤二:配置MySQL数据库代理服务
- 天翼云官网首页右上角选择控制中心,登录进入控制中心界面。
- 控制中心产品概览页左上角单击管理控制台,选择区域。
- 选择“数据库 > 关系数据库MySQL版”。进入关系数据库控制台。
- 在“实例管理”页面,点击实例名称。
- 在“数据库代理”页面,查看数据库代理。
- “读写规则”选项下,点击“设置”。
- 设置弹窗内,选择需要的选项进行设置。
- 点击“确定”,等待配置生效。
设置参数说明
参数 | 说明 |
---|---|
读写属性 | 设置读写方式。读写(读写分离)(默认):同时连接主实例和只读实例,可以接受写请求。 |
连接池 | 代理连接地址设置的连接池类型:事务级连接池:适用于总连接数比较多(如连接数上万)的场景。会话级连接池:适用于短连接场景。功能未开通(默认):首次配置时的默认值,配置时必须选择事务级连接池或会话级连接池。 |
延迟阈值 | 只读实例或备节点同步主实例数据时允许的最长延迟时间。若一个节点的延迟时间超过该阈值,读请求不会转发至该节点。 |
事务拆分 | 是否开启事务拆分功能。事务拆分能够将事务内的读请求转发到只读实例或者备节点,降低主实例负载。默认为关闭。 |
读写分离权重分配 | 实例的读权重越高,处理的读请求越多。例如,假设主实例有3个只读实例,读权重分别为0、100、200和200,则表示主实例不处理请求(读写请求都拒绝),3个只读实例按照1:2:2的比例处理读请求。 系统分配:系统根据实例规格自动分配各个实例的读权重。后续该主实例下新增的只读实例不会自动设置权重,需要手动重新配置加入到读写分离链路中。更多信息请参见系统权重分配规则。 自定义:手动设置各个实例的读权重,范围为0至10000。后续该主实例下新增只读实例的读权重默认为0,需要您手动配置。说明:分配权重展示的是主实例和只读实例的节点,例如:一主两从,则展示三个节点,用于配置权重。 |
步骤三:配置IP白名单
- 天翼云官网首页右上角选择控制中心,登录进入控制中心界面。
- 控制中心产品概览页左上角单击管理控制台,选择区域。
- 选择“数据库 > 关系数据库MySQL版”。进入关系数据库控制台。
- 在“实例管理”页面,点击实例名称。
- 在实例的“白名单管理”页面,点击“添加白名单”或者“修改”已有分组。
- 修改或者添加IP,多个IP通过逗号分隔。
- 点击“确认”。
- 从源IP访问数据库确认是否有连接报错。