Docker学习笔记之--安装mysql 并持久化数据到本地,最后使用Navicat连接测试(环境:centos7)

在docker中 安装 mysql 8.0版本,参考文档:https://www.runoob.com/docker/docker-install-mysql.html

第一步:安装

docker pull mysql:8.0

创建容器,并链接到网桥 test_network,如何创建网桥,参考:Docker学习笔记之--.Net Core项目容器连接mssql容器(环境:centos7)

docker run -d --name=mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=Aa123456 --network=test_network mysql:8.0

解释:

MYSQL_ROOT_PASSWORD=Aa123456   表示给登录账户 root 设置密码为  Aa123456

3306:3306 表示对外链接端口

进入容器,验证是否安装成功

docker exec -it mysql bash

 

执行下边命令查看安装信息,执行命令 exit 可以退出容器!

mysql -u root -p

第二步:持久化

所为持久化就是在本地创建一个数据卷,然后将数据卷挂载到mysql容器即可!

创建数据卷:

docker volume create mysqldata

查看数据卷列表:

docker volume ls

获取数据卷存储位置:

docker inspect mysqldata

如上图所示,新创建的数据卷在目录  /var/lib/docker/volumes/mysqldata/_data 下,也就是说mysql产生的数据会同步到该目录下!

接下来,删除之前的mysql容器,重新创建新的容器,同时挂载数据卷

docker run -d --name=mysql -p 3306:3306 
-v /var/lib/docker/volumes/mysqldata/_data:/var/lib/mysql 
-e MYSQL_ROOT_PASSWORD=Aa123456 --network=test_network 
mysql:8.0

创建一个数据库:MyTest

通过Xftp工具查看数据卷目录内容,可以快速查看刚才创建的数据库和表

最后使用 Navicat链接 mysql

参考文档:

https://www.cnblogs.com/cheyunhua/p/13433400.html

https://yeasy.gitbook.io/docker_practice/data_management/volume

原文地址:https://www.cnblogs.com/peterzhang123/p/13915117.html