爱游戏平台登录入口

  • 开启bin-log日记mysql报错的处理方式
  • 2017年12月10日
  • 搜集搜集

建立存储进程时

犯错信息:

代码以下:

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 variables like 'log_bin_trust_function_creators';
+---------------------------------+-------+
| Variable_name                   | Value |
+---------------------------------+-------+
| log_bin_trust_function_creators | OFF   |
+---------------------------------+-------+
mysql> set global log_bin_trust_function_creators=1;
mysql> show variables like 'log_bin_trust_function_creators';
+---------------------------------+-------+
| Variable_name                   | Value |
+---------------------------------+-------+
| log_bin_trust_function_creators | ON    |

如许增加了参数今后,若是mysqld重启,阿谁参数又会消逝,是以记得在my.cnf设置爱游戏平台登录入口备摆设文件爱游戏平台登录入口增加:
log_bin_trust_function_creators=1