前言:本文基于docker安装MySQL,如果还没安装docker的童鞋,点击这里(超大声)安装卸载老版本docker(超详细)

一、在docker仓库搜你想要的镜像版本

docker镜像仓库
打开官网,在搜索框中输入MySQL回车
打开官网,在搜索框中输入MySQL回车,然后再在下面的输入框中输入你想要下载的版本。
在这里插入图片描述
复制页面右边的镜像拉取命令 如 docker pull mysql:8.0.20 下载Mysql镜像

命令解释
docker pull mysql:latest拉取最新的MySQL镜像
docker pull mysql:version拉取版本号为XXX的mysql镜像

二、使用docker安装MySQL

在这里插入图片描述
键入命令 docker images 查看是否下载成功,一般都会成功,如果失败了,再pull一次就是的了
接下来就创建并启动容器

 docker run \
 -d \
 -p 3306:3306 \
 -v /usr/local/mysql/conf:/etc/mysql/conf.d \
 -v /usr/local/mysql/data:/var/lib/mysql \
 -e MYSQL_ROOT_PASSWORD=admin1222 \
 --name mysql mysql:8.0.20

释义:

命令解释
docker run创建并启动一个容器
-d设置后台运行
-p 3306:3306映射端口(宿主机端口:容器端口
-v /usr/local/mysql/conf/my.cnf:/etc/mysql/my.cnf将配置文件夹挂载到主机
-v /usr/local/mysql/data:/var/lib/mysql将mysql储存文件夹挂载到主机(这也就是我们常说的datadir)
–name mysql将容器取名为mysql
-e MYSQL_ROOT_PASSWORD=admin1222设置密码
mysql:8.0.20指定以哪个镜像创建容器

看我干什么?夹菜呀!不能喝去小孩子那一桌!!! 就这么赶赶单单!

三、docker删除MySQL(可选)

在这里插入图片描述

一、查看容器,复制容器id 即container id
docker ps -a
二、停止容器
docker stop 你的容器id
三、删除容器
docker rm 容器id
四、查看镜像,复制镜像id即images id
docker images
五。删除镜像(镜像可删可不删影响不大)
docker rmi 镜像id

四、迁移数据库

其实我一直都有一个疑问,与其说疑问倒不如说没有干过这事,那就是企业直接安装在Linux上的MySQL迁移到docker管理是怎样操作的?保证数据安全且用户无感?又是怎样将docker迁移到K8s管理的???
今天看docker官网的时候看到的,不管这么多先摘抄

1、创建数据库转储

docker exec some-mysql sh -c 'exec mysqldump --all-databases -uroot -p"$MYSQL_ROOT_PASSWORD"' > /some/path/on/your/host/all-databases.sql

2、从转储文件恢复数据

docker exec -i some-mysql sh -c 'exec mysql -uroot -p"$MYSQL_ROOT_PASSWORD"' < /some/path/on/your/host/all-databases.sql

花自飘零水自流,一种相思,两处闲愁。此情无计可消除,才下眉头,却上心头。

Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐