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

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

相关推荐
追风筝的小青年1 小时前
ubuntu24中部署k8s 1.30.x-底层用docker
docker·容器·kubernetes
贝锐1 小时前
Docker本地部署青龙面板,如何用内网穿透工具实现远程访问?
网络·docker
程序员陆通1 小时前
MySQL索引底层原理与性能优化实践
数据库·mysql·性能优化
Raymond运维2 小时前
MySQL 8.0源码编译安装(二)
linux·运维·mysql
core5123 小时前
fastdfs快速部署、集成、调优
docker·部署·springboot·fastdfs·调用
小宁爱Python3 小时前
MySql的两种安装方式
数据库·mysql
木雷坞3 小时前
docker国内镜像源列表
运维·docker·容器
David爱编程4 小时前
网络策略NetworkPolicy与RBAC授权机制: Kubernetes安全体系的双重防线
云原生·容器·kubernetes
飞翔的佩奇7 小时前
基于SpringBoot+MyBatis+MySQL+VUE实现的房屋交易平台管理系统(附源码+数据库+毕业论文+部署教程+配套软件)
数据库·spring boot·mysql·vue·毕业设计·mybatis·房屋交易平台
wb18913 小时前
服务器的Mysql 集群技术
linux·运维·服务器·数据库·笔记·mysql·云计算