在Windows Docker中安装MySQL

本文的前提是本地Docker环境已经配置成功,参考Windows 10安装Docker并使用私钥连接AWS EC2

1. 参考资料

https://dev.mysql.com/doc/refman/8.0/en/grant.html
https://www.jeffgeerling.com/blog/2017/how-fix-host-1721801-not-allowed-connect-mysql-docker
https://hub.docker.com/_/mysql?tab=description&page=5&ordering=last_updated

2. 运行docker pull MysqL:5.7.34下载image

5.7.34: Pulling from library/MysqL
69692152171a: Pull complete
1651b0be3df3: Pull complete
0f86c95aa242: Pull complete
37ba2d8bd4fe: Pull complete
497efbd93a3e: Pull complete
a023ae82eef5: Pull complete
e76c35f20ee7: Pull complete
e887524d2ef9: Pull complete
ccb65627e1c3: Pull complete
Digest: sha256:a682e3c78fc5bd941e9db080b4796c75f69a28a8cad65677c23f7a9f18ba21fa
Status: Downloaded newer image for MysqL:5.7.34
docker.io/library/MysqL:5.7.34
d53b544bd61131e960f6983acfb3392a37283b5d469ce782c1f0210d71d7fadc

3. 启动MysqL

docker run -v {VOLUME PATH}:/var/lib/MysqL --name test-MysqL -p 3306:3306 -e MysqL_ROOT_PASSWORD=123456 -d MysqL:5.7.34

{VOLUME PATH}为数据持久化的位置,初始化时必须为空

4. 宿主机连接

5. 创建新用户数据库

CREATE USER '{USERNAME}'@'%' IDENTIFIED BY '{PASSWORD}';
create database `{DATABASE}`
GRANT ALL ON {DATABASE}.* TO '{USERNAME}'@'%';

6. 用新用户登录

docker exec -it {CONTAINER ID} MysqL -u {USERNAME} -p

相关文章

Docker是什么Docker是 Docker.Inc 公司开源的一个基于 LXC技...
本文为原创,原始地址为:http://www.cnblogs.com/fengzheng...
镜像操作列出镜像:$ sudo docker imagesREPOSITORY TAG IMA...
本文原创,原文地址为:http://www.cnblogs.com/fengzheng/p...
在 Docker 中,如果你修改了一个容器的内容并希望将这些更改...
在Docker中,--privileged 参数给予容器内的进程几乎相同的权...