目标mysql 设置为autocommit=0时,执行无法成功
Mount565 opened this issue · 4 comments
Mount565 commented
Mount565 commented
我猜不会有人回复。。。。
slieer commented
我回答了, 但不能解决你的问题, 国内开源项目, 不好做啊! 观念和生态问题。中兴事件能不能引起大家的警醒呢?!
hanchuanchuan commented
我没有测试是否是因为autocommit的原因,如果确定是这样的话,可以按如下方式解决:
可以修改源码sql/sql_parse.cc文件,在函数mysql_check_binlog_format最后return之前添加
sprintf(set_format,"set session autocommit=on;");
if (mysql_real_query(mysql, set_format, strlen(set_format)))
{
my_message(mysql_errno(mysql), mysql_error(mysql), MYF(0));
DBUG_RETURN(ER_NO);
}
DBUG_RETURN(false);
按上述方法可以添加各种操作前的set项设定,须注意set范围为session。
Mount565 commented
好的,有空试一下,谢谢