随着Docker技术的日益成熟,它已经成为了一种快速、高效且可靠的部署应用的方式。特别是在服务器环境中,Docker可以帮助我们快速地构建、运行和管理应用程序。在这篇博客中,我们将详细介绍如何在CentOS 7上通过Docker安装MySQL 5.7。我们将从安装Docker开始,然后逐步引导你完成MySQL的安装、配置和使用。无论你是新手还是老手,我们都会用最简单的方式为你呈现这个过程。
在开始之前,请确保你的CentOS 7系统已经更新到最新版本,并且已经安装了必要的依赖项。
Docker 中文网址: https://www.dockerdocs.cn
Docker Hub官方网址:https://hub.docker.com
Docker Hub中MySQL介绍:https://hub.docker.com/_/mysql
docker pull mysql:5.7
先创建3个目录,创建MySQL容器时会挂载容器的卷(Volume),用于Docker和宿主机(Centos)之间文件共享,包括配置文件、数据文件和日志文件。
什么是卷(Volume)?命令 docker -v 中的“-v”就是这个卷,“-v”只是“--volume”的简写。
客官请留步,多少的看一下!!!
Docker官方文档解释卷的含义:https://docs.docker.com/storage/volumes/
使用 -p 创建多级目录,即 mydata 目录下创建 mysql 目录, mysql 目录下又创建 log 、data 、conf 三个目录:
mkdir -p /mydata/mysql/log
mkdir -p /mydata/mysql/data
mkdir -p /mydata/mysql/conf
?
docker pull mysql:5.7
?
?
3.创建容器
:使用自定义的 custom.cnf 配置文件。(1)在?/mydata/mysql/conf/
?目录下创建自定义的?custom.cnf
?配置文件。文件名随意,文件格式必须为 .cnf
?。
vim /mydata/mysql/conf/custom.cnf
(2)添加容器运行的配置参数。使用的是?utf8mb4
?编码而不是 utf8 编码。
[client]
default-character-set=utf8mb4
[mysql]
default-character-set=utf8mb4
[mysqld]
init_connect="SET collation_connection = utf8mb4_unicode_ci"
init_connect="SET NAMES utf8mb4"
character-set-server=utf8mb4
collation-server=utf8mb4_unicode_ci
skip-character-set-client-handshake
skip-name-resolve
?(3)创建容器并运行。
docker run --name mysql -v /mydata/mysql/log:/var/log/mysql -v /mydata/mysql/data:/var/lib/mysql -v /mydata/mysql/conf:/etc/mysql/conf.d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7
docker exec -it mysql bash
?
mysql -u root -p123456
?
切换到 mysql 数据库,并查看 user 表。
use mysql;
select user,host from user;
?
docker start mysql
或
docker start 容器ID
复制
docker stop mysql
或
docker stop 容器ID
复制
docker rm mysql
或
docker rm 容器ID
复制
docker restart mysql
或
docker restart 容器ID
复制
docker ps -a
复制
docker ps
?
?