读写分离简介
读写分离是指通过一个读写分离的连接地址实现读写请求的自动转发。
云数据库MySQL支持开通单Proxy或多Proxy功能,其中,多Proxy功能支持创建多个Proxy实例并设置只读权重,适用于需要业务隔离的场景。
开通读写分离功能后,如果无只读实例,通过RDS的读写分离连接地址,读写请求均会自动访问主实例。
开通读写分离功能后,如果存在只读实例,通过RDS的读写分离连接地址,写请求均会自动访问主实例,读请求按照读权重设置自动访问各个实例。

读写分离地址都是内网地址,只能通过内网连接。
专属计算集群开通读写分离,需要具有相应的操作权限,您可联系华为云客服人员申请。
北京一,上海二开通读写分离,需要具有相应的操作权限,您可以联系华为云客服人员申请。
开启读写分离后暂不支持修改端口和修改实例的内网地址,建议先修改完端口或内网地址后再启用读写分离。
适用场景
- 相比在应用程序内手动做读写分离,扩容灵活,维护成本低。
- 客户端读请求按权重分发至后端只读节点,数据库实例整体负载更加均衡,提升资源利用率。
- 通过代理将指定业务的读请求路由到选定的只读实例上,实现业务隔离,避免多个业务之间相互影响。
开通单Proxy和多Proxy的区别
单proxy,即一个MySQL实例下只有1个Proxy实例,通过一个读写分离的连接地址实现读写请求的自动转发,写请求自动访问主实例,读请求按照读权重设置自动访问各个实例。
多proxy,一个MySQL实例下可以创建多个Proxy实例,最多支持创建4个,主要适用于业务隔离场景。
- 读写模式:代理连接主实例,可以在主实例上配置读权重,写请求自动发往主实例。
- 只读模式:代理不连接主实例,读请求无法分配到主实例上,写请求报错。
不同的应用服务通过连接不同的代理,代理连接指定的只读实例,实现不同应用服务之间的读请求最终转发到不同的只读实例上,保证相互之间无影响,实现业务隔离。
一个MySQL只读实例可以被不同代理连接,但通常建议只有一个代理分配流量到该只读实例上。
