开发者社区> 问答> 正文

安装LAMP后的问题,phpmyadmin出现1055错误

__20180322130417

本人是技术菜鸟,这个问题要怎么解决呢,谢谢,

展开
收起
着急的耗子 2018-03-22 13:13:16 2331 0
2 条回答
写回答
取消 提交回答
  • Hi 首先 phpmyadmin 报的错误是透传 mysql 给的错误码,按照这个错误码去查找问题就可以了。

    其次,mysql 的 1055 错误码的意思是:SELECT 的字段里,不可包含除了 GROUP BY 字段、聚集函数字段以外的字段。在你的例子里,由于用到了GROUP BY BINARY s.SCHEMA_NAME,那么 SELECT 里的 s.SCHEMA_NAME (是的,mysql 认为他们不是同一个字段) 和 DEFAULT_COLLATION_NAME 就很碍眼。

    所以解决方案:

    1. BINARY 去掉,将 SELECT 中 GROUP BY 选取的字段 s.SCHEMA_NAME 以外的字段用聚集函数包裹
    SELECT        s.SCHEMA_NAME, MAX(s.DEFAULT_COLLATION_NAME)
    FROM        `information_schema`.SCHEMATA as s
    GROUP BY    s.SCHEMA_NAME
    ORDER BY    `SCHEMA_NAME` ASC;

    或将所有 SELECT 涉及字段放在 GROUP BY 中

    SELECT        s.SCHEMA_NAME, s.DEFAULT_COLLATION_NAME
    FROM        `information_schema`.SCHEMATA as s
    GROUP BY    s.SCHEMA_NAME, s.DEFAULT_COLLATION_NAME
    ORDER BY    `SCHEMA_NAME` ASC;

    或移除 only_full_group_by 的限制,不需要改你的代码,参见:https://stackoverflow.com/questions/23921117/disable-only-full-group-by

    2019-07-17 22:02:44
    赞同 1 展开评论 打赏
  • 域名投资

    2019-07-17 22:02:43
    赞同 1 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
CentOS Nginx PHP JAVA多语言镜像使用手册 立即下载
CentOS Nginx PHP JAVA 多语言镜像使用手 立即下载
低代码开发师(初级)实战教程 立即下载