Mysql5.7版本ERROR 1055问题

Sql优化过程中遇到Sql执行错误:

ERROR 1055 (42000): Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated column ‘advanced.dept.deptno’ which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by

问题出现原因:

在5.7以上的版本实现了对功能依赖的检测,MySql默认启用了only_full_group_by SQL模式,

对于GROUP BY聚合操作,如果在SELECT中的列,没有在GROUP BY中出现,那么这个SQL是不合法的,除非这个字段出现在聚合函数里面。

但个人由于没有必要使用聚合函数,所以,做了取消检测。

网上有很多处理的办法,但是操作还是复杂了,下面列出快速解决问题:

先如今云服务器,云数据库越来越多,当你用云服务器时,不过过多的去配置mysql参数,然后又报权限问题、还得找密码、手动重启mysql。下图一招直击要害

原文地址:https://www.cnblogs.com/pcxx/p/11085616.html

时间: 2024-11-29 13:02:54

Mysql5.7版本ERROR 1055问题的相关文章

mysql异常ERROR 1055 (42000)说明

具体异常信息如下: ERROR 1055 (42000): Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'aaa.test.age' which is not functionally dependent on columns in GROUP BY clause;  this is incompatible with sql_mode=only_full_gro

快速升级PHP5.4、MySql5.5版本WDCP面板一键包

指定一键安装包环境升级PHP5.4版本 wget http://soft.sindns.net/wdcp/php_up54.sh sh php_up54.sh 直接登录SSH,下载和执行脚本自动会升级PHP5.4版本. 我们等呀等,看到这样的界面,就表示升级完毕. 刷新PHPINFO,然后我们可以看到当前的PHP版本已经到5.4.下面就好办了,是不是? 升级MYSQL5.5版本 比较稳定的还是直接升级到5.5版本,为了文章的连贯性,直接在这里也提一下MYSQL的升级. wget http://s

CentOS下zabbix监控mysql5.6版本主从

上次Zabbix添加了监控MySQL性能,因此此次在其基础上添加主从监控.文章过程中不在介绍MySQL5.6版本相关细节处理,具体可以参考上次文章: http://blog.csdn.net/ygqygq2/article/details/53264955 1. Zabbix添加自定义监控流程 Zabbix agentd添加自定义key: 自定义key调用的是获取监控数据源脚本等: 添加Zabbix主机数据源模板,主机链接模板; 2. 具体步骤 1. 编写监控mysql主从脚本 vim /usr

在Linux系统下安装大于mysql5.5版本的数据库

linux下mysql 5.5的安装方法: 1.安装所需要系统库相关库文件      gcc等开发包,在安装linux系统的时候安装. 2.创建mysql安装目录 # mkdir -p /usr/local/mysql/ 3.创建数据存放目录 # mkdir -p /service/data/ 4.创建用户和用户组与赋予数据存放目录权限 # groupadd mysql # useradd -g mysql mysql # chown mysql:mysql -R /service/data/

MySQL5.5出面ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)问题的解决办法

问题描述 安装完MySQL5.5数据库,使用Navicat Premium以及命令窗口连接数据库都报以下错误: ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES) 解决办法 通常该错误是忘记密码导致的,所以我们需要修改密码,具体操作步骤如下: 1.打开D:\Program Files\MySQL\MySQL Server 5.5\my.ini,在[mysqld]下增加一行启动参数

MySQL5.0版本的安装图解教程

MySQL5.0版本的安装图解教程是给新手学习的,当前mysql5.0.96是最新的稳定版本. mysql 下载地址 http://www.jb51.net/softs/2193.html 下面的是MySQL安装的图解,用的可执行文件安装的,详细说明了一下!打开下载的mysql安装文件mysql-5.0.27-win32.zip,双击解压缩,运行“setup.exe”,出现如下界面 mysql安装图文教程1 mysql安装向导启动,按“Next”继续 mysql图文安装教程2 选择安装类型,有“

MySQL5.1版本的主从复制搭建

MySQL5.1版本的主从复制搭建         [备注]: 主机192.168.250.20 备机192.168.250.40 主从复制 1主机上面已经有了MySQL5.1.53-log版. 2备机上没有mysql数据库,需要在备机上安装MySQL5.1.53-log软件,具体参考svn文档"system\mysql\document\IT_SYS_MySQL_Installation.docx". 3再次确定主服务器与从服务器的MySQL版本一致 Showvariables li

MySQL5.5.38和MySQL5.7版本中忘记root密码,解决办法

1.在centos6.5中安装mysql5.5.38版本,忘记密码如何解决? (1).先关闭mysqld服务 service  mysqld  stop (2).使用mysqld_safe安全模式启动mysql,使用两个参数: --skip-grant-tables:跳过授权表 --skip-networking: 跳过网络,防止其他用户对数据库进行读写操作,待密码恢复后可正常开启 执行命令: mysqld_safe  --skip-grant-tables  --skip-networking

MySQL5.7版本的三种安装方式

                 mysql5.7的安装方式 安装MySQL可以分为三种方式:{1:源码编译.2:二进制安装.3:rpm安装} 一.MySQL 5.7主要特性: 原生支持Systemd更好的性能:对于多核CPU.固态硬盘.锁有着更好的优化更好的InnoDB存储引擎更为健壮的复制功能:复制带来了数据完全不丢失的方案,传统金融客户也可以选择使用MySQL数据库. 新增sys库:以后这会是DBA访问最频繁的库更好的优化器:优化器代码重构的意义将在这个版本及以后的版本中带来巨大的改进,O