docker启动mysql容器失败

实现命令如下:

[root@localhost /]# docker search mysql(查找mysql镜像,此处如果无法获取到镜像,则可能是网络问题,需要保证虚拟机可以联网)
[root@localhost /]# docker pull mysql(拉取mysql镜像)
[root@localhost /]# docker image ls(查看所有的镜像)
[root@localhost /]# docker run --name zoey-mysql -d -it -p 3666:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql(启动mysql容器)

--name 设置mysql的名字
-d 在后台运行
-it 以交互方式运行
3666 是当前mysql的端口号,可随意设置
3306 是拉取的mysql的端口号,不可修改
-e  MYSQL_ROOT_PASSWORD=123456 设置root的密码,此处不可省略,否则无法启动mysql成功

1、查找mysql容器


docker启动mysql容器失败_第1张图片

2、拉取最新的mysql镜像


docker启动mysql容器失败_第2张图片

查看当前所有的镜像,验证是否拉取mysql镜像成功

3、运行mysql容器


docker启动mysql容器失败_第3张图片

4、进入这个mysql容器中


docker启动mysql容器失败_第4张图片

5、创建测试的数据库


docker启动mysql容器失败_第5张图片

6、本地使用数据库工具连接这个mysql容器

地址:192.168.79.128(虚拟机的IP地址,可以通过ifconfig命令查看)
用户名:root
密码:123456(启动mysql容器时设置的)
端口:3666(启动mysql容器时设置的)

---之前启动mysql容器的命令为:[root@localhost /]# docker run --name zoey-mysql -d -it -p 3666:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql(启动mysql容器)

docker启动mysql容器失败_第6张图片

docker启动mysql容器失败_第7张图片

如果第一次无法连接上mysql,则需要修改设置如下:


mysql> status;(查看mysql的版本)
mysql> grant all on *.* to 'root'@'%';(远程授权连接,注意mysql 8.0跟之前的授权方式不同)
mysql> flush privileges;(刷新权限)
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER;(更改加密规则)
mysql> ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';(更改root用户密码)
mysql> flush privileges;(刷新权限)

docker启动mysql容器失败_第8张图片

参考博客: https://www.jianshu.com/p/dbe1feb554cc

你可能感兴趣的:(docker,mysql,数据库)