mysql 5.6.10中的选项是什么,用于减少错误日志文件中“不安全语句”的警告?

时间:2015-04-16 15:21:28

标签: mysql mysql-5.6

我得到了很多"声明登录语句格式不安全。" Mysql 5.6.10中的警告为BINLOG_FORMAT格式为' STATEMENT '我无法将其切换为 MIXED '或' ROW '。

此外,我无法使用选项在功能或存储过程使用期间关闭在全局级别记录的警告,并且此设置在Mysql 5.6.10中的会话级别不可用

无法在任何时候使用以下

    SET GLOBAL LOG_WARNINGS = 0 

但是有一个关于Mysql 5.6.7的发行说明,其中提到了这些错误的减少或抑制机制,但未指定如何使用它或系统变量名称是什么。

任何人都可以指导设置它的位置以及如何设置它吗?

以下是Mysql 5.6.7发行说明

http://dev.mysql.com/doc/relnotes/mysql/5.6/en/news-5-6-7.html

复制:UPDATE ... WHERE primary_key_column = constant LIMIT 1等语句被标记为基于语句的日志记录不安全,尽管这些语句实际上是安全的。如果运行了大量此类语句,则可能会导致磁盘空间耗尽,导致记录此类错误警告的数量。 为防止这种情况发生,引入了警告抑制机制。此警告抑制的作用如下:每当50个最近的ER_BINLOG_UNSAFE_STATEMENT警告在任何50秒的时间段内生成超过50次时,都会启用警告抑制。激活时,这会导致不将这些警告写入错误日志;相反,对于此类型的每50个警告,将在错误日志中写入注释,说明最后一次警告在最后S秒内重复N次。只要在50秒或更短时间内发出50个最近的此类警告,这种情况就会持续下去;一旦警告数量减少到此阈值以下,警告将再次正常记录。

1 个答案:

答案 0 :(得分:0)

根据documentation,您可以设置log-warnings=0,但要注意它也可能会抑制其他警告..