Multi-statement transaction这个报错有点迷惑性
开始是存储过程里有两个语句,分别是:
create table a like b;
insert into a select * from b;
然后我把存储过程里的语句单独拿出来执行,而且分步commit,但是执行到第二个时还是报这个错误
无奈还是按照提示增加max_binlog_cache_size,b表实际有5G多,我就把该参数增加到了8G,执行正常
另外需要注意的是修改参数后要在新会话中执行insert select语句,从库要先调整参数,不然复制会异常