在Centos7中:通过Docker安装MySQL5.7(保姆级)
前言
随着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
四.感谢支持
?
?
?
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!