本人的mysql版本为8.0版本,系统环境为mac.
事情的起因是,在本地开发写sql的过程中, 遇到了group by分组引发的报错,报错内容为:
In aggregated query without GROUP BY, expression #1 of SELECT list contains nonaggregated c
网上百度大半天,说是需要修改my.cnf文件, 添加sql_mode的配置
看了一大堆, 都是修改为:
sql_mode = "STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
修改完后重启mysql, 发现 mysql重启失败:
在stackoverflow上找到原因, 原文链接为
https://stackoverflow.com/que...
MySQL 8.0.11从sql-mode删除'NO_AUTO_CREATE_USER'。
所以my.cnf的配置中, 应该改为:
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION
修改完成后,重启mysql成功
命令行查看sql_mode
发现已经修改成功
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。