前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >mysql自定义异常_mysql自定义函数详解

mysql自定义异常_mysql自定义函数详解

作者头像
全栈程序员站长
发布于 2022-10-04 12:37:22
发布于 2022-10-04 12:37:22
1.8K0
举报

大家好,又见面了,我是你们的朋友全栈君。

[最近研究mysql数据库性能的相关问题,为了对比不同版本之间的差别。笔者找了一台测试服务器升级了该服务器的mysql数据库进行测试,在升级mysql过程中遇到了一些问题并将其

1、在MySql中创建自定义函数报错信息如下:

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)

解决方法:

mysql>set global log_bin_trust_function_creators=1;

2、创建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指定一个参数。

在MySQL中创建函数时出现这种错误的解决方法:

set global log_bin_trust_function_creators=TRUE;

3、

向MySQL导入数据的时候出错

出错信息:

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 只是读取数据,当然也不会修改数据[之前装过mysql5.0,后来再装5.1的时候,发现5.1好使了,5.0却不好使了没有办法,就把5.0卸载了,可是后来怎么安装都有问题卸载后只剩下data文件夹了就想通过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 ‘%func%’;

+———————————+——-+

| Variable_name | Value |

+———————————+——-+

| log_bin_trust_function_creators | OFF |

+———————————+——-+

1 row in set (0.00 sec)

mysql> set global log_bin_trust_function_creators=1;

Query OK, 0 rows affected (0.00 sec)

mysql> show variables like ‘%func%’;

+———————————+——-+

| Variable_name | Value |

+———————————+——-+

| log_bin_trust_function_creators | ON |

+———————————+——-+

1 row in set (0.00 sec)

4、

今天要写一个函数.但没有办法建提示错误如下:

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)

解决方式:(编缉my.cnf,添加如下)

[mysqld]

log_bin_trust_routine_creators = 1

重启mysql就好了

humen1 Tech

[hive的元数据存储在mysql后,报错的解决方法! 最近,因为工作的需要,一直在研究hadoop系统。许多分析工作都将通过hive来解决,所以特将所碰到的问题和解决方案,陆续整

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/196040.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年9月8日 上,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
mysql报错This function has none of DETERMINISTIC解决方案
创建存储过程时 出错信息: 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指定一个参数。 解决方法:
似水的流年
2019/12/05
2.8K0
pt-online-schema-change报错一例
这里我们是MGR 单主模式,因此将 log_bin_trust_function_creators 设置为ON即可,注意要把其他节点的参数也改掉(另外配置文件中也改下使其持续化)。
保持热爱奔赴山海
2025/03/26
620
Mysql主从同步异常处理-错误代码1418
当二进制日志启用后,这个变量(log_bin_trust_function_creators)就会启用。它控制是否可以信任存储函数创建者,不会创建写入二进制日志引起不安全事件的存储函数。
Linux运维技术之路
2022/06/07
5210
Mysql主从同步异常处理-错误代码1418
MySql binlog详解
         开启MySql的binlog其实不是像网上说的那么一致,我用的是Ubuntu系统。这些debian系统与普通的Linux在开启binlog的方法上是有区别的。在unbuntu下默认安装的MySql,开启binlog只需编辑/etc/mysql/my.cnf文件,修改配置:
幽鸿
2020/04/02
2.1K0
mydumper+myloader
关于这工具的用法和逻辑,就不在多说了,外网都是相关的介绍、使用,这个大佬的文章写的很详细,https://blog.csdn.net/qq_33656602/article/details/90671188
云售后焦俊成
2020/08/04
1.1K0
mydumper+myloader
[Err] 1418 - This function has none of DETERMINISTIC, NO SQL, or READS SQL DATA in its declaration a
[Err] 1418 - 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)
互联网金融打杂
2018/08/15
7220
This function has none of DETERMINISTIC, NO SQL, or READS SQL DATA...
标题很长,但是还是有三个...表示省略。 这是一个MySQL自定义函数的报错信息。全部报错信息如下:
cultureSun
2023/05/18
6790
dede栏目路径自动生成
抽空写了个这。。。虽然很头大,但是还是写完了。 下面由我来翻译下面这一大段话,首先,函数使用了PINYIN函数,将栏目名称转化成英文缩写,剩下的工作就是拼接和查询了,其实原理很简单。
老高的技术博客
2022/12/27
1.9K0
[MySQL学习笔记]1. MySQL测试数据的构造
最后select rand_string(5);为测试是否能够胜场随机的五位长度的字符串
bsbforever
2020/08/18
8570
[MySQL学习笔记]1. MySQL测试数据的构造
Mysql8.0.22主备GTID Replication中的那些坑
答:全局事务ID,为每一个在Master上提交的事务在集群内Replication时只生成一个唯一的ID,为规避冗余和错误提供了有力保障。
杨漆
2021/03/03
1.4K0
Mysql8.0.22主备GTID Replication中的那些坑
数据库中的split功能
这是最近工作中遇到的一个业务场景,需要按字符将字符串拆分成多个子字符串,这就类似编程语言中的split函数。
cultureSun
2023/05/18
1.6K0
MySQL case几例
5.5版本库 修改innodb_log_file_size 需要mv 走原来的iblogfile
DBA札记
2022/08/16
8530
MySQL case几例
谁说MySQL单表行数不要超过2000W?
网上看了一篇文章《为什么说MySQL单表行数不要超过2000w》,亲自实践了一下,跟原作者有不同的结论。原文的结论是2000W左右性能会成指数级的下降,而我的结论是:随着数据量成倍地增加,查询的时间也刚好是成倍增加,是成正比的。
用户10002156
2023/08/07
4860
谁说MySQL单表行数不要超过2000W?
Mysql1418报错解决
mysql创建function 报错误1418 - This function has none of DETERMINISTIC, NO SQL, or READS SQL DATA in:https://blog.csdn.net/hju22/article/details/86599393
华创信息技术
2022/05/28
3550
SpringBoot 整合 MyCat 实现读写分离
MyCat一个彻底开源的,面向企业应用开发的大数据库集群。基于阿里开源的Cobar产品而研发。能满足数据库数据大量存储;提高了查询性能。文章介绍如何实现MyCat连接MySQL实现主从分离,并集成SpringBoot实现读写分离。
业余草
2020/05/09
1.1K1
SpringBoot 整合 MyCat 实现读写分离
SpringBoot整合MyCat实现读写分离
MyCat一个彻底开源的,面向企业应用开发的大数据库集群。基于阿里开源的Cobar产品而研发。能满足数据库数据大量存储;提高了查询性能。文章介绍如何实现MyCat连接MySQL实现主从分离,并集成SpringBoot实现读写分离。
用户4283147
2022/10/27
3230
SpringBoot整合MyCat实现读写分离
【重学 MySQL】七十六、打造高效存储函数,解锁数据库编程新技能!
在MySQL中,存储函数(Stored Function)是一种在数据库中定义的特殊类型的函数,它可以从一个或多个参数返回一个值。存储函数在数据库层面上封装了复杂的SQL逻辑,使得在应用程序中调用时更加简单和高效。
用户11332765
2024/10/28
1290
【重学 MySQL】七十六、打造高效存储函数,解锁数据库编程新技能!
开启和查看mysql的bin-log日志
[root@VM_0_7_centos data]# vim /etc/my.cnf [root@VM_0_7_centos data]# vim /etc/my.cnf [root@VM_0_7_centos data]# /etc/init.d/mysqld restart Shutting down MySQL.... SUCCESS! Starting MySQL. SUCCESS! [root@VM_0_7_centos data]# grep log_bin /etc/my.cnf [
用户1173509
2018/03/28
1.4K0
开启和查看mysql的bin-log日志
MySQL基础-存储过程与函数
MySQL从5.0版本开始支持存储过程和函数,使得sql语句具有面向过程开发的特点
用户9645905
2023/04/01
1.2K0
MySQL基础-存储过程与函数
MYSQL高级篇-----查询截取分析,锁机制,主从复制
3、show Profile查询SQL在MySQL数据库中的执行细节和生命周期情况。
默 语
2024/11/20
2120
MYSQL高级篇-----查询截取分析,锁机制,主从复制
相关推荐
mysql报错This function has none of DETERMINISTIC解决方案
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档