docker修改mysql中的my.cnf

事情的起因是是想要打开mysql上的binglog功能,但是直接修改我的mysql的配置总是报错,本机上的mysql卸载重装之类的操作非常耗费时间,于是我想能不能使用docker创建一个mysql容器,修改其配置,这样就会比较方便。

1. docker搜索镜像
$sudo docker search mysql

在这里插入图片描述

2. docker拉取镜像

将镜像拉到本地,可以根据这个镜像创建容器

$ sudo docker pull mysql

在这里插入图片描述

3. docker查看本地镜像

在这里插入图片描述

4. docker运行镜像

咱们先不修改说明配置,直接创建一个容器查看一下效果

$ sudo docker run --name mysql_test -e MYSQL\_ROOT\_PASSWORD=123456 -p 3306:3306 -d mysql

在这里插入图片描述

5. 查看效果

本地的话,先使用docker登录到这个容器的命令行:

$ sudo docker exec -it mysql_test bash

然后直接使用设置的账号密码登录mysql:

/# mysql -u root -p

在这里插入图片描述

远程连接也可以用:
在这里插入图片描述

6. 如何修改mysql容器中的配置文件my.cnf

找一下就能发现,docker mysql容器的配置文件在/etc/mysql/my.cnf:
在这里插入图片描述

  • 先通过docker cp将容器内的文件复制到本地:

    # 用法
    $ sudo docker cp ${容器名}:${文件在容器内的地址} ${文件在本机的地址}
    
    $ sudo docker cp mysql_test:/etc/mysql/my.cnf ~/
    

    在这里插入图片描述

  • 在本地修改配置文件
    我是想开启binlog,因此我就加上binlog的几个配置项,修改这些配置文件的时候要注意一下,这个文件一会是需要上传到容器之中的,因此要注意这里的路径要写容器内的路径:
    在这里插入图片描述

  • 通过docker cp命令将本地修改好的配置文件上传到容器内:

    # 用法
    $ sudo docker cp ${本地文件路径} ${容器名}${容器中文件路径}
    
    $ sudo docker cp ~/my.cnf mysql_test:/etc/mysql/my.cnf
    

    上容器内看一眼,我们写入的修改已经在配置文件中了
    在这里插入图片描述

7. 重启容器
# 用法
$sudo docker restart ${容器名}
$ sudo docker restart mysql_test
8. 容器管理
# 查看所有正在运行的容器
$ sudo docker ps

# 查看所有存在的容器
$ sudo docker ps -a

# 停止运行容器
$ sudo docker stop ${容器id}
9. 镜像管理
# 查看下载的所有镜像
$ sudo docker images
# 删除镜像
$ sudo docker rmi hello-world
# 当然,最保险的方式是使用 image id来删除镜像
$ sudo docker rmi b5b70952fa24
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

canaryW

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值