Docker 安装mysql8.0
1、拉镜像
docker pull mysql:8.0
可能存在的问题,拉取镜像卡住
将docker镜像源修改为(国内)阿里云的镜像地址: 在 /etc/docker/daemon.json 文件中添加以下参数(没有该文件则新建:touch ): 先进入根目录/:cd / 在进入/etc/docker/ :cd/etc/docker 创建文件daemon.json: touch daemon.json vim touch daemon.json a 复制代码 粘贴后 :wq保存就行了 { "registry-mirrors": ["https://9cpn8tt6.mirror.aliyuncs.com"] } 服务重启: 复制代码 systemctl daemon-reload ---重启守护线程 systemctl restart docker ---重启docker
查看是否下载镜像成功:docker images
2、运行mysql容器
docker run --name mysql -e MYSQL_ROOT_PASSWORD=123456 -p 3306:3306 -d mysql:8.0
查看是否运行
docker ps
3、连接mysql
可能存在的问题:
Mysql 远程连接出现 Client does not support authentication protocol requested by server
连接错误图:
解决方案:其中,mysqlserver 为容器名 我们的项目中应该是:mysql
docker exec -it mysql /bin/bash
mysql -uroot -p
GRANT ALL ON *.* TO 'root'@'%';
flush privileges;
ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER;
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';
flush privileges;
再次连接可连接成功
4、设置开机启动
docker update --restart=always 容器id