MySql8.0.18下解决this is incompatible with sql_mode=only_full_group_by

MySql8.0.18下解决this is incompatible with sql_mode=only_full_group_by

JAVA项目本地启动跑数据没问题,链接测试环境数据库报错
报错如下:

com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Expression #2 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'weibao.w.id' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)

本人用的Mysql版本是8.0.18,网上说在my.conf下加一段

sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION

加了就会报错,启动MySql

Redirecting to /bin/systemctl restart  mysqld.service
Job for mysqld.service failed because the control process exited with error code. See "systemctl status mysqld.service" and "journalctl -xe" for details.

后续尝试了几种方法,mysql高版本直接在mysqld下加

sql_mode ='STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION'

MySql8.0.18下解决this is incompatible with sql_mode=only_full_group_by_第1张图片

MySql正常启动,程序也可以正常运行

你可能感兴趣的:(数据库)