欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

docker安装 mysql8.0.21

程序员文章站 2022-05-01 18:17:13
...

教程官网

                 https://hub.docker.com/_/mysql

教程

在docker hub仓库里拉取最新版mysql镜像

[aaa@qq.com mysql]# systemctl start docker        //启动docker-server
[aaa@qq.com ~]# docker pull mysql     //拉取镜像

                   docker安装 mysql8.0.21

运行mysql镜像为容器     

[aaa@qq.com conf.d]# docker run --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root -v /root/mysql/conf.d:/etc/mysql/conf.d -v /rodata:/var/lib/mysql -d mysql  

[aaa@qq.com conf.d]# docker ps   //查看正在运行的容器

注意

     为什么要在容器运行时设置Mysql 的root用户的密码?

           因为在centos上安装一个mysql软件包的时候,会让设置root用户的密码,所以,此时已经下载了mysql的软件环境,在运行镜像后,就相当于安装成功了mysql,所以要在开始运行镜像前设置root的密码,否则在运行完容器后,容器显示不能正常运行

      为什么要把docker容器中的目录自定义配置【把docker容器中访问的目录映射到宿主机centos外边】和把docker容器中的mysql保存的数据映射到宿主机外边?

       避免因为把docker容器删了,docker中目录下的相关配置和docker中mysql实例运行的数据都被删除,为了保证数据安全,即使docker容器删了,数据依然存在

--name :给要运行的docker容器实例起的名称
-p:  docker容器实例中的端口映射到外部端口【供外部访问】3306:3306【第一个3306为外部访问端口,第二个为docker容器中的mysql环境端口】
-e:  修改mysql的root用户的密码
-v:  把docker容器中mysql实例的/etc/mysql/conf.d映射到外部/root/mysql/conf.d目录下,当运行docker容器实例的时候,此目录就直接访问宿主机的/root/mysql/conf.d目录下的文件
-v:  把docker容器中的额mysql实例中的数据映射到外部/root/data目录下,对宿主机/root/data目录下数据的修改就是对docker容器中mysql运行实例产生的数据修改
-d: 以守护进程方式运行此容器


注:/var/lib/mysql是docker容器中的mysql实例运行产生的数据的目录

docker安装 mysql8.0.21

          进入docker中mysql实例内

[aaa@qq.com mysql]# docker exec -it mysql bash         //进入到docker容器中mysql实例的伪终端【xshell窗口】
aaa@qq.com:/# mysql -u root -p           //输入mysql实例root的用户名和密码【进入之后,就可以像正常的进入一个Mysql数据库进行操作了】

               docker安装 mysql8.0.21

                  docker安装 mysql8.0.21 

         退出mysql

mysql> exit    //退出mysql
aaa@qq.com:/# eixt      //退出docker容器中的伪xshell窗口,相当于另外一个可以输入linux命令的端口

navicat连接docker容器中的mysql

           在连接之前先把防火墙关了或者把对应的外部端口开发

          因为是下载的最新的mysql8.0版本以后的,所以在用navicat连接mysql的时候,会出现密码caching_sha2_password cannot be loaded:可查看这篇文章:https://blog.csdn.net/dsl59741/article/details/107891415

           docker安装 mysql8.0.21

   spring boot连接mysql

          配置文件【其操作和基本的连接mysql的操作相同】

docker安装 mysql8.0.21

相关标签: docker