Docker | docker安装MySQL

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云数据库 RDS MySQL,高可用系列 2核4GB
简介: Docker | docker安装MySQL

006064f9e39642bfa9ac07788a04d7a4.png

一、前言


大家好!这篇文章主要讲解 如何在Centos7中安装Docker以及Docker安装MySQL:5.7.42

✨本篇文章已收录于 初心大数据 专栏,欢迎大家订阅获取第一资讯✨。


事情是这样的:最近在学习大数据领域的 Hive (基于Hadoop的一个数据仓库工具),希望将数据从RDBMS(关系型数据库)导入到 Hive 中,于是以MySQL为例进行,下面演示如何在 docker 中安装MySQL。


二、安装Docker镜像


事情是这样的:最近在学习大数据领域的 Hive (基于Hadoop的一个数据仓库工具),希望将数据从RDBMS(关系型数据库)导入到 Hive 中,于是以MySQL为例进行,下面演示如何在 docker 中安装MySQL。


二、安装Docker镜像



2580d2f303a04dcda99a1f95161fae19.png


Docker作为一个软件集装箱化平台,可以让开发者构建应用程序时,将它与其依赖环境一起打包到一个容器中,然后很容易地发布和应用到任意平台中。


随着云原生、容器化、微服务、k8s 等技术的发展,容器 Docker 也火了一把,同时也逐渐被软件开发者在实践中进行运用。


对于大多数开发者来说,Docker 之所以被广泛使用,最主要的原因可能就是方便,它提供了一套标准化的解决方案,极大地提升了部署、发布、运维的效率。


docker官网给出的定义是:Develop faster. Run anywhere.翻译过来就是开发更快,随处运行,点击去往docker官网。这里介绍docker镜像查询网站:查询docker镜像,比如说我们想要 mysql 镜像,就可以在里面搜索MySQL,可以看到 docker 安装的命令。


3df2ccf3aa1a47d89a79c1ac1c11d6a0.png

2.2 为什么安装docker


在 docker 上安装的软件,我们很容易的将它和它的运行环境打包起来,放在另外一个环境中运行。


这里安装 docker 主要是通过 docker 安装MySQL,以前博主也发布过一篇文章:Linux安装MySQL——Linux安装MySQL(Ubuntu版),那是正常在Linux下安装MySQL的教程,这次我们采用 docker 容器方式安装。


2.3 安装docker


这里我使用的Linux系统是 Centos7-mini 版本,如果不是这个版本的安装方式会不同,需要自己去搜索安装教程

  • 1.卸载旧版本的 docker


sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine


  • 2.安装所需的软件包
sudo yum install -y yum-utils \
  device-mapper-persistent-data \
  lvm2


  • 3.设置 docker 的稳定仓库(这里使用阿里云仓库)
sudo yum-config-manager \
    --add-repo \
    http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo


  • 4.安装 Docker Engine-Community
sudo yum install docker-ce docker-ce-cli containerd.io docker-compose-plugin

Docker 安装完默认未启动。并且已经创建好 docker 用户组,但该用户组下没有用户。

  • 5.启动 docker 并测试是否安装成功
sudo systemctl start docker

使用 hello world 小例子来测试是否安装成功:

sudo docker run hello-world
  • 6.卸载 docker (这里是方法,不是要真的卸载了)

删除 docker 安装包:

sudo yum remove docker-ce


删除所有的镜像、容器和配置文件:

sudo rm -rf /var/lib/docker


三、Docker安装MySQL


3.1 常用docker命令


掌握常用的 docker 命令是必要的,因为我们要使用这个工具,就要懂如何通过它的命令达到自己想要的效果。更多相关命令,可以参考docker命令大全


  • 启动docker
sudo systemctl start docker
  • 关闭docker
sudo systemctl stop docker


e68ea4cd417c4117876ff2be9640261c.png


  • 拉取镜像

这个可以在docker镜像网站看到拉取命令。

sudo docker pull 镜像名:版本号


  • 创建容器
sudo docker run -it --name 容器名 镜像名:版本号 /bin/bash
  • 启动容器
sudo docker start 容器id
  • 停止容器
sudo docker stop 容器id


  • 查看所有容器
sudo docker ps -a


3.2 docker安装MySQL


根据上面的 docker 介绍,我们通过 docker 安装MySQL。

  • 1.打开 docker 并拉取MySQL镜像
sudo systemctl start docker

执行以下命令安装mysql:5.7.42:

sudo docker pull mysql:5.7.42
  • 2.创建MySQL的 conf 目录和 data 目录
mkdir -p /opt/module/mysql/conf /opt/module/mysql/data
  • 3.编写MySQL的配置文件 my.cnf

mysql配置文件如下,其中 datadir 目录的值就是刚才创建的 data 目录,其他的不用改,然后将这个配置文件放在刚才创建的 conf 目录下。

[client]
default-character-set = utf8mb4
[mysqld]
datadir = /opt/module/mysql/data
character_set_server = utf8mb4
collation_server = utf8mb4_bin
secure-file-priv= NULL
symbolic-links=0
!includedir /etc/mysql/conf.d/


d28b9ebdb4334cac9b10d68ea3a56e65.png


  • 4.利用镜像创建容器

在这行命令中,mysql_hadoop102是我指定的容器名,-v参数后/opt/module/mysql/conf/my.cnf是MySQL配置文件存放的目录,,/etc/mysql/my.cnf是容器内部映射的目录,同理,data目录也是对应data目录和容器内部目录,3307:3306表示主机端口和容器端口的映射,root是登录账号,sky 是mysql的password。

docker run --restart=unless-stopped -d --name mysql_hadoop102 -v /opt/module/mysql/conf/my.cnf:/etc/mysql/my.cnf -v /opt/module/mysql/data:/var/lib/mysql -p 3307:3306 -e MYSQL_ROOT_PASSWORD=sky mysql:5.7.42

在执行完这行命令后,mysql_hadoop102容器就创建好了,并且容器是启动状态!容器只需要创建一次,以后使用都是开启即可。也就是说一个容器只需要执行一次 run 命令,之后都是执行 start 。

  • 5.启动MySQL


查看MySQL容器id:

sudo docker ps -a

bcf1507ba1e945c7b67780d7f0b56ea5.png

平时启动MySQL,执行如下命令:

sudo docker start 85a041875a9e(容器id)


进入到容器内部使用MySQL:

sudo docker exec -it mysql_hadoop102 /bin/bash


登录到MySQL数据库,输入密码回车即可:

mysql -uroot -p



70512fb418a0425595e9e92d109f47fa.png

  • 6.Navicat连接测试

填写好主机名和用户名、密码等信息,进行连接测试,连接成功!


daa6f943b30146aeaf5dcbb5e42a578d.png




至此,我们使用 Docker 安装MySQL就成功了!不知道大家明白了没有呢?如果对于某个步骤有疑问,欢迎大家在评论区给我留言,大家一起交流探讨。


四、结语


坚持做一件事真的很酷,收获也会让你惊喜。


以上就是 Docker 安装MySQL的详细教程与步骤,希望能帮助到大家。💕

✨ 本文由初心原创,首发于CSDN博客, 博客主页:主页

🍻 理想主义的花,终究会盛开在浪漫主义的土壤里!💕

🍻 如果你喜欢的话,记得点赞收藏关注,我在CSDN等你!💕

相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
25天前
|
关系型数据库 MySQL Docker
docker pull mysql:8.0.26提示Error response from daemon: Get “https://registry-1.docker.io/v2/“: EOF错误
docker pull mysql:8.0.26提示Error response from daemon: Get “https://registry-1.docker.io/v2/“: EOF错误
|
20天前
|
存储 关系型数据库 MySQL
美团面试:MySQL为什么 不用 Docker部署?
45岁老架构师尼恩在读者交流群中分享了关于“MySQL为什么不推荐使用Docker部署”的深入分析。通过系统化的梳理,尼恩帮助读者理解为何大型MySQL数据库通常不使用Docker部署,主要涉及性能、管理复杂度和稳定性等方面的考量。文章详细解释了有状态容器的特点、Docker的资源隔离问题以及磁盘IO性能损耗,并提供了小型MySQL使用Docker的最佳实践。此外,尼恩还介绍了Share Nothing架构的优势及其应用场景,强调了配置管理和数据持久化的挑战。最后,尼恩建议读者参考《尼恩Java面试宝典PDF》以提升技术能力,更好地应对面试中的难题。
|
11天前
|
关系型数据库 MySQL 数据库
Docker Compose V2 安装常用数据库MySQL+Mongo
以上内容涵盖了使用 Docker Compose 安装和管理 MySQL 和 MongoDB 的详细步骤,希望对您有所帮助。
82 42
|
12天前
|
关系型数据库 MySQL 数据库
Docker下Mysql8数据备份与恢复
通过以上步骤,您可以在Docker环境下高效地备份和恢复MySQL 8数据库。备份数据时,使用 `mysqldump`工具生成逻辑备份文件,并存储到指定目录;恢复数据时,使用 `mysql`工具从备份文件中读取数据并恢复到数据库。自动化脚本和定时任务的配置可以进一步简化备份和恢复的管理过程。
72 41
|
4天前
|
监控 Linux PHP
【02】客户端服务端C语言-go语言-web端PHP语言整合内容发布-优雅草网络设备监控系统-2月12日优雅草简化Centos stream8安装zabbix7教程-本搭建教程非docker搭建教程-优雅草solution
【02】客户端服务端C语言-go语言-web端PHP语言整合内容发布-优雅草网络设备监控系统-2月12日优雅草简化Centos stream8安装zabbix7教程-本搭建教程非docker搭建教程-优雅草solution
52 20
|
15天前
|
Linux Docker 容器
安装docker-18.06报错Error: libseccomp conflicts with docker-18.06
通过这些步骤,您可以成功在CentOS上安装Docker 18.06,并解决libseccomp的冲突问题。这些方法确保系统兼容性,并保证Docker的正常运行。
52 27
|
5天前
|
Ubuntu API 网络虚拟化
ubuntu22 编译安装docker,和docker容器方式安装 deepseek
本脚本适用于Ubuntu 22.04,主要功能包括编译安装Docker和安装DeepSeek模型。首先通过Apt源配置安装Docker,确保网络稳定(建议使用VPN)。接着下载并配置Docker二进制文件,创建Docker用户组并设置守护进程。随后拉取Debian 12镜像,安装系统必备工具,配置Ollama模型管理器,并最终部署和运行DeepSeek模型,提供API接口进行交互测试。
94 15
|
3天前
|
消息中间件 Kafka Docker
docker compose 安装 kafka
通过本文的步骤,您可以快速在本地使用 Docker Compose 安装并配置 Kafka 和 Zookeeper。Docker Compose 简化了多容器应用的管理,方便快速搭建和测试分布式系统。
26 2
|
24天前
|
关系型数据库 MySQL 数据库连接
数据库连接工具连接mysql提示:“Host ‘172.23.0.1‘ is not allowed to connect to this MySQL server“
docker-compose部署mysql8服务后,连接时提示不允许连接问题解决