MySQL:Error on observer while running replication hoot ‘before_commit‘

一、背景

在系统中执行定时任务时,出现 MySQL:Error on observer while running replication hoot 'before_commit',导致跑批失败,通过排查,发现sql脚本查询数据超出了143M,原因是在MySQL 8.0中,缺省值为150000000(约143MB),大于该值的事务将被回滚;

二、解决方案

1.临时解决方案

为了保证系统数据正常传输,暂时采取修改系统配置,将系统变量group_replication_transaction_size_limit改大;

2.修改方式

(1)通过数据库客户端工具查找该系统变量

SHOW VARIABLES LIKE '%group_replication_transaction%';
或者
show global variables like '%group_replication_transaction_size_limit%'

(2)一般默认大小为141M(150000000),修改为它的2倍;

set blobal group_replication_transaction_size_limit=300000000;

3.彻底解决方案:

(1)事务拆分,将大事务分批次进行处理

(2) 优化数据库性能,提高系统响应速度

相关推荐

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-04-23 21:06:01       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-04-23 21:06:01       106 阅读
  3. 在Django里面运行非项目文件

    2024-04-23 21:06:01       87 阅读
  4. Python语言-面向对象

    2024-04-23 21:06:01       96 阅读

热门阅读

  1. jupyter简要使用手册

    2024-04-23 21:06:01       36 阅读
  2. Nest.js学习记录4

    2024-04-23 21:06:01       31 阅读
  3. C#面:阐述什么是泛型委托

    2024-04-23 21:06:01       32 阅读
  4. React|创建txt文件并上传到oss指定地址

    2024-04-23 21:06:01       29 阅读
  5. 设备树中dtb和dtbo的区别

    2024-04-23 21:06:01       33 阅读
  6. 程序员缓解工作压力的小窍门

    2024-04-23 21:06:01       34 阅读
  7. 【第16章】spring-tx基于注解的声明式事务

    2024-04-23 21:06:01       27 阅读
  8. NLP(5)-softmax和交叉熵

    2024-04-23 21:06:01       36 阅读