Docker部署Mysql8.0
1.拉取镜像
docker pull mysql:[版本号]
当前安装mysql8.0,执行docker pull mysql:8.0
2.查看镜像
docker images
3.复制目录
这里由于8.0和5.6配置文件目录有所不同,可能会发生
通过docker logs命令查看,是由于缺少/etc/mysql/conf.d目录,启动失败.需要先查看目录结构,再做判断.
此处不绑定端口,只用于查看文件目录,和拷贝配置,也不会后续创建的容器发生端口冲突:
docker run -d -e MYSQL_ROOT_PASSWORD=123456 --name mysql8.0_test mysql:8.0
进入容器中,查看对应/etc/下的mysql配置文件:
docker exec -it mysql8.0_test /bin/bash
此处可以看到存在my.cnf,my.cnf.d,mysql.
此处可以推断,挂载时保留目录conf.d
4.mysql8.0启动镜像
docker run -d -p 3306:3306 -v [本地目录]:[容器目录] -e MYSQL_ROOT_PASSWORD=[设置密码] --name [设置容器名] mysql:[拉取的镜像版本号]
docker run -d -p 3306:3306 -v /root/docker_mount/mysql_8.0/node_01/conf:/etc/mysql/conf.d -v /root/docker_mount/mysql_8.0/node_01/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 --name mysql8.0_node01 mysql:8.0
5.查看是否启动
docker ps
6.mysql8.0进入容器内设置远程连接
docker exec -it [容器名] /bin/bash
1.进入容器内
docker exec -it mysql8.0_node01 /bin/bash
2.登录mysql
mysql -u root -p, 此时提示输入密码,输入密码即可进入
3.开启远程连接
use mysql;
select Host,User from user;
此时查看到存在Host允许为任意ip访问root用户。文章来源:https://www.toymoban.com/news/detail-837590.html
如果没有则需要以下命令赋予权限:
GRANT ALL PRIVILEGES ON . TO ‘root’@‘%’ IDENTIFIED BY ‘password’ WITH GRANT OPTION;
FLUSH PRIVILEGES;文章来源地址https://www.toymoban.com/news/detail-837590.html
到了这里,关于docker安装Mysql8.0的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!