函数相关参数 log_bin_trust_function_creators
2015-09-09 12:45
288 查看
Command-Line Format --log-bin-trust-function-creators
Option-File Format log-bin-trust-function-creators
Option Sets Variable Yes, log_bin_trust_function_creators
Variable Name log_bin_trust_function_creators
Variable Scope Global
Dynamic Variable Yes
Permitted Values
Type boolean
Default FALSE
This variable applies when binary logging is enabled. It controls whether stored function creators can be trusted not to create stored functions that will cause unsafe events to be written to the binary log. If set to 0 (the default), users are not permitted
to create or alter stored functions unless they have the SUPER privilege in addition to the CREATE ROUTINE or ALTER ROUTINE privilege. A setting of 0 also enforces the restriction that a function must be declared with the DETERMINISTIC characteristic, or with
the READS SQL DATA or NO SQL characteristic. If the variable is set to 1, MySQL does not enforce these restrictions on stored function creation. This variable also applies to trigger creation. See Section 18.7, “Binary Logging of Stored Programs”.
主要是考虑binlog安全,如果没开binlog的话这个值是无意义的;打开binlog后需要超级权限才能定义,并且在sql上也有需求
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)
这个报错目前知道可以通过两个方式解决:
RETURNS double 【READS SQL DATA/DETERMINISTIC】
即在自定义函数后增加一个只读数据或者指定字符的信息
Option-File Format log-bin-trust-function-creators
Option Sets Variable Yes, log_bin_trust_function_creators
Variable Name log_bin_trust_function_creators
Variable Scope Global
Dynamic Variable Yes
Permitted Values
Type boolean
Default FALSE
This variable applies when binary logging is enabled. It controls whether stored function creators can be trusted not to create stored functions that will cause unsafe events to be written to the binary log. If set to 0 (the default), users are not permitted
to create or alter stored functions unless they have the SUPER privilege in addition to the CREATE ROUTINE or ALTER ROUTINE privilege. A setting of 0 also enforces the restriction that a function must be declared with the DETERMINISTIC characteristic, or with
the READS SQL DATA or NO SQL characteristic. If the variable is set to 1, MySQL does not enforce these restrictions on stored function creation. This variable also applies to trigger creation. See Section 18.7, “Binary Logging of Stored Programs”.
主要是考虑binlog安全,如果没开binlog的话这个值是无意义的;打开binlog后需要超级权限才能定义,并且在sql上也有需求
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)
这个报错目前知道可以通过两个方式解决:
RETURNS double 【READS SQL DATA/DETERMINISTIC】
即在自定义函数后增加一个只读数据或者指定字符的信息
相关文章推荐
- c#中抽象类和接口的相同点跟区别
- 用shell脚本一键搭建LNMP环境实战
- 初学HTML5
- 删除链表节点
- (2.3.10)理解JAVA数组
- git
- 死锁的原因及处理方法
- 冒泡排序
- SAE部署Python-让云端自动运行Python代码
- 安卓切换语言后activity重启 解决方法 以及configChanges属性
- xcode6.4安装Alcatraz失败
- (六) HTTP/2流的优先级
- Atitit.Gui控制and面板----db数据库领域----- .比较数据库同步工具 vOa
- QT最简单的打包发布技巧
- C++11 CPP11 学习
- lanmp/lamp/lnmp/lnamp一键安装
- Remove Duplicates from Sorted List I,II
- 1097. Deduplication on a Linked List (25)
- 单例模式之内部静态类
- 【剑指offer】面试题7:用两个栈实现队列