mysql 函数同步_mysql主从关于函数过程同步问题 太过爱你忘了你带给我的痛 2022-10-31 00:58 144阅读 0赞 ======================================================================== 创建function时 出错信息: ERROR 1418 (HY000): This function has none of DETERMINISTIC, NO SQL, or READS SQL DATA in its declaration and binary logging is enabled (you \*might\* want to use the less safe log\_bin\_trust\_function\_creators variable) 原因: 这是我们开启了bin-log, 我们就必须指定我们的函数是否是 1 DETERMINISTIC 不确定的 2 NO SQL 没有SQl语句,当然也不会修改数据 3 READS SQL DATA 只是读取数据,当然也不会修改数据 4 MODIFIES SQL DATA 要修改数据 5 CONTAINS SQL 包含了SQL语句 其中在function里面,只有 DETERMINISTIC, NO SQL 和 READS SQL DATA 被支持。如果我们开启了 bin-log, 我们就必须为我们的function指定一个参数。 解决方法: SQL code mysql>show variableslike'%func%'; \+---------------------------------+-------+ |Variable\_name |Value| \+---------------------------------+-------+ |log\_bin\_trust\_function\_creators|OFF | \+---------------------------------+-------+ 1rowinset(0.00sec) mysql>setglobal log\_bin\_trust\_function\_creators=1; Query OK,0rows affected (0.00sec) mysql>show variableslike'%func%'; \+---------------------------------+-------+ |Variable\_name |Value| \+---------------------------------+-------+ |log\_bin\_trust\_function\_creators|ON | \+---------------------------------+-------+ 1rowinset(0.00sec) mysql> 试过了,这个方法很有效的。
还没有评论,来说两句吧...