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

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

相关推荐
Crazy________15 分钟前
01 k8s核心minikube搭建单点集群,kubectl高频命令
云原生·容器·kubernetes
泉城老铁20 分钟前
windows服务器mysql数据库备份脚本
java·后端·mysql
却尘22 分钟前
用 25 个概念彻底看懂SQL多维分析的底层逻辑
后端·sql·mysql
计算机学姐35 分钟前
基于Python的校园美食推荐系统【2026最新】
开发语言·vue.js·后端·python·mysql·django·推荐算法
踢球的打工仔1 小时前
mysql外键
数据库·mysql
伐尘1 小时前
【MySQL】MySQL 有效利用 profile 分析 SQL 语句的执行过程
android·sql·mysql
卿雪1 小时前
MySQL【数据库的三大范式】:1NF 原子、2NF 完全依赖、3NF 不可传递
数据库·mysql
wzy06231 小时前
大规模数据随机均匀分配的两种SQL实现方案
mysql·随机均匀分配
LSL666_2 小时前
docker概述
运维·docker·容器
cqsztech2 小时前
如何在Oracle linux9.6 安装docker软件
数据库·docker·oracle