在Centos7中:通过Docker安装MySQL5.7(保姆级)

2024-01-07 18:20:07

前言

随着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

切换到“Tags”页面,复制指定的MySQL版本拉取命令,例如 :docker pull mysql:5.7

准备

先创建3个目录,创建MySQL容器时会挂载容器的卷(Volume),用于Docker和宿主机(Centos)之间文件共享,包括配置文件、数据文件和日志文件。

什么是卷(Volume)?命令 docker -v 中的“-v”就是这个卷,“-v”只是“--volume”的简写。

客官请留步,多少的看一下!!!

Docker官方文档解释卷的含义:https://docs.docker.com/storage/volumes/

二.正式安装?

1.安装MySQL的多级安装目录

使用 -p 创建多级目录,即 mydata 目录下创建 mysql 目录, mysql 目录下又创建 log 、data 、conf 三个目录:

mkdir -p /mydata/mysql/log
mkdir -p /mydata/mysql/data
mkdir -p /mydata/mysql/conf

?

2.拉取MySQL5.7镜像。

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

4.进入容器

docker exec -it mysql bash

?

mysql -u root -p123456

?

切换到 mysql 数据库,并查看 user 表。

use mysql;
select user,host from user;

?

5.远程连接

?

三.容器的基本操作

启动容器

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

四.感谢支持

?

?

?

文章来源:https://blog.csdn.net/lz17267861157/article/details/135384872
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。