使用yum源安装docker
yum install -y epel-release
yum install docker-io # 安装docker
# 配置文件 /etc/sysconfig/docker
chkconfig docker on # 加入开机启动
service docker start # 启动docker服务
# 基本信息查看
docker version # 查看docker的版本号,包括客户端、服务端、依赖的Go等
docker info # 查看系统(docker)层面信息,包括管理的images, containers数等
docker 部署mysql 测试
1.下载mysql镜像(我使用的是阿里云yum源)
docker pull mysql
2.查看镜像
docker images
3.创建并启动一个mysql容器
docker run --name pwc-mysql -e MYSQL_ROOT_PASSWORD=123456 -p 3306:3306 -d mysql
- –name:给新创建的容器命名,此处命名为
pwc-mysql
- -e:配置信息,此处配置
mysql
的root用户
的登陆密码 - -p:端口映射,此处映射
主机3306端口
到容器pwc-mysql的3306端口
- -d:成功启动容器后输出容器的完整ID,例如上图
73f8811f669ee...
- 最后一个
mysql
指的是mysql镜像名字
4.关闭防火墙或开放3306端口
systemctl stop firewalld
5.使用navicat连接mysql
错误信息:1251-Client does not support authentication protocol requested by server;
原因:MySQL8的新特性,MySQL8默认使用 caching_sha2_password 身份验证机制。旧客户端不支持这种验证,当然就无法登入了。
所以解决办法也很简单,只需要我们在服务器上用旧的认证机制(mysql_native_password)设置密码就可以了。旧模式不是MySQL8默认模式,所以需要在创建用户或者修改密码时,明确指定为mysql_native_password模式。
ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER;
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密码';
FLUSH PRIVILEGES;