MySQL Docker镜像安装(CentOS7版)

男娘i 2023-07-16 09:59 63阅读 0赞

前置条件:安装Docker(可参考)

1.Pull Mysql镜像:

去Docker Hub官网找需要的MySQL版本,本文以5.7.29版本为例

  1. docker pull mysql:5.7.29
  2. [root@lee000 ~]# docker pull mysql:5.7.29
  3. 5.7.29: Pulling from library/mysql
  4. 68ced04f60ab: Pull complete
  5. f9748e016a5c: Pull complete
  6. da54b038fed1: Pull complete
  7. 6895ec5eb2c0: Pull complete
  8. 111ba0647b87: Pull complete
  9. c1dce60f2f1a: Pull complete
  10. 702ec598d0af: Pull complete
  11. 63cca87a5d4d: Pull complete
  12. ec05b7b1c5c7: Pull complete
  13. 834b1d9f49b0: Pull complete
  14. 8ded6a30c87c: Pull complete
  15. Digest: sha256:f4a5f5be3d94b4f4d3aef00fbc276ce7c08e62f2e1f28867d930deb73a314c58
  16. Status: Downloaded newer image for mysql:5.7.29
  17. docker.io/library/mysql:5.7.29

pull速度慢可参考:https://blog.csdn.net/yuxielea/article/details/104930177

如果不指定版本号,则将pull最新mysql镜像

2.Run Mysql镜像:

  1. docker run --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 --restart=always --privileged=true -d mysql:5.7.29 --default-time_zone='+8:00'

--name:指定容器名字
-p:指定容器暴露的端口
-e:指定容器中环境变量
-d:前台或后台运行,默认为false,后台运行
default-time_zone : 时区加8小时,因为默认的UTC时间和我国的CST时间相差8小时(可以通过timedatectl命令查看)

查看镜像启动情况:

  1. docker ps -a

3.客户端连接使用

镜像启动后客户端正常连接即可。但实际操作中可能有连接不上的情况,一般是以下几种原因造成(参考):

3.1 授权

MySQL默认只对本机开放连接,当需要别的主机连接数据库时则需要赋予其它主机访问数据库的权限。
开放远程连接给所有主机("%"表示所有,”123456”为我设置的MySQL密码,需自行替换):

1)进入docker镜像bash:

  1. docker exec -it mysql bash

2)登录mysql:

  1. mysql -uroot -p123456

3)修改root权限:
MySQL5.X:

  1. grant all privileges on *.* to 'root'@'%' identified by '123456' with grant option;

MySQL8.X:

  1. alter user 'root'@'%' identified with mysql_native_password by '123456';

修改完后可以到mysql数据库中的user表查看是否执行成功:select host, user, plugin from user;

4)更改完后刷新权限:

  1. flush privileges;

3.2 关闭防火墙或者开放MySQL端口

发表评论

表情:
评论列表 (有 0 条评论,63人围观)

还没有评论,来说两句吧...

相关阅读