在Docker上安装和运行MySQL步骤

本文章只有操作步骤,没有原理解释,只是在学习当中提醒自己安装步骤。

第一步:从远程仓库拉取MySQL镜像

1.从远程仓库搜索mysql镜像

docker search mysql

在这里插入图片描述

2.pull拉取镜像
这里我选择的是mysql的5.7版本

docker pull mysql:5.7

在这里插入图片描述

3.查看mysql镜像有没有安装好

docker images

在这里插入图片描述

第二步:创建前的持久化文件(中文字符编码)相关配置

1.在宿主机里(也就是linux系统里)创建my.cnf文件(为了解决中文乱码问题),我把文件放在了/mysql路径下,这里你可以自由选择

mkdir -p /mysql/conf

在这里插入图片描述

2.cd进入你刚创建的文件夹中,这里我是/mysql/conf

cd /mysql/conf

在这里插入图片描述

3.创建my.cnf文件

vim my.cnf

在这里插入图片描述

4.进入后按a键开始输入,输入一下内容,输入完后esc退出编辑模式,输入 :wq 保存退出

[client]
default_character_set=utf8
[mysqld]
collation_server = utf8_general_ci
character_set_server = utf8

5.查看my.cnf是否创建成功

cat my.cnf

在这里插入图片描述
一定要注意文件内容是否完整

第三步:正式创建并运行容器实例(使用容器卷保证容器实例被删后数据仍然存在)

1.创建容器实例使用命令如下

docker run -d -p 3306:3306 --privileged=true \
-v /mysql/log:/var/log/mysql \
-v /mysql/data:/var/lib/mysql \
-v /mysql/conf:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=123456 \
--name mysql1 mysql:5.7
  • -p后面是端口号;–privileged=true用容器卷时最好加上它;/mysql/log是宿主机的目录,包括/mysql/data和/mysql/conf都是,你可以自主选择;后面的/var/log/mysql、/var/lib/mysql和/etc/mysql/conf.d是mysql容器里的默认文件目录,用来存储数据等相关配置和文件;MYSQL_ROOT_PASSWORD一定要大写,后面的123456是密码,你可以自己选择;mysql1是我对本个容器起的名字;mysql:5.7是上面安装的mysql镜像的mysql和版本号。
    ================================================================
    这样就能实现mysql容器数据的持久化,即使容器被删除,之前数据库里的数据仍然还在宿主机你设置的那几个文件夹里

注意:/mysql/conf一定要是你上一步在宿主机里创建my.cnf文件的目录
在这里插入图片描述

2.查看容器是否创建并运行成功

docker ps

在这里插入图片描述
这里我起的容器名字为mysql1

第四步:进入mysql1容器查看数据库

1.输入命令进入容器

docker exec -it mysql1 /bin/bash

在这里插入图片描述
这里的mysql1是上步起的容器的名字

2.输入mysql的账号和密码进入mysql控制窗口,

mysql -uroot -p

在这里插入图片描述

3.最后在容器mysql里查看前面的中文utf8编码配置成功没

show variables like 'character%';

在这里插入图片描述
可以看到都为utf8,配置生效,这样就成功安装了mysql容器实例

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐