微信扫一扫 分享朋友圈

已有 804 人浏览分享

开启左侧

docker如何修改mysql配置文件

[复制链接]
804 0
用docker启动一个5.7的数据库在建表时候遇到下面问题:
  1. [Err] 1055 - Expression #1 of ORDER BY clause is not in GROUP BY clause and contains nonaggregated column ‘information_schema.PROFILING.SEQ’ which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by
复制代码
修改一下sql_model即可。
大家接下来就跟着我看一下这个docker怎么修改mysql内部的配置。
我先是在百度上随便收了一下docker修改mysql配置,结果真我震惊了,都是来回抄一个,还没给我解决,更过分的是还有的文章只抄了一半!!!所以我准备自己写一个真正快速解决问题的一篇关于修改dokcer里面的mysql的文章。
1:首先我在docker上快速启动了一个mysql

  1. docker run -d -p 3306:3306  -e MYSQL_ROOT_PASSWORD=123456 --name mysql-docker1 mysql:5.7
复制代码
2:在宿主机上新建一个文件夹(/home/mysql/mysql_conf)用来复制docker内部的配置文件
3:运行:docker cp mysql-docker:/etc/mysql/mysql.conf.d/mysqld.cnf /home/mysql/mysql_conf 把容器内部的配置文件cp到刚才建的文件夹下面。
4:在宿主机修改 mysqld.cnf 文件 加上下面的代码

  1. sql_mode="STRICT_TRANS_TABLES,STRICT_ALL_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,TRADITIONAL,NO_ENGINE_SUBSTITUTION"
复制代码
5:把刚才那个mysql容器删除两句命令:
  1. docker stop mysql-docker1  
  2. docker rm mysql-docker1  
复制代码
6:重新挂在启动一个新的实例:
  1. docker run -d -p 3306:3306  -v /home/mysql/mysql_conf/mysqld.cnf:/etc/mysql/mysql.conf.d/mysqld.cnf -v /home/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 --name mysql-docker mysql:5.7
复制代码


免责声明:
1,海欣资源网所发布的资源由网友上传和分享,不保证信息的正确性和完整性,且不对因信息的不正确或遗漏导致的任何损失或损害承担责任。
2,海欣资源网的资源来源于网友分享,仅限用于学习交流和测试研究目的,不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。
3,海欣资源网所发布的资源由网友上传和分享,版权争议与本站无关,您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。
4,如果您喜欢,请支持正版,购买正版,得到更好的正版服务,如有侵权,请联系我们删除并予以真诚的道歉,联系方式邮箱 haixinst@qq.com
海欣资源-企业信息化分享平台。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

0

关注

0

粉丝

28

主题
热度排行
回复排行
最新贴子

Archiver|手机版|海欣资源 ( 湘ICP备2021008090号-1 )|网站地图

GMT+8, 2024-11-21 22:02 , Gzip On, MemCached On.

免责声明:本站所发布的资源和文章均来自网络,仅限用于学习交流和测试研究目的,不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。 本站信息来自网络,版权争议与本站无关,您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。 如果您喜欢,请支持正版,购买正版,得到更好的正版服务,如有侵权,请联系我们删除并予以真诚的道歉。