CentOS 7 使用docker安装mysql5.7和mysql8.0
-
环境配置
-
操作系统 CentOS Linux release 7.9.2009 x64
-
当前没有安装mysql
-
-
开始操作之前,请先了解一下docker,理解镜像和容器的区别嗷~
-
首先安装docker
-
使用官方安装脚本,从阿里云安装
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
-
安装完成后查看版本
docker -v # Docker version 20.10.5, build 55c4c88
-
修改docker镜像源
vi /etc/docker/daemon.json # 加上如下内容,如果下载速度还是不快可以换阿里云docker加速源 { "registry-mirrors" : [ "https://docker.mirrors.ustc.edu.cn", "http://hub-mirror.c.163.com" ] }
-
启动docker服务
systemctl start docker
-
检查镜像源是否配置成功
docker info
输入docker info后找到最下面,看看上面的两个镜像是不是你配置的那两个?
-
docker拉取 mysql 5.7.33 和 mysql 8.0.23
docker pull mysql:5.7.33 # 这里可能需要一点时间,看网络情况,我只用了一分钟不到
docker pull mysql:8.0.23 # mysql:后面接版本号指定版本,简简单单~
-
查看已经拉取的镜像
docker images
-
docker启动mysql(镜像)
# 运行命令可以这样写 # docker run mysql:版本 # docker run 上图的IMAGE ID # 一些运行参数说明: # -d 后台运行 # --name 给运行的容器起个名字 # -p 映射宿主机(你当前操作的linux)端口和容器(docker)端口 # -e 设置环境变量,下面会使用这个设置数据库密码 # 好了我要启动了 docker run --name mysql_01 -d -e MYSQL_ROOT_PASSWORD=123456 -p 3306:3306 mysql:5.7.33 # 运行完成之后查看docker容器 docker ps -a
-
使用mysql 5.7.33
-
注意:我的mysql 5.7.33 安装在docker容器中,在我的linux中没有安装mysql,所以我没有客户端用来连接mysql服务,目前要使用的话有两种办法:
-
# 1.进入容器的命令交互行操作 ps:8480是上图中CONTAINER ID(容器ID)前四位 docker exec -it 8480 bash # 进入容器的命令交互行后和正常使用linux一样 mysql -u root -p # 搞定,但是使用完记得使用exit退出到你的linux的命令交互行
-
使用第三方工具比如navicat等进行连接,我这里用的是开源的heidisql
ps:大哥,这回是远程连接,一点要记得关防火墙,或者3306加入白名单
以下:
ip是你当前linux的ip,端口是上面运行容器时映射的 3306
账号是root,密码是运行容器时设置的环境变量MYSQL_ROOT_PASSWORD的值123456
-
-
-
停止mysql运行和再次使用
# 还记得查看docker容器的指令吗? docker ps -a # 记住你要操作的容器的CONTAINER ID # 停止容器 docker stop 8480 # 下次启动容器(记得要先systemctl start docker启动docker) docker start 8480
-
mysql8 的使用步骤同5.7,这里就不多介绍了,自己去尝试一下吧!
-
The end.
-