mysql自定函数或者导入函数不成功

本文介绍了在MySQL中遇到ERROR1418错误时,如何检查和处理log_bin_trust_function_creators变量的问题。解决方法包括临时设置变量、永久修改my.cnf配置,以及该变量对函数执行的影响。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

先看问题:

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)

解决办法:

  1. 查看log_bin_trust_function_creators变量的值:
 show variables like '%log_bin%';

查看变量

  1. 修改变量值

①临时设置变量

set global log_bin_trust_function_creators=ON;
# 或者
set global log_bin_trust_function_creators=TRUE;

②永久修改变量
log_bin_trust_function_creators这个变量和变量值 直接写入MySQL的主配置文件 my.cnf 即可。1代表on,0代表off

set GLOBAL log_bin_trust_function_creators=1

写入配置文件的变量和变量值不会随服务重启而失效,是永久有效的。

如果这个log_bin_trust_function_creators的值是off,那么,此时将不能执行生成函数,值为on的时候可以执行生成函数。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值