最近在mysql 8.0.15版本中发现一个问题,在执行完sql语句后报错:[Err] 1055 - Expression #1 of ORDER BY clause is not in GROUP BY clause and contains nonaggregated column ‘information_schema.PROFILING.SEQ’ which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by;
SELECT @@sql_mode;
解决方式一:
1.进入数据库:mysql -uroot -p
2.执行命令:set @@global.sql_mode=‘NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES’;
修改完成后重新启动项目!!!
解决方式二:
打开mysql的配置文件mysql.ini,在配置文件的末尾加上这段代码:
[mysqld]
默认使用“mysql_native_password”插件认证
#mysql_native_password
default_authentication_plugin=mysql_native_password
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION
并且要打开CMD命令行,输入指令重启服务
C:\WINDOWS\system32>net stop mysql
MySQL 服务正在停止…
MySQL 服务已成功停止。
C:\WINDOWS\system32>net start mysql
MySQL 服务正在启动 …
MySQL 服务已经启动成功。
注意:不要添加在[mysql]和[client]下面,要添加在[mysqld]下面。