docker:mysql8.0解决sql_mode = only_full_group_by问题

前言

如标题所言,我在centos上使用docker部署了mysql8.0的容器并运行,但长时间后发现该mysql的一些配置需要变更。

为了解决sql_mode = only_full_group_by问题,我决定更新mysql的配置文件。

之前有讲过mysql5.7的安装方案,里面有解决5.7版本该问题的配置,与8.0有些许不同

centos安装mysql 5.7版本_centos 安装mysql5.7-CSDN博客

解决方案

备份容器内的mysql配置文件

docker cp mysql:/etc/my.cnf /opt/my.cnf_2024101801

在原配置文件上构建新的配置文件

cp复制原配置文件为my.cnf后,在[mysqld]配置下新增sql_mode属性

# 8.0版本可用
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION

如果是5.7版本的话使用这个

# 仅供5.7版本使用
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

将新的配置文件移回去

docker cp /opt/my.cnf mysql:/etc/my.cnf

后续操作

尝试重启mysql容器

docker restart mysql

如果重启出现问题就把原配置文件移回去重启,从长计议

相关推荐
知初~4 小时前
出行项目案例
hive·hadoop·redis·sql·mysql·spark·database
c无序5 小时前
Docker-技术架构演进之路
docker
子非衣6 小时前
MySQL修改JSON格式数据示例
android·mysql·json
钊兵7 小时前
数据库驱动免费下载(Oracle、Mysql、达梦、Postgresql)
数据库·mysql·postgresql·oracle·达梦·驱动
隔壁老王1569 小时前
mysql实时同步到es
数据库·mysql·elasticsearch
努力的小T9 小时前
使用 Docker 部署 Apache Spark 集群教程
linux·运维·服务器·docker·容器·spark·云计算
东风微鸣11 小时前
TTRSS 迁移实战
docker·云原生·kubernetes·可观察性
Hanson Huang11 小时前
【存储中间件API】MySQL、Redis、MongoDB、ES常见api操作及性能比较
redis·mysql·mongodb·es
LUCIAZZZ11 小时前
EasyExcel快速入门
java·数据库·后端·mysql·spring·spring cloud·easyexcel