1.拉去mysql镜像


docker pull mysql:5.7

2.查看并启动镜像


#列出已下载的镜像
docker images
#启动容器,挂载配置文件和数据
docker run --name mysql -v D:/docker/mysql/conf/my.cnf:/etc/mysql/my.cnf -v D:/docker/mysql/logs:/logs -v D:/docker/mysql/data:/var/lib/mysql -v  D:/docker/mysql/conf/conf.d:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=123456 -d -i -p 3306:3306 mysql:5.7

启动成功


 

windows docker desktop安装mysql_mysql

命令行


 

windows docker desktop安装mysql_mysql_02

desktop

3. 进入容器内bash,连接mysql


docker exec -it mysql bash

注意:我这里使用的是Git bash,提示错误the input device is not a TTY. If you are using mintty, try prefixing the command with 'winpty'
在命令前加winpty即可


#进入容器内
winpty docker exec -it mysql bash
#连接mysql
mysql -u root -p

4. 添加远程登录用户


CREATE USER 'test'@'%' IDENTIFIED WITH mysql_native_password BY '123456';

5. 授予权限


GRANT ALL PRIVILEGES ON *.* TO 'test'@'%';

6.使用navicat连接成功

 

windows docker desktop安装mysql_mysql_03

本地连接成功

7.修改本地配置文件验证是否生效

修改mysql/conf/my.cnf文件


[mysqld]
#设置表名区分大小写
lower_case_table_names=1

重启mysql查看效果,已经生效


 

windows docker desktop安装mysql_bash_04

修改配置生效


如果修改配置没有生效, 修改容器中mysql.cnf 文件的权限为644, 再重启即可生效


chmod 644 mysql.cnf



作者:小鱼大头