基于docker安装Mysql
在Centos服务器上基于Docker快速安装MySQL。
基于Docker安装Mysql
前言:
如你所见,本篇内容主要为记录在Centos下基于Docker快速安装Mysql。
准备:
系统环境为Centos7,默认已安装好Docker,如您尚未安装请参考下方命令从上到下依次执行。
sudo yum update -y
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
sudo yum install -y docker-ce docker-ce-cli containerd.io
sudo systemctl start docker
sudo systemctl enable docker
docker --version
安装:
1)运行以下命令执行安装Mysql,如你想安装指令版本使用把后面的latest修正为对应版本后即可。
# 安装最新版本的mysql
docker pull mysql:latest
# 列出所有可被安装的Mysql版本
docker search mysql
注意:如果你是国内服务器,在安装时遇到如下问题,就是请求超时了,可尝试如下解决方案,如果没有遇到请忽略。
解决方法:请参考此文章 -> 点我
# 超时报错提示
net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers)推荐:以上办法都没能解决,那就使用终极方法,只需三步便可轻松解决。(实测有效)
第一步从网盘下载Mysql资源:网盘地址点我
第二步:登录服务器,进入到你想进的文件夹下,把下载好的资源传进去。
第三步:运行以下命令把资源载入到docker去。
docker load -i mysql.tar2)查看容器镜像,并创建mysql。
# 查看是否安装成功
docker images
# 运行后得到如下输出,如果第二行没有mysql则代表失败,失败请参考上面的解决方法
REPOSITORY TAG IMAGE ID CREATED SIZE
mysql latest xxx xxx xx MB
# 创建Mysql并运行,其中mysql-contente为容器名称可自定义,123456为mysql的登录密码请自定义.
docker run --name mysql-contenter -e MYSQL_ROOT_PASSWORD=123456 -d -p 3306:3306 mysql:latest
# 查看是否创建成功,运行完后会输出类似第二步一样的结果,有输出则代表成功。
docker ps3)开放端口,远侧链接测试。
打开你服务器的控制台,比如你是在腾讯云上的就去腾讯云,是阿里云的就登录阿里云,登录后找到控制台,在找到你的服务器,点进去找到防火墙,新增一个规则开放3306端口,用于远程登录使用,一定要开放3306端口,不然你将无法远程登录。

使用navicat等工具进行测试,能访问测代表成功,在主机处填入服务器的公网IP,用户名为root,密码就是在第二步时设置的密码,填完后点击左下方的测试,提示链接成功,就代表远程访问也通了。

