Mysql关闭ONLY_FULL_GROUP_BY

Mysql禁用ONLY_FULL_GROUP_BY
首先找到mysql配置文件位置
mysql --help
输出中有类似:
Default options are read from the following files in the given order:
/etc/my.cnf /etc/mysql/my.cnf /usr/etc/my.cnf ~/.my.cnf

/etc/my.cnf /etc/mysql/my.cnf /usr/etc/my.cnf ~/.my.cnf任意文件的[mysqld]下添加以下配置即可

mysql5.7

sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

mysql8

sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION

重启mysql
systemctl restart mysql

查看是否生效
SELECT @@sql_mode;

输出中不再包含ONLY_FULL_GROUP_BY


Mysql关闭ONLY_FULL_GROUP_BY
https://ppaet.github.io/Mysql关闭ONLY-FULL-GROUP-BY.html
作者
ppaet
发布于
2025年8月18日
许可协议