升级mysql需谨慎啊,又坑了一下午

自从mysql从5.7.15升级到8.0.19之后,一直问题不断,今天项目大体完成了,因为没有测试,就自己随意点着测试,突然发现有一个统计没有数据了,查看日记,发现提示某个函数不存在,使用Navicat连接到数据库后,发现确实没有那个函数,想来导入数据的时候是一起导入的,为什么会没有了呢。
还是先恢复业务为主,从备份的数据库中拷贝函数到新数据库中,发现一只报错,提示

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)

参考文档MySQL 创建函数失败提示1418后,问题解决。然而这并不是结束,随后发现这个业务依旧没有数据,查看日志,发现还是原来的问题
java.sql.SQLSyntaxErrorException: Expression #3 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'd.id' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by
又开始修改sql,问题解决。

在这次问题中,发现自己对mysql的函数,存储过程一无所知,看到导入的函数,居然不知道是什么意思,为什么那么写··· ···

知识永无止境啊!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值