运维开发网

docker安装MySQL数据库

运维开发网 https://www.qedev.com 2020-07-05 09:48 出处:网络 作者:运维开发网整理
本文说明,刚上来使用MySQL高版本的,结果MySQL容器正常运行后,外部客户端连接不上,最后降低版本就OK 拉取MySQL数据库镜像 # docker pull daocloud.io/library/mysql:5.7.22 [[email protected] ~]# docker pull daocloud.io/library/mysql:5.7.22 Trying to pull r

本文说明,刚上来使用MySQL高版本的,结果MySQL容器正常运行后,外部客户端连接不上,最后降低版本就OK

拉取MySQL数据库镜像

# docker pull daocloud.io/library/mysql:5.7.22

[[email protected] ~]# docker pull daocloud.io/library/mysql:5.7.22
Trying to pull repository daocloud.io/library/mysql ...
5.7.22: Pulling from daocloud.io/library/mysql
be8881be8156: Pull complete
c3995dabd1d7: Pull complete
9931fdda3586: Pull complete
bb1b6b6eff6a: Pull complete
a65f125fa718: Pull complete
2d9f8dd09be2: Pull complete
37b912cb2afe: Pull complete
79592d21cb7f: Pull complete
00bfe968d82d: Pull complete
79cf546d4770: Pull complete
2b3c2e6bacee: Pull complete
Digest: sha256:e744510d4d03fddd1162651312afd1e591cf33b051c6f29ed64b9a3e64b97aa7
Status: Downloaded newer image for daocloud.io/library/mysql:5.7.22

 查看拉取的镜像文件

# docker images

[[email protected] ~]# docker images
REPOSITORY                  TAG                 IMAGE ID            CREATED             SIZE
daocloud.io/library/mysql   5.7.22              6bb891430fb6        9 months ago        372 MB

 

镜像重命名

# docker tag daocloud.io/library/mysql:5.7.22 mysql:5.7.22

删除原有镜像名

# docker rmi daocloud.io/library/mysql:5.7.22

[[email protected] ~]# docker rmi daocloud.io/library/mysql:5.7.22
Untagged: daocloud.io/library/mysql:5.7.22
Untagged: daocloud.io/library/[email protected]:e744510d4d03fddd1162651312afd1e591cf33b051c6f29ed64b9a3e64b97aa7

 

查看确认

# docker images

[[email protected] ~]# docker images
mysql               5.7.22              6bb891430fb6        9 months ago        372 MB

 

创建MySQL容器,并后台启动

# docker run --name djlmysql -e MYSQL_ROOT_PASSWORD=123456 -p 3307:3306 -d mysql:5.7.22

[[email protected] ~]# docker run --name djlmysql -e MYSQL_ROOT_PASSWORD=123456 -p 3307:3306 -d mysql:5.7.22
fa0c44b306c1b5038d39cbe5add1dc05a9f034d21dc1e62bb52487bc8b7ff04f
[[email protected] ~]# docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                    NAMES
fa0c44b306c1        mysql:5.7.22        "docker-entrypoint..."   22 seconds ago      Up 21 seconds       0.0.0.0:3307->3306/tcp   djlmysql

-e环境变量说明:

MYSQL_ROOT_PASSWORD

本变量必填,它指定了 MySQL root 的用户的密码

MYSQL_DATABASE

本变量可选,通过该变量当 MySQL 启动时会创建一个由你指定的数据库。如果你另外又提供了一对用户名和密码(见下方),那么他将会被授予本数据库的所有权限。

MYSQL_USERMYSQL_PASSWORD

这两个变量可选,同时使用的话会创建一个新用户并设置相应的密码,该用户会被授予由 MYSQL_DATABASE 变量指定的数据库的所有权限(见上方)。只有当同时提供了这两个变量时该用户才会被创建。

特别注意没有必要使用这个机制来创建 root 用户,root 用户的密码会被设置为 MYSQL_ROOT_PASSWORD 变量的值。

MYSQL_ALLOW_EMPTY_PASSWORD

本变量可选,当其被设置为 yes 时将会允许当前容器中的 root 用户能够使用空密码。注意:绝对不建议将该变量设置为 yes,除非你知道自己在做什么。如果这么做的话你的 MySQL 服务将会失去保护,所有人都可以以超级用户的身份访问该 MySQL 服务。

客户端外部连接

docker安装MySQL数据库

参考博客

https://blog.csdn.net/woniu211111/article/details/80968154

https://www.cnblogs.com/pwc1996/p/5425234.html

0

精彩评论

暂无评论...
验证码 换一张
取 消