You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

AWS Aurora只读副本设read_only=0仍报只读错误咨询

Aurora MySQL 5.7只读副本放开写入限制排查方案

场景与问题说明

  • 运行环境:Aurora MySQL 引擎版本 5.7.mysql_aurora.2.07.2
  • 业务需求:在集群内新增只读副本,用于运行夜间计算脚本、存储KPI与报表指标结果,对接前端仪表盘展示
  • 已执行操作:
    • 控制台通过「Add reader」创建只读实例
    • 创建自定义实例参数组,将read_only参数修改为0,重启实例同步配置
    • 尝试创建read_only=0的自定义集群参数组绑定集群,问题无改善
    • 可通过只读副本实例端点、集群.ro后缀只读端点正常建立数据库连接
  • 故障现象:执行建表、写入数据等写操作时,返回报错 ERROR 1290 (HY000): The MySQL server is running with the --read-only option so it cannot execute this statement,无法完成写入

核心排查解决步骤

1. 补全修改引擎层只读参数(最常见漏项)

Aurora只读副本默认同时开启两层只读控制,仅修改read_only参数无法放开写入权限:

  • read_only:仅控制普通非SUPER权限用户的写入行为,对持有SUPER权限的账号无约束
  • innodb_read_only:InnoDB引擎层只读开关,默认在只读副本上强制开启,开启后无论账号权限高低,都无法执行建表、增删改数据等涉及InnoDB表空间变更的操作,是触发当前报错的核心原因
    操作流程:
  1. 进入RDS参数组控制台,找到绑定到该目标只读副本的自定义实例参数组(注意不要修改集群参数组,集群参数组的该配置对只读副本不生效)
  2. 搜索innodb_read_only参数,将参数值调整为0,同时确认同参数组内super_read_only参数值也为0
  3. 保存参数修改后,手动重启该只读副本,等待实例状态恢复为「可用」
  4. 连接实例执行参数校验命令,确认所有只读开关均为关闭状态:
SHOW VARIABLES LIKE '%read_only%';

正常返回结果参考:

+-----------------------+-------+
| Variable_name         | Value |
+-----------------------+-------+
| innodb_read_only      | OFF   |
| read_only             | OFF   |
| super_read_only       | OFF   |
| transaction_read_only | OFF   |
+-----------------------+-------+

2. 更换连接端点

禁止使用集群.ro后缀的公共只读端点连接该实例:该端点是Aurora提供的只读流量负载均衡端点,路由层会默认拦截所有发往该端点的写入请求,哪怕单实例已经放开写入限制也无法执行写操作。
连接时仅使用该只读副本在「连接性与状态」模块展示的实例专属端点即可。

3. 校验账号权限

完成上述两步配置后如果仍报错,检查连接使用的业务账号是否持有目标库的写入权限,执行授权语句(按需替换占位符内容):

-- 授予对应库表的建表、读写权限
GRANT CREATE, INSERT, UPDATE, DELETE ON 指标存储库名.* TO '脚本使用账号'@'访问IP段';
FLUSH PRIVILEGES;

注意事项

  • 该实例上写入的本地自建表不会同步回主集群,也不会同步到其他只读副本,数据仅存储在当前实例,完全符合本地报表计算存储的场景需求
  • 不要修改主库同步过来的业务表数据/结构,否则会导致主从复制链路中断,影响副本上的业务数据同步
  • 建议单独创建专属的指标存储库,和主库同步的业务库做物理隔离,避免误操作
  • 所有参数修改必须在实例绑定的自定义实例参数组上操作,默认参数组不支持参数修改,集群参数组的只读相关配置不会覆盖只读副本的默认引擎限制

内容的提问来源于stack exchange,提问作者oncooldown

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.27 23:12:17