临时取消:

利用root账号登录数据库,执行

SELECT @@GLOBAL.sql_mode;

查看结果如下

only_full_group_by,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION

执行如下语句

SET GLOBAL sql_mode=(SELECT REPLACE(@@sql_mode,'ONLY_FULL_GROUP_BY',''));

即可去除only_full_group_by模式(如未去掉,多执行几次)

利用如下语句查看去除结果

SELECT @@GLOBAL.sql_mode;

结果为:

STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION

即为取消成功。

永久取消

找到配置文件my.cnf或my.ini,找到[mysqld]部分,然后添加或修改sql_mode如下:

[mysqld]
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION

然后重启数据库服务,即可永久取消掉ONLY_FULL_GROUP_BY模式。

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐