Docker中运行MySQL5.7并挂载宿主机目录到镜像

拉取mysql镜像

docker pull mysql:5.7

创建用于挂载的目录

mkdir -p /data/mysql/logs /data/mysql/conf /data/mysql/data

使用镜像创建容器

#将容器中MySQL的3306端口映射到本地的3307端口,并设置登录密码为:123456
docker run --name mysql5.7 -p 3307:3306 -v /data/mysql/data:/var/lib/mysql -v /data/mysql/conf:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7

命令解析

--name:容器名
--p:映射宿主主机端口
-v:挂载宿主目录到容器目录
-e:设置环境变量,此处指定root密码
-d:后台运行容器

进入容器

docker start 容器ID
docker exec -it 容器名字 /bin/bash

[root@dc01 ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
96a49c6e7235 mysql:5.7 "docker-entrypoint.s…" 4 weeks ago Up 2 minutes 0.0.0.0:3306->3306/tcp mysql5.7
fa56f865bd26 nginx:latest "nginx -g 'daemon of…" 4 weeks ago Up 16 minutes 0.0.0.0:80->80/tcp vigilant_swirles

[root@dc01 ~]# docker exec -it 96a49c6e7235 /bin/bash

root@96a49c6e7235:/# mysql -uroot -p123456

在这里插入图片描述

问题

首先按照上面安装完成否则目录无效

表名区分大小写

在宿主机上该目录下:/data/mysql/conf创建一个mysql.cnf
/data/mysql/conf/mysql.cnf添加如下内容

[mysqld]
lower_case_table_names=1

重启mysql

docker restart mysql5.7
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值