原文:docker 下修改 mysql sql_mode和配置文件

打开PowerShell

首先创建mysql容器,这里我们指定使用mysql5.7的版本

docker run -d -p 3306:3306 --name mysql-docker -e MYSQL_ROOT_PASSWORD=root mysql:5.7

创建成功,查看一下运行状态

docker ps

 

可以看到我们的容器正在运行中,现在进入容器,查看一下配置文件

 

docker exec -it mysql-docker /bin/bash
cat /etc/mysql/my.cnf

可以看到这里包含了两个目录下的文件,查看一下,mysql.conf.d下,发现有我们需要更改的文件

cat /etc/mysql/mysql.conf.d/mysqld.cnf

 

可以看到这里并没有 sql_mode的配置,说明mysql使用了默认的配置,我们可以进入mysql查看一下,

 

mysql -u root -p 

回车输入我们创建容器时设置的密码,也就是root,进入mysql 控制台,输入

show variables like '%sql_mode';

查看默认 sql_mode配置,可以看到默认的是

这个时候我们就可以去更改配置文件了,输入

exit 退出mysql控制台,

然后我们再查看一下这个配置文件

cat /etc/mysql/mysql.conf.d/mysqld.cnf 

把输出的内容复制一下,我们在本地新建一个同名文件,把内容粘贴进去,然后在 [mysqld]下面添加 sql_mode = 你的配置,比如:

把这个文件保存一下,

然后切换到命令行,输入exit退出容器,

停止并删除docker-mysql容器,

docker stop mysql-docker
docker rm mysql-docker

然后我们修改下docker run 语句,把我们本地的配置文件映射覆盖到容器内部,重新配置一下容器

docker run -d -p 3306:3306 -v D:/mysql/conf/mysqld.cnf:/etc/mysql/mysql.conf.d/mysqld.cnf -v D:/mysql/data:/var/lib/mysql  -e MYSQL_ROOT_PASSWORD=root --name mysql-docker mysql:5.7 

然后我们按照一开始的步骤,重新进入一下容器

docker exec -it mysql-docker /bin/bash

进入mysql

mysql -u root -p root

查看sql_mode是否被修改

 show variables like '%sql_mode';

可以看到已经修改成功

大功告成,由于配置文件是由我们本地映射过去的,所以如果还需要改什么配置的话,直接更改我们本地的配置文件就好了

 

ps: 以上命令都是在powershell中完成的,cmd有可能不支持创建容器和进入容器的代码,docker 版本 18.03.1 for win

docker 下修改 mysql sql_mode和配置文件的更多相关文章

  1. docker下修改mysql配置文件

    原文:docker下修改mysql配置文件 版权声明:本文为博主原创文章,转载注明地址:http://blog.csdn.net/wang704987562 https://blog.csdn.net ...

  2. CentOS双机中Docker下安装Mysql并配置互为主从模式

    CentOS双机中Docker下安装Mysql并配置互为主从模式 目录 1.搜索镜像... 1 2.拉取镜像... 1 3.绑定端口: 1 4.配置文件(修改/etc/mysql/my.cnf文件): ...

  3. 1.Mysql集群------Docker下的Mysql主从复制

    前言: 实话说,我想做的是Mysql集群架构. 我的计划是: 1.实现Docker下的Mysql主从复制 2.实现MyCat基于Mysql的读写分离 3.实现MyCat的分库分表 4.实现pxc集群 ...

  4. Linux学习之CentOS(二十)--CentOS6.4下修改MySQL编码方法

    但是当我们在试图对数据库中的数据进行备份或者将sql文件导入到我们的数据库时可能就会碰到编码的问题,在windows下安装mysql时我们可以在安装的时候就选择好整个数据库的编码方式(通常设置成utf ...

  5. ubuntu下修改mysql默认字符编码出现的Job failed to start解决办法

    ubuntu下修改mysql默认字符编码出现的Job failed to start解决办法 前几天卸掉了用了好多年的Windows,安装了Ubuntu12.04,就开始各种搭环境.今天装好了MySQ ...

  6. centos 下修改mysql 默认字符集

    解决办法: CentOS 7下修改MySQL数据库字符编码为UTF-8,UTF-8包含全世界所有国家需要用到的字符,是国际编码. 具体操作: 1.进入MySQL控制台 mysql  -u root - ...

  7. ubuntu10.04下修改mysql的datadir的问题

    ubuntu10.04下修改mysql的datadir的问题 转自:http://blog.sina.com.cn/s/blog_4152a9f50100mq5i.html 昨天由于服务器空间告紧,需 ...

  8. mac下修改mysql登录密码

    mysql版本5.7.9 在mac终端下修改mysql用户登录密码 终端命令如下: update mysql.user set authentication_string=PASSWORD(" ...

  9. Linux下修改mysql默认最大连接数

    liunx下修改mysql最大连接数(Centos下测试通过)1.查看当前系统下mysql设置的最大连接数方式一.mysqladmin -uroot -p variables |grep max_co ...

随机推荐

  1. 使用json_decode无法解析json

    在接入合作方接口时,遇到一个json无法解析出来代码如下: <?php $res='{"resultcode":007,"resMsg":"!& ...

  2. JavaScript学习笔记(第二天)

    数组 为什么要学习数组 之前学习的数据类型,只能存储一个值(比如:Number/String.我们想存储班级中所有学生的姓名,此时该如何存储? 数组的概念 所谓数组,就是将多个元素(通常是同一类型)按 ...

  3. [php]如何做到高并发优化

    在实际的开发过程中我们遇到过各种各样的活动,但像用户流量较大的平台就需要考虑高并发的问题,但是如何去解决呢?我总结了几种解决方案,欢迎大家指正! 一.什么是PV/UV/QPS? PV:页面访问量,即P ...

  4. 打包成ipa包

    http://zengwu3915.blog.163.com/blog/static/27834897201362831449893/?suggestedreading&wumii Xcode ...

  5. 从CSDN搬过来

    https://blog.csdn.net/qq_34416123 从CSDN搬过来 神奇的代码竟然没有弄成博客园这里面的格式 所以以前的很多博客的代码都是直接放在那里了. 懒得去改了.

  6. JAVA 多线程知识总结(一)

    一,线程的生命周期以及五种基本状态 关于JAVA线程的生命周期,首先看一下下面这张图 上图中基本上囊括了Java中多线程各重要知识点.掌握了上图中的各知识点,Java中的多线程也就基本上掌握了. Ja ...

  7. MVC、RPC、SOA、微服务架构之间的区别

    MVC.RPC.SOA.微服务架构之间的区别 一.MVC架构 其实MVC架构就是一个单体架构. 代表技术:Struts2.springMVC.Spring.Mybatis 等等. 二.RPC架构 RP ...

  8. CSS3特效——六面体

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  9. linux内核(二)内核移植(DM365-DM368开发攻略——linux-2.6.32的移植)

    一.介绍linux-2.6.32: Linux-2.6.32的网上介绍:增添了虚拟化内存 de-duplicacion.重写了 writeback 代码.改进了 Btrfs 文件系统.添加了 ATI ...

  10. 2015 Multi-University Training Contest 7 hdu 5373 The shortest problem

    The shortest problem Time Limit: 3000/1500 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Oth ...