Docker安装MySQL

1、拉取MySQL镜像

# 该命令拉取最新版本
docker pull mysql
# 如果指定版本按照如下方式,5.7修改为你要下载的版本即可
docker pull mysql:5.7

2、查看镜像是否拉取成功

我拉取的是最新版本

docker images

在这里插入图片描述

3、启动mysql

3.1、创建文件夹把mysql的文件夹映射出来

mkdir -p /Users/x/data/01software/docker/mysql/{data,conf,logs}

把/Users/x/data/01software/docker/mysql改成你的路径

3.2、在conf文件夹下,创建mysql的配置文件如下

说明:我这里就简单配置了,各位可以按照需求详细配置mysql

[mysqld]
character-set-server=utf8mb4
collation-server=utf8mb4_unicode_ci
port=3306
max_connections=200
general_log=1
slow_query_log=1
default-storage-engine=INNODB
default_authentication_plugin=mysql_native_password
bind-address=0.0.0.0

[client]
default-character-set=utf8mb4

[mysql]
default-character-set=utf8mb4

3.3、启动mysql

docker run -d -p 3306:3306 --name mysql --restart=always --privileged=true \
 -v /Users/x/data/01software/docker/mysql/data:/var/lib/mysql \
 -v /Users/x/data/01software/docker/mysql/conf/my.cnf:/etc/mysql/conf.d/my.cnf \
 -v /Users/x/data/01software/docker/mysql/logs:/var/log/mysql \
 -e MYSQL_ROOT_PASSWORD=123456 \
 mysql:latest

命令说明:

把/Users/x/data/01software/docker/mysql修改为你的路径
-p 3306:3306:指定宿主机端口与容器端口映射关系
--name mysql:创建的容器名称
--restart=always:总是跟随docker启动
--privileged=true:获取宿主机root权限
-v /Users/x/data/01software/docker/mysql/logs:/var/log/mysql:映射日志目录,宿主机:容器
-v /Users/x/data/01software/docker/mysql/data:/var/lib/mysql:映射数据目录,宿主机:容器
-v /Users/x/data/01software/docker/mysql/conf/my.cnf:/etc/mysql/conf.d/my.cnf :映射配置目录,宿主机:容器
-v /etc/localtime:/etc/localtime:ro :让容器的时钟与宿主机时钟同步,避免时区的问题,ro是read only的意思,就是只读。
-e MYSQL_ROOT_PASSWORD=123456:指定mysql环境变量,root用户的密码为123456
-d mysql:latest:后台运行mysql容器,版本是latest。

4、验证mysql运行状态

命令:

docker ps

4.1、启动失败日志排查

STATUS显示Restarting,说明是有问题的:
在这里插入图片描述
我们看一下日志:

docker logs -f mysql

在这里插入图片描述
修改一下我们创建的文件夹的权限:chmod 777 文件夹

再次查看,STATUS显示Up,说明启动成功:
在这里插入图片描述

同时可以到我们映射的文件夹下查看:
在这里插入图片描述

5、登录进入容器内的mysql查看

docker exec -it 3687a1d603b9 /bin/bash
mysql mysql -uroot -p

在这里插入图片描述

6、连接mysql

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值