首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法将SQL_MODE设置为Mysql 8

无法将SQL_MODE设置为Mysql 8
EN

Server Fault用户
提问于 2020-06-03 09:57:19
回答 4查看 11.4K关注 0票数 7

我必须设置持久自定义SQL模式持久到我的服务器。我在/etc/mysql/mysql.conf/mysqld.cnf中添加了这一行

代码语言:javascript
复制
[mysqld]
...
sql-mode = STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

当我尝试运行mysql时,会得到以下错误:

2020-06-03T09:49:24.567568Z0 错误 服务器 /usr/sbin/mysqld:在将值'STRICT_TRANS_TABLES、ERROR_FOR_DIVISION_BY_ZERO、NO_AUTO_CREATE_USER、NO_ENGINE_SUBSTITUTION‘设置为'sql_mode’时出错。mysqld Ver 8.0.20-0ubuntu0.20.04.1用于x86_64上的Linux ((Ubuntu))

我试图将sql-mode更改为sql_mode并删除双引号,但没有更改。

EN

回答 4

Server Fault用户

发布于 2021-04-28 13:34:30

只需编辑/etc/mysql/my.conf,删除"NO_AUTO_CREATE_USER“。其结果将是:

代码语言:javascript
复制
!includedir /etc/mysql/conf.d/
!includedir /etc/mysql/mysql.conf.d/

[mysqld]
sql_mode = "STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION"

对我起作用了!

票数 7
EN

Server Fault用户

发布于 2020-07-07 17:41:03

在最近版本的Ubuntu / Debian中,我正在修改文件:

/lib/systemd/system/mysql.service

ExecStart=/usr/sbin/mysqld --sql-mode=NO_ENGINE_SUBSTITUTION

然后跑:

代码语言:javascript
复制
systemctl daemon-reload
systemctl restart mysql

对*.cnf文件的更改不起任何作用

票数 0
EN

Server Fault用户

发布于 2022-10-28 10:38:54

正确的语法是sql-mode = STRICT_TRANS_TABLES、ONLY_FULL_GROUP_BY、ERROR_FOR_DIVISION_BY_ZERO、NO_ENGINE_SUBSTITUTION。

票数 0
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/1019823

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档