Docker 快速安装&搭建 Mysql 环境

Docker 快速安装&搭建 Mysql 环境

一、下载 Mysql 镜像

这里以 Mysql 5.7 为例:

docker pull mysql:5.7
下载完成后,通过 docker images 检查一下镜像是否下载成功:
在这里插入图片描述

验证本地是否下载好Mysql 5.7镜像

二、先以最简单方式启动

先以简单的方式启动:

docker run -d
–name mysql
-p 3306:3306
-e MYSQL_ROOT_PASSWORD=123456
mysql:5.7

-d:以后台的方式运行;
–name mysql:指定容器的名称为 mysql;
-p 3306:3306 将容器的 3306 端口挂载到宿主机的 3306 端口上;
-e MYSQL_ROOT_PASSWORD=123456:指定 root 的密码为 123456
命令执行完成后,你也可以通过 docker ps命令来确认下容器是否启动成功。若成功,我们需要将容器中的目录文件复制到宿主机中,分别包括:
mysql 配置文件;
数据存储目录,以便挂载(PS: 若不挂载到宿主机,每次启动容器数据都会丢失)

#将容器中的 mysql 配置文件复制到宿主机中指定路径下,路径你可以根据需要,自行修改
docker cp mysql:/etc/mysql/mysql.conf.d/mysqld.cnf /usr/local/docker/mysql/config

将容器中的 mysql 存储目录复制到宿主机中
docker cp mysql:/var/lib/mysql/ /usr/local/docker/mysql/data
完成这一切后,让我们将刚刚运行的容器删除掉。

docker rm -f mysql
PS: mysql 是我们运行容器时,指定的名称,当然,你也可以先执行 docker ps, 通过容器 ID 来删除。

三、正式运行 Mysql 容器

接下来,正式运行 Mysql 容器:

docker run -d
–name mysql
-p 3306:3306
-v /usr/local/docker/mysql/config/mysqld.cnf:/etc/mysql/mysql.conf.d/mysqld.cnf
-v /usr/local/docker/mysql/data/mysql:/var/lib/mysql
-e MYSQL_ROOT_PASSWORD=123456
mysql:5.7
其他不变,额外添加了两个挂载子命令:

-v /usr/local/docker/mysql/config/mysqld.cnf:/etc/mysql/mysql.conf.d/mysqld.cnf: 将容器中 /etc/mysql/mysql.conf.d/mysqld.cnf 配置文件挂载到宿主机的 /usr/local/docker/mysql/config/mysqld.cnf 文件上;

-v /usr/local/docker/mysql/data:/var/lib/mysql: 将容器中 /var/lib/mysql 数据目录挂载到宿主机的 /usr/local/docker/mysql/data 目录下;
执行命令完成后,查看下容器是否启动:

查看mysql容器是否启动成功

可以看到,容器运行成功

四、通过 Mysql 客户端连接一下试试

通过 MySQL 客户端连接刚刚创建的 mysql, 看看能否连接成功

五、相关问题

5.1 时区不对问题
在向数据库插入数据时,总是发现时间比系统时间少 8 个小时,这是因为 Mysql 的时区并不是我们想要的东八区。

解决方案:我们可以在上面说到的,挂载到宿主机的 Mysql 配置文件 mysqld.cnf 中,添加如下参数:

default-time-zone = ‘+08:00’
添加改配置后,重启 MySQL 容器, 再插入数据,就发现时间正常了:

docker restart your_mysql_container_name

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值