目录
快速完成
详细步骤 
首先搜索镜像
拉取镜像
创建容器(运行镜像)
进入容器
本地使用连接工具连接
修改字符集
使用容器数据卷挂载mysql数据、配置文件、日志
创建mysql的配置文件
首页 数据库 mysql教程 docker安装mysql的方法是什么

docker安装mysql的方法是什么

May 28, 2023 pm 09:37 PM
mysql docker

快速完成

直接复制粘贴跟着做即可快速完成,可以不用查看详细步骤

docker pull mysql:5.7
登录后复制
登录后复制
docker run -d -p 3306:3306 --privileged=true -v /usr/local/mysql/log:/var/log/mysql -v /usr/local/mysql/data:/var/lib/mysql -v /usr/local/mysql/conf:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=123456 --name mysql mysql:5.7
登录后复制
登录后复制
cd /usr/local/mysql/conf
登录后复制
vim my.cnf
登录后复制

粘贴下面内容并保存

[client]
default_character_set=utf8
[mysqld]
collation_server=utf8_general_ci
character_set_server=utf8
登录后复制
docker restart mysql
登录后复制

使用工具测试(记得要打开端口),root用户密码为123456

详细步骤

首先搜索镜像

docker search mysql
登录后复制

docker安装mysql的方法是什么

拉取镜像

搜索出来的第一个就行,不指定版本就获取最新版,我这里用5.7

docker pull mysql:5.7
登录后复制
登录后复制

docker安装mysql的方法是什么

创建容器(运行镜像)

内外都使用3306端口(确保你的宿主机3306端口没有被占用,比如你的宿主机也装了mysql),并指定root用户密码为123456

docker run -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d --name mysql mysql:5.7
登录后复制

docker安装mysql的方法是什么

进入容器

在容器内部连接mysql,创建一个数据库,测试mysql是否正常使用

docker exec -it mysql /bin/bash
登录后复制

docker安装mysql的方法是什么

创建一个表,并插入数据,也都是ok的

docker安装mysql的方法是什么

本地使用连接工具连接

在本地使用Navicat工具连接,并插入记录、查询也都是没有问题的

docker安装mysql的方法是什么

但是,在插入中文的时候报错了

docker安装mysql的方法是什么

修改字符集

中文报错肯定是字符集问题了,在容器中查看字符集(客户端工具会把部分字符集处理成本地字符集),可以看到大部分都不是utf8

show variables like 'character%';
登录后复制

docker安装mysql的方法是什么

现在mysql的配置文件还是在容器里面,并没有映射到宿主机,修改起来不是很方便,并且也不安全,容器删除就没有了

此时就需要用到容器数据卷了,不了解的可以查看上篇博文:点这里

使用容器数据卷挂载mysql数据、配置文件、日志

把上面那个容器删了,重新创建一个容器,这次命令如下

docker run -d -p 3306:3306 --privileged=true -v /usr/local/mysql/log:/var/log/mysql -v /usr/local/mysql/data:/var/lib/mysql -v /usr/local/mysql/conf:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=123456 --name mysql mysql:5.7
登录后复制
登录后复制

挂载三个目录,分别是日志、数据、配置文件

创建mysql的配置文件

上面已经挂载了mysql的配置文件目录,就可以直接在宿主机操作对应的目录了

在配置文件目录新建一个my.cnf配置文件,写入下面内容,设置客户端和mysql服务器端编码都为utf8

[client]default_character_set=utf8[mysqld]collation_server=utf8_general_cicharacter_set_server=utf8
登录后复制

docker安装mysql的方法是什么

 改完配置文件后,重启mysql容器,再次进入容器查看字符集,可以看到已经全部正确

docker安装mysql的方法是什么

再次创建库表,插入中文测试,成功插入

docker安装mysql的方法是什么

并且mysql的数据目录也已经挂载到本地了,就算把容器删除创新创建一个容器,也使用同样的数据卷,就可以恢复之前创建的库表。

以上是docker安装mysql的方法是什么的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

docker怎么更新镜像 docker怎么更新镜像 Apr 15, 2025 pm 12:03 PM

更新 Docker 镜像的步骤如下:拉取最新镜像标记新镜像为特定标签删除旧镜像(可选)重新启动容器(如果需要)

docker内的文件怎么拷贝到外面 docker内的文件怎么拷贝到外面 Apr 15, 2025 pm 12:12 PM

Docker 中将文件拷贝到外部主机的方法:使用 docker cp 命令:执行 docker cp [选项] <容器路径> <主机路径>。使用数据卷:在主机上创建目录,在创建容器时使用 -v 参数挂载该目录到容器内,实现文件双向同步。

docker怎么退出容器 docker怎么退出容器 Apr 15, 2025 pm 12:15 PM

退出 Docker 容器的四种方法:容器终端中使用 Ctrl D 快捷键容器终端中输入 exit 命令宿主机终端中使用 docker stop <container_name> 命令宿主机终端中使用 docker kill <container_name> 命令(强制退出)

docker怎么重启 docker怎么重启 Apr 15, 2025 pm 12:06 PM

重启 Docker 容器的方法:获取容器 ID(docker ps);停止容器(docker stop <container_id>);启动容器(docker start <container_id>);验证重启成功(docker ps)。其他方法:Docker Compose(docker-compose restart)或 Docker API(参考 Docker 文档)。

docker desktop怎么用 docker desktop怎么用 Apr 15, 2025 am 11:45 AM

如何使用 Docker Desktop?Docker Desktop 是一款工具,用于在本地机器上运行 Docker 容器。其使用步骤包括:1. 安装 Docker Desktop;2. 启动 Docker Desktop;3. 创建 Docker 镜像(使用 Dockerfile);4. 构建 Docker 镜像(使用 docker build);5. 运行 Docker 容器(使用 docker run)。

docker容器名称怎么查 docker容器名称怎么查 Apr 15, 2025 pm 12:21 PM

可以通过以下步骤查询 Docker 容器名称:列出所有容器(docker ps)。筛选容器列表(使用 grep 命令)。获取容器名称(位于 "NAMES" 列中)。

怎么看docker进程 怎么看docker进程 Apr 15, 2025 am 11:48 AM

Docker 进程查看方法:1. Docker CLI 命令:docker ps;2. Systemd CLI 命令:systemctl status docker;3. Docker Compose CLI 命令:docker-compose ps;4. Process Explorer(Windows);5. /proc 目录(Linux)。

docker怎么启动mysql docker怎么启动mysql Apr 15, 2025 pm 12:09 PM

在 Docker 中启动 MySQL 的过程包含以下步骤:拉取 MySQL 镜像创建并启动容器,设置根用户密码并映射端口验证连接创建数据库和用户授予对数据库的所有权限

See all articles