时间:2023-10-29来源:系统城装机大师作者:佚名
mysql8报错,

在mysql配置文件下设置
| 1 | sql_mode=‘NO_AUTO_VALUE_ON_ZERO,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION,PIPES_AS_CONCAT,ANSI_QUOTES' |

在mysqlld下添加sql-mode

MySQL 5.7.5及以上功能依赖检测功能。
如果启用了ONLY_FULL_GROUP_BY
SQL模式(默认情况下),MySQL将拒绝选择列表,HAVING条件或ORDER BY列表的查询引用在GROUP BY子句中既未命名的非集合列,也不在功能上依赖于它们。
1、navcat中新建查询:
| 1 | select @@global.sql_mode |
结果:
ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
可以看到存在ONLY_FULL_GROUP_BY,问题就出在这上
2、修改sql_mode
| 1 | set @@global.sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION'; |
注意:“8.0.x的版本不支持NO_AUTO_CREATE_USER,去掉即可”
这样的方式只能解决单表,且如果Mysql服务重启(即服务器重启)则会被mysql的默认ini配置覆盖,因此不推荐。
以下为本人的配置:
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
[mysqld]# 设置3307端口(原先的mysql5已经占用3306)port=3307# 设置mysql的安装目录(你自己的目录)basedir="D:\\Environment\\mysql-8.0.30-winx64"# 设置mysql数据库的数据的存放目录datadir="D:\\Environment\\mysql-8.0.30-winx64\\data"# 允许最大连接数max_connections=200# 允许连接失败的次数。max_connect_errors=10# 服务端使用的字符集默认为UTF8character-set-server=utf8# 创建新表时将使用的默认存储引擎default-storage-engine=INNODB# 默认使用“mysql_native_password”插件认证#mysql_native_passworddefault_authentication_plugin=mysql_native_password#关闭ONLY_FULL_GROUP_BYsql_mode= 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION'[mysql]# 设置mysql客户端默认字符集default-character-set=utf8[client]# 设置mysql客户端连接服务端时默认使用的端口port=3307default-character-set=utf8 |
配置中标红部分为解决问题的部分,其中注意配置需要有单引号包裹,如果你是mysql5.x,可以加上NO_AUTO_CREATE_USER;如果你是mysql8.x,则不需加上,若你加上,则会发生服务无法启动的情况。
2023-10-30
windows上的mysql服务突然消失提示10061 Unkonwn error问题及解决方案2023-10-30
MySQL非常重要的日志bin log详解2023-10-30
详解MySQL事务日志redo log一、单表查询 1、排序 2、聚合函数 3、分组 4、limit 二、SQL约束 1、主键约束 2、非空约束 3、唯一约束 4、外键约束 5、默认值 三、多表查询 1、内连接 1)隐式内连接: 2)显式内连接: 2、外连接 1)左外连接 2)右外连接 四...
2023-10-30
Mysql删除表重复数据 表里存在唯一主键 没有主键时删除重复数据 Mysql删除表中重复数据并保留一条 准备一张表 用的是mysql8 大家自行更改 创建表并添加四条相同的数据...
2023-10-30