具有二进制日志模式的MySQL非确定性函数=混合需求log_bin_trust_function_creators

时间:2019-02-11 15:50:04

标签: user-defined-functions mysql-5.7 binary-log

我正在使用binary-logging激活了mixed-mode的Mysql 5.7。我想定义一个不确定的函数。 我从manual收集到的信息是,必须仅为log_bin_trust_function_creators设置全局变量binlog_format=STATEMENT才能覆盖检查:

  
      
  • 当您尝试执行存储的函数时,如果设置了binlog_format = STATEMENT,则必须在函数定义中指定DETERMINISTIC关键字。如果不是这种情况,除非指定log_bin_trust_function_creators = 1来覆盖此检查,否则会生成错误并且函数不会运行。

  •   
  • 要放松函数创建时的先前条件(必须具有SUPER特权,并且必须声明函数为确定性或不修改数据),请将全局log_bin_trust_function_creators系统变量设置为1

    < / li>   

为什么不足够明确地将我的函数标记为NOT DETERMINISTIC以便让MySQL将其标记为unsafe并因此使用基于行的复制而不是基于语句的复制?

0 个答案:

没有答案
相关问题