1. 一、错误说明
  2.  
  3.        这个错误发生在mysql 5.7 版本及以上版本会出现的问题:
  4.  
  5.        mysql .7版本默认的sql配置是:sql_mode="ONLY_FULL_GROUP_BY",这个配置严格执行了"SQL92标准"
  6.  
  7.        很多从5.6升级到5.7时,为了语法兼容,大部分都会选择调整sql_mode,使其保持跟5.6一致,为了尽量兼容程序。
  8.  
  9.         二、sql层面
  10.  
  11.         sql执行时,出现该原因:
  12.  
  13.         简单来说就是:输出的结果是叫target list,就是select后面跟着的字段,还有一个地方group by column,就是
  14.  
  15.         group by后面跟着的字段。由于开启了ONLY_FULL_GROUP_BY的设置,所以如果一个字段没有在target list 
  16.  
  17.         group by字段中同时出现,或者是聚合函数的值的话,那么这条sql查询是被mysql认为非法的,会报错误。

1、查看mysql版本

  1. select version();

2、查看sql_mode的语句如下

  1. select @@GLOBAL.sql_mode;

3、修改sql_mode

修改mysql配置文件,通过手动添加sql_mode的方式强制指定不需要ONLY_FULL_GROUP_BY属性,

my.cnf位于etc文件夹下,vim下光标移到最后,添加如下:

vim /etc/mysql.cnf

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

4、重启mysql 

  1. service mysqld restart

5、查看mysql

  1. ps -aux | grep mysql
  2. 或者
  3. netstat -ano | grep 3306
    whereis mysql 查看目录

6、杂乱的笔记

  1. mysqld --user=root 强制root启动
  2. 忘记密码:
  3. ->(mysql .7设置的密码中必须至少包含一个大写字母、一个小写字母、一个特殊符号、一个数字,
  4. 密码长度至少为8个字符)
  5. ->在/etc/my.cnf文件中【mysqld】后面 加入skip-grant-tables,让mysql可以免密码登录 mysql -uroot
  6. 之后分别执行如下语句完成密码修改:
  7. mysql> use mysql
  8. mysql> update user set authentication_string=password("NewPassword") where user="root";

  9. mysql> alter user "root"@"localhost" identified by "NewPassword";
  10. mysql> flush privileges;
  11. mysql> show variables like '%password%'; --查看密码策略 validate_password_policy low/medium
  12. mysql> set global validate_password_policy=low 密码验证策略改成low,只检查密码长度
  13. 退出重启mysql服务
  14. systemctl restart mysqld (service mysqld restart/stop/start)
  15. 可以查看初始密码 cat /var/log/mysql.log | grep -i password
  16. mysql -u root -pxxxxxx
  17. 修改完成
  18. 一般情况下 Linux 服务器默认安装 MySQL 的数据库表名是区分大小写的,如果CentOS上安装的 MySQL 不支持表名区分大小下,则按照如下方法操作即可:
  19. root 登录,修改vim /etc/my.cnf (注意:以实际 my.cnf 配置文件路径为准)
  20. [mysqld] 节点下,加入一行: lower_case_table_names=
  21.  
  22. 外网访问设置
  23. mysql -u root -p
  24. mysql>use mysql;
  25. mysql>update user set host ="%" where user ="root";
  26. mysql>flush privileges;

mysql 查询出现 "this is incompatible with sql_mode=only_full_group_by"错误解决方案,以及个人rpm方式重装所遇到的问题备份的更多相关文章

  1. mysql报错处理:incompatible with sql_mode=only_full_group_by

    问题: 服务报错:incompatible with sql_mode=only_full_group_by,如下图所示: 分析: NLY_FULL_GROUP_BY是MySQL提供的一个sql_mo ...

  2. 【Solution】MySQL 5.8 this is incompatible with sql_mode=only_full_group_by

    [42000][1055] Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated colu ...

  3. mysql报错this is incompatible with sql_mode=only_full_group_by

    1.报错信息 com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: In aggregated query without GROUP ...

  4. mysql5.7 this is incompatible with sql_mode=only_full_group_by错误

    解决办法: https://blog.csdn.net/qq_42175986/article/details/82384160 前言: 一.原理层面 这个错误发生在mysql 5.7 版本及以上版本 ...

  5. Mysql 分组查询出现'this is incompatible with sql_mode=only_full_group_by'的解决办法

    由于Mysql自动开启了 only_full_group_by,所以若查询的字段不在group by里面,则分组报错. 解决办法其一:mysql配置,关闭only_full_group_by,这种办法 ...

  6. mysql(5.7以上)查询报错:ORDER BY clause is not in GROUP BY..this is incompatible with sql_mode=only_full_group_by

    执行mysql命令查询时: select * from table_name错误信息如: [Err] 1055 - Expression #1 of ORDER BY clause is not in ...

  7. 5.7版本mysql查询报错:com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException:...this is incompatible with sql_mode=only_full_group_by

    先瞧下日志: ### Error querying database. Cause: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException ...

  8. Cause: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: ..... this is incompatible with sql_mode=only_full_group_by

    一.异常信息 org.springframework.jdbc.BadSqlGrammarException: ### Error querying database. Cause: com.mysq ...

  9. mysql命令gruop by报错this is incompatible with sql_mode=only_full_group_by

    在mysql 工具 搜索或者插入数据时报下面错误: ERROR 1055 (42000): Expression #1 of SELECT list is not in GROUP BY clause ...

随机推荐

  1. Python3之MySQL操作

    1.安装pymysql PyMySQL 是在 Python3.x 版本中用于连接 MySQL 服务器的一个库,在使用之前需要进行安装,可以使用以下命令安装最新版的 PyMySQL: 1).在cmd命令 ...

  2. ssh隧道使用

    在内网中几乎所有的linux服务器和网络设备都支持ssh协议.一般情况下,ssh协议是允许通过防火墙和边界设备的,所以经常被攻击者利用.同时ssh协议的传输过程是加密的,所以我们很难区分合法的ssh会 ...

  3. 关于 JavaSrcipt 前端开发的建议:模块化开发

    JavaScript 是一种优秀的脚本语言. 在 JavaScript 的诞生之初,便于 浏览器 密不可分,如今它更是到了服务器中大展身手. 但是这里不叙述服务端的开发建议. Script 翻译过来就 ...

  4. Nginx-入门(源码编译安装http://nginx.org/en/download.html)

    比较早的时候  web主要经典组合--->LAMP 近几年---->nginx后来居上--->LNMP=LEMP   Nginx = Engine x Nginx和Apache 都是 ...

  5. MGR监控报警

    一.报警思路 m.conf文件记录配置信息,只需要修改这个文件的内容即可(需要将mysql_stat.sh里面的信息写到这里,进行中) mysql_stat.sh文件作为MGR状态监测脚本,加入定时任 ...

  6. python接口自动化测试 - 数据驱动DDT模块的简单使用

    DDT简单介绍 名称:Data-Driven Tests,数据驱动测试 作用:由外部数据集合来驱动测试用例的执行 核心的思想:数据和测试代码分离 应用场景:一组外部数据来执行相同的操作 优点:当测试数 ...

  7. sass css样式:@for循环、样式变量与#{} 变量插值

    /* sass 可以用写JS的思想来写CSS代码         *   #{}                 用来插值,大括号中填写需要插入的变量         *   @for 变量 from ...

  8. Win10系统下如何将中文登录名改为英文登录名

    需求:本人每次在换完系统后是默认,图方便,登录名就直接是自己的名字,造成以后安装个别软件时会莫名其妙的出错. 解决办法: 1.在当前用户开始处-点击右键(Windows键+X)-注销 2.切换到Adm ...

  9. ipwry源码

    qqwry.ipwry都是cnss(http://blog.csdn.net/cnss/article/details/136069)出品,终于找到了源码,下载地址:http://download.c ...

  10. JavaScript 初学者容易犯的几个错误,你中招没?

    JavaScript 是对初学者比较友好的一门编程语言,基本上花个半小时看下语法就能写出能运行的代码.JavaScript 是动态脚本语言,对数据类型没有太多的限制,写起来非常灵活.但正因为如此,初学 ...