惊雷无声 发表于 2024-8-5 22:33:56

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 global group_replication_transaction_size_limit=300000000; 3.彻底解决方案:

(1)事务拆分,将大事务分批次举行处理
(2) 优化数据库性能,提高系统响应速度

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: MySQL:Error on observer while running replication hoot ‘before_commit