Docker安装mysql详细教程

该文介绍了如何使用Docker安装MySQL5.7,包括拉取镜像、运行容器、设置端口映射、数据和配置文件挂载、设置root密码、容器自启动以及修改配置文件为utf8编码的过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


安装步骤

此次安装命令皆是以管理员身份运行

1.拉取Mysql镜像

## 拉取版本为5.7的mysql
docker pull mysql:5.7

2.运行mysql

2.1、启动命令

docker run -p 3306:3306 --name mysql \
-v /mydata/mysql/log:/var/log/mysql \
-v /mydata/mysql/data:/var/lib/mysql \
-v /mydata/mysql/conf:/etc/mysql \
-e MYSQL_ROOT_PASSWORD=root \
--restart=always \
-d mysql:5.7

2.2、命令解读

-p 3306:3306 :指定了mysql的端口是3306
–name mysql :启动的容器名称是mysql
-v :挂载文件目录特殊命令符,此处将mysql这个镜像中的三个内部目录进行外部挂载,/var/log/mysql、/var/lib/mysql和/etc/mysql是启动的mysql容器中日志、数据以及配置三个文件目录,将其挂载到外部路径下以达到不需要进入容器内部即可进行相关操作
-e MYSQL_ROOT_PASSWORD :指定数据库连接密码是 root ,默认的账号也是 root
–restart=always :将mysql设置为docker启动时自启,可要可不要
-d :指定步骤一拉取的镜像名称以及版本

2.3、查看容器状态

①查看启动日志:docker logs mysql
②查看目前运行容器:docker ps
③启动失败时查看容器状态:docker ps -a

3.修改配置文件

①找到mysql的配置文件
方法1:进入容器内部( docker exec -it mysql /bin/bash )找到 /etc/mysql 目录下的 my.cnf 配置文件
方法2:在 /mydata/mysql/conf 目录下找到 my.cnf 配置文件,此方法需要将容器文件进行相对应的挂载
②找到配置文件后进行修改编码格式为utf8,也可以根据需要改成utf8mb4格式

[client]
default-character-set=utf8

[mysql]
default-character-set=utf8

[mysqld]
init_connect='SET collation_connection = utf8_unicode_ci'
init_connect='SET NAMES utf8'
character-set-server=utf8
collation-server=utf8_unicode_ci
skip-character-set-client-handshake

③重启mysql

docker restart mysql
Docker 是一种容器化平台,可以让你无需依赖特定的硬件和软件配置即可运行应用程序。通过使用 Docker 安装 MySQL,可以快速构建 MySQL 环境,并且能够在不同的开发和测试环境中复用。以下是使用 Docker 安装 MySQL 的基本步骤: 1. **安装 Docker:** 首先确保你的系统已经安装DockerDocker 安装方法因操作系统而异,例如在 Ubuntu 上可以通过以下命令安装 Docker: ```bash sudo apt-get update sudo apt-get install docker-ce docker-ce-cli containerd.io ``` 2. **拉取 MySQL 镜像:** 你可以从 Docker Hub 上获取官方的 MySQL 镜像。使用以下命令拉取最新版本的 MySQL 镜像: ```bash docker pull mysql ``` 如果你想要拉取特定版本的 MySQL,可以在镜像名称后指定版本号,例如: ```bash docker pull mysql:5.7 ``` 3. **运行 MySQL 容器:** 使用 `docker run` 命令启动 MySQL 容器。你需要指定一些参数,如密码、端口映射等。以下是一个启动 MySQL 容器的基本示例: ```bash docker run --name some-mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql ``` 在这个命令中: - `--name some-mysql` 指定容器的名称。 - `-e MYSQL_ROOT_PASSWORD=my-secret-pw` 设置环境变量,为 root 用户设置密码。 - `-d` 表示在后台运行容器。 - `mysql` 是要启动的镜像名称。 你也可以通过 `docker run` 命令进行端口映射,使容器内的服务能够从宿主机访问。例如,将容器的 3306 端口映射到宿主机的 3306 端口: ```bash docker run --name some-mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -p 3306:3306 -d mysql ``` 4. **验证 MySQL 容器状态:** 可以使用以下命令查看所有运行中的容器: ```bash docker ps ``` 如果 MySQL 容器运行正常,你将看到它列在运行中的容器列表中。 5. **连接到 MySQL 容器:** 现在你可以使用 MySQL 客户端工具(如命令行、phpMyAdmin、Navicat 等)连接到 MySQL 容器。连接时,使用容器的 IP 地址(或 `localhost` 如果映射到宿主机),端口 `3306` 和 root 用户及之前设置的密码。 请注意,生产环境中使用 Docker 安装 MySQL 时,还需要考虑数据持久化、安全性和网络配置等高级设置。以下是一些相关问题:
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Jz_Stu

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值