使用RDS实例只读实例时,只读实例出现线程阻塞问题,该问题会影响业务使用。
当主实例执行复杂SQL语句后,会将Binlog日志传给只读实例,只读实例会根据日志内容执行相应操作来同步主实例数据,且必须等待所有Binlog日志内容都同步到只读实例才算完成同步,因此执行复杂SQL语句可能会导致部分只读实例出现临时阻塞问题。
阿里云提醒您:
- 如果您对实例或数据有修改、变更等风险操作,务必注意实例的容灾、容错能力,确保数据安全。
- 如果您对实例(包括但不限于ECS、RDS)等进行配置与数据修改,建议提前创建快照或开启RDS日志备份等功能。
- 如果您在阿里云平台授权或者提交过登录账号、密码等安全信息,建议您及时修改。
参考以下步骤,将只读实例的权重修改为0,使读请求暂时不发往该只读实例:
说明:只有开通了读写分离功能才可以设置读权重。
show processlist;
提示:读权重为0,表示读请求不会再发往该实例,则该实例不会对业务产生较大影响。
说明:本文适用于以下版本且开启了读写分离功能的实例。
- MySQL 8.0三节点企业版
- MySQL 8.0高可用版
- MySQL 5.7三节点企业版
- MySQL 5.7高可用版
- MySQL 5.6