记录:windos下使用docker安装mysql5.7.37,使用报错:sql_mode=only_full_group_by

问题:windos下使用docker安装mysql5.7.37,按照百度进行配置文件挂载并修改sql_mode,但是配置并不生效。
安装完mysql之后,配置文件和数据都已经正常挂载,并且也修改的配置文件,在[mysqld]下添加了

sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

但是重启mysql容器 发现依然不生效!!!!

最开始怀疑配置文件找错,于是利用百度来找真正的配置文件,参考:https://www.cnblogs.com/chen2ha/p/15914157.html。
找到mysql容器的配置文件地址为:/etc/mysql/mysql.conf.d/mysql.cnf
找到之后重新构建容器,只对这个配置文件进行挂载,用于测试

docker run --name mysql5 -p 3305:3306 -e MYSQL_ROOT_PASSWORD=root -v D:\Document\docker\mysql5\config\mysql\mysql.cnf:/etc/mysql/mysql.conf.d/mysql.cnf -d mysql:5.7.37

后来重启后,依然不生效。到此已经没有什么其他法子了,只能用最笨的方法了,不进行配置文件挂载,直接在容器里边进行配置修改。
步骤:
1、启动容器,只进行数据挂载。
2、进入容器。
3、更新apt,并安装vim。
4、修改配置文件并保存。
5、重启容器

docker run -p 3305:3306 -e MYSQL_ROOT_PASSWORD=root -v D:\Document\docker\mysql5\data\mysql:/var/lib/mysql  --name mysql5 -d mysql:5.7.37
docker exec -it mysql5 bash
apt update
apt-get install vim
vi /etc/mysql/mysql.conf.d/mysql.cnf
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
重启容器

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值