docker 运行MySQL8.0.13 的记录
说明:自己看了一些资料,然后“抄袭”一下别人的语句,有些语句自己还是不懂,但是大概能知道有什么作用。不过这篇博客记录的是 从docker 安装到能从navicat 正常连接数据库。
0. 所使用到的版本信息
所运行的服务器是: Description: CentOS Linux release 7.3.1611 (Core)所运用的docker 版本是:docker-ce的版本 Version: 18.06.1-cemysql docker 的版本 8.0.13版本(本次使用到的标签是latest)
1. docker 的安装以及镜像加速器
从Docker CE 镜像源站 中选择第一种的进行下载的。配置镜像加速器:我这是从aliyun 中的【容器镜像服务】-【镜像加速器】中的centos 配置学习到了(当然是一步一步的“抄袭”过来的),将镜像加速器配置成aliyun 的。
2. docker配置mysql信息
从dockerhub 中查找你需要的mysql 版本拉取mysql镜像
docker pull mysql
这样直接下载最新的mysql 镜像
拉取成功后,利用Dockerfile进行生成有关于自己配置的mysql镜像。 写DockerFile文件 DockerFile文件内容:
写build.sh脚本文件 其实也就是build的命令(郑重声明:一边抄袭一边理解的),这样方便修改脚本文件,然后调用。 build.sh内容:
docker build -t mysql-test:v1.0.0 -f /usr/local/docker/mysql/DockerFile
.
-t : 为了生成镜像,然后打上tag(标签,也就是:后面的v1.0.0) -f: 指向DockerFile文件 也需要后面. 然后被指向的DockerFile可以不一定是这样的命名。例如MySqlDockerFile等。只要用-f指向他就好。
运行build.sh脚本后的成果:
写执行脚本run.sh 其实就是docker run 命令。内容如下:
3. mysql 里面内容的配置
由于自己使用的是aliyun 服务器的,即使服务器内部已经开好了端口(如下图),但是还是要在阿里云里面进行开端口(自己百度的) 当用低版本的navicat连接的时候出现如图的画面: 这时回到mysql 容器中查看信息: 上面两条语句如下:
mysql
> select host
,user,plugin
,authentication_string
from mysql
.user;
mysql
> ALTER USER 'root'@'
%' IDENTIFIED WITH mysql_native_password BY 'rootroot'
;
查看成果:
整个过程也查(抄袭)了一些资料,也就是下面的url,希望这些url对大家有用。有怪莫怪! 参考的url: https://yq.aliyun.com/articles/110806?spm=5176.8351553.0.0.3a0c1991ioF3fV https://blog.csdn.net/alinyua/article/details/80944543 http://www.louisvv.com/archives/1716.html https://blog.csdn.net/u012943521/article/details/82735377 https://jingyan.baidu.com/album/046a7b3e9cecfaf9c37fa96b.html?picindex=6 https://blog.csdn.net/changsimeng/article/details/82454214 https://blog.csdn.net/zmx729618/article/details/72930474/