首页 > 解决方案 > 尽管没有启用 ONLY_FULL_GROUP_BY,但 MySQL ONLY_FULL_GROUP_BY 错误

问题描述

我最近将 MySQL 数据库从本地迁移到 Google Cloud Platform 以准备部署。当我第一次这样做时,我遇到了:

MySQLdb._exceptions.OperationalError: (1055, "Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'testing.Event.EventID' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by")

烦人,但没问题:快速搜索发现它可以在 GCP 控制台的标签部分关闭,这似乎没问题,因为我不太担心关闭它的风险。这行得通,或者我是这么认为的。在我的 GCP SQL 实例上设置“传统”标签几天后,同样的问题继续出现。

即使我运行查询:

SELECT @@sql_mode;

我得到的结果是:

STRICT_TRANS_TABLES,STRICT_ALL_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,TRADITIONAL,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

其中不包含 only_full_group_by 设置,但我收到错误:this is incompatible with sql_mode=only_full_group_by

尽管不在错误代码所说的导致错误的设置中,但是否有某种原因会继续出现此错误?

标签: pythonmysqlgoogle-cloud-platform

解决方案


推荐阅读