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

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

相关推荐
水滴与鱼3 分钟前
DOCKER制作ROS运行的镜像文件
运维·docker·容器
翔云1234564 分钟前
在MySQL中,gtid_purged 的初始化和更新机制
数据库·mysql
smileNicky24 分钟前
大型MySQL查询优化实战:从全表扫描到毫秒级响应的通用索引设计
数据库·mysql
Dxy12393102161 小时前
MySQL性能优化深度解析
数据库·mysql·性能优化
清晓粼溪1 小时前
MySQL-01:基础知识
数据库·mysql
思成不止于此2 小时前
MySQL 基础核心知识点全梳理:从入门到实战
数据库·笔记·学习·mysql
洒家肉山大魔王2 小时前
Kubernetes中Pod 处于 CrashLoopBackOff 状态(生产环境)
linux·容器·kubernetes·pod·pod循环重启
千寻技术帮2 小时前
10407_基于springboot的就业信息分享系统
mysql·毕业设计·源码·springboot·安装·文档·就业信息
零日失眠者3 小时前
【Oracle入门到删库跑路-17】实战案例:云环境部署实践
数据库·mysql·oracle
杨浦老苏3 小时前
安全的消息传递和协作工具Virola Messenger
docker·即时通讯·群晖·im