标题: Statement is not safe to log in statement format [打印本页] 作者: streetboy85 时间: 2009-04-02 14:23 标题: Statement is not safe to log in statement format 最近把mysql从5.0.45升级到了5.1.32,后来查看log是,发现会有以下的warning,上网搜了一下,感觉会跟log-bin有关,请问有没哪位遇到过这个问题?
090402 12:02:33 [Warning] Statement is not safe to log in statement format. Statement: update tb_charge set inNum = '37' limit 1
090402 12:56:38 [Warning] Statement is not safe to log in statement format. Statement: update tb_charge set inNum = '38' limit 1
090402 13:38:01 [Warning] Statement is not safe to log in statement format. Statement: update tb_charge set inNum = '39' limit 1作者: streetboy85 时间: 2009-04-02 15:20
刚才我新建了一个db_test(num int) database,然后insert一个数据进去后,再update limit,同样出现warning,去掉limit就没事了...好奇怪...在5.0下又没这个警告作者: 老肥羊 时间: 2009-04-02 18:30
[29 Nov 2008 10:00] Shane Bester
Description:
When insert delayed statements are executed with statement based binlogging enabled, you
don't get the full query - only the table name.
[Warning] Statement is not safe to log in statement format. Statement: b1
Why is entire query not printed?
How to repeat:
drop table if exists b1;
create table b1(a varchar(255))engine=myisam;
insert delayed into b1 set a='test';
[16 Feb 11:46] Davi Arnaut
Fixed by patch for Bug#42634
[18 Feb 21:13] Paul DuBois
Noted in 5.1.32, 6.0.10 changelogs.
The server cannot execute INSERT DELAYED statements when
statement-based binary logging is enabled, but the error message
displayed only the table name, not the entire statement.作者: streetboy85 时间: 2009-04-02 22:28
db是别人设计的...规定了要用innodb...作者: streetboy85 时间: 2009-04-03 09:16
另外就是,单单update limit,这个不算是delay statement吧?作者: wlong2000joint 时间: 2009-06-03 13:09
这个问题原因是什么,有解决吗?