iis服务器助手广告广告
返回顶部
首页 > 资讯 > 数据库 >如何在 Docker 容器中运行 MySQL
  • 472
分享到

如何在 Docker 容器中运行 MySQL

pythonphp开发语言 2023-09-17 14:09:16 472人浏览 八月长安
摘要

本指南逐步解释了如何在几分钟内设置在 Docker 容器中运行的新 MySQL 服务器。 Docker 的一大优点是您可以快速使用它来试用应用程序,而无需直接在您的机器上安装它。您可以使用 Docker 在容器中运行数据库,就像它是远程服务

本指南逐步解释了如何在几分钟内设置在 Docker 容器中运行的新 MySQL 服务器。

Docker 的一大优点是您可以快速使用它来试用应用程序,而无需直接在您的机器上安装它。您可以使用 Docker容器中运行数据库,就像它是远程服务器一样,并测试您的应用程序如何与其交互。

使用 Docker 容器运行 Mysql 是一种广泛使用的机制。事实上,mysql 是与 Docker 容器一起使用的最流行的数据库之一。

要将 Mysql 创建为 Docker 容器,主机应安装 Docker。如果你没有安装它,这里有一个如何在 Ubuntu 上安装 Docker 的分步指南。

0. 配置镜像地址

修改daemon配置文件/etc/docker/daemon.JSON来使用加速器

{
"reGIStry-mirrors": [ "https://docker.mirrors.ustc.edu.cn" ]
}
重启docker和deamon

sudo systemctl daemon-reload
sudo systemctl restart docker
 

1. 拉取 MySQL Docker 镜像

要在 Docker 中创建和测试 MySQL 服务器,您要做的第一件事是从Docker Hub拉取 MySQL 官方镜像 。

Docker Hub 上的 MySQL

您可以下载特定版本,例如 8.0、5.7、5.6,或选择最新版本,如以下命令所示:

docker pull mysql:latest

如果您需要特定版本的 MySQL,请替换 latest 为版本号。

您可以运行该docker images 命令来查看从 Docker Hub 中提取的 Docker 镜像列表。

docker images
输出

REPOSITORY TAG IMAGE ID CREATED SIZE mysql latest 2fe463762680 13 hours aGo 514MB

如您所见,MySQL 映像现在可用于我们本地安装的 Docker。

2. 设置 Docker 卷

如您所知,Docker 容器原则上是短暂的,如果容器被删除,任何数据或配置都可能会丢失。然而,Docker 卷提供了一种机制来保存在 Docker 容器内创建的数据。它们是 Docker 用于存储 Docker 容器持久数据的首选机制。

默认情况下,MySQL 将其数据文件存储在该 /var/lib/mysql 目录中。因此,在部署之前,您需要设置一个 Docker 卷来持久化您的数据库。否则,当容器重新启动时,您的数据将丢失。

让我们创建一个新卷并将其命名为mysql-data。这将用于存储您的所有数据库信息。

docker volume create mysql-data

您可以通过发出以下命令列出 Docker 已知的所有卷:

docker volume ls
输出

DRIVER VOLUME NAME local mysql-data

如您所见,我们新创建的名为 Docker 的卷mysql-data在这里并准备好提供数据。然后可以将其附加到新创建的 MySQL 容器。

3. 运行一个 MySQL Docker 容器

现在您的机器上有 MySQL Docker 映像和一个用于保存数据的卷,您可以部署一个容器。您还必须使用MYSQL_ROOT_PASSWord环境变量为 MySQL root 用户设置密码。

现在,让我们运行容器:

docker run -d --name=mysql-server -p 3306:3306 -v mysql-data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=your_password mysql

就是这样。这将启动最新版本的 MySQL 实例,可以使用指定的 root 密码从任何地方远程访问它。 

为了让事情更清楚,让我们分解这个语法。以下是该命令中每个参数的含义:

  • -d 将以分离模式运行此容器,以便它在后台运行。
  • --name 将名称分配mysql-server给您的容器实例。如果不指定此项,Docker 将生成一个随机名称。
  • -p 将 MySQL 容器端口绑定3306到主机上的相同端口。您将能够 使用在您的主机上运行的MySQL 客户端 ( )连接到 127.0.0.1端口。3306mysql
  • -v 选项将容器卷 ( /var/lib/mysql)内的数据文件夹绑定到mysql-data您在上一步中创建的本地 Docker 卷 ( )。
  • -e 设置环境变量。在这种情况下,MySQL 根密码。
  • mysql 是我们用来创建容器的图像的名称。

您可以通过列出正在运行的容器来检查容器是否正在运行:

docker ps
输出

CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 0fc229e3df77 mysql "docker-entrypoint.s…" 37 minutes ago Up 34 minutes 0.0.0.0:3306->3306/tcp, :::3306->3306/tcp, 33060/tcp mysql-server

相关:MySQL:如何使用 mysqldump 备份(转储)和恢复数据库

4. 连接到 MySQL 容器

您可以通过附加到容器并运行mysql命令来获得交互式 MySQL shell 。这提供了完整的 MySQL 命令行界面,因此您可以使用所有熟悉的命令和标志。

docker exec -it mysql-server mysql -u root -p

附加到 MySQL Docker 容器

相关:如何使用命令行在 MySQL 中创建数据库

mysql 如果您的主机上预安装了它,您还可以使用客户端连接 MySQL Docker 实例 。

请注意,默认情况下,当您告诉 mysql 客户端连接到 localhost. 所以一定要使用 127.0.0.1 而不是 localhost

mysql -u root -h 127.0.0.1 -p

当然,您也可以使用基于 GUI 的客户端(例如 MySQL Workbench)来连接数据库。在 MySQL Workbench 中为“Hostname”指定启动 Docker 容器的机器的 IP 地址。

  • MySQL 工作台

  • MySQL 工作台

相关:如何使用 MySQL Workbench 在 MySQL 中创建数据库

当然,在上面显示的主机名示例中,您可以使用 MySQL docker 容器所在机器的 IP 地址而不是127.0.0.1您可以通过运行ifconfig不带任何参数的命令来找到该地址

使用机器的 IP 地址可以让您远程访问 MySQL 服务器。

5. 停止、启动和重启 MySQL 容器

此命令将暂时停止正在运行的 MySQL 容器(并且可以稍后恢复/重新启动):

docker stop mysql-server

要 启动MySQL 容器,请运行:

docker start mysql-server

下面的命令用于重启正在运行的 MySQL 容器:

docker restart mysql-server

结论

如您所见,在 Docker 中运行 MySQL 比在本地安装 MySQL Server 更快、更容易。如果您打算在 Docker 上使用 MySQL 进行测试以外的任何事情,还有很多事情需要考虑。有关更多信息,您可以查看Docker Hub 上的 MySQL 页面和有关该主题的官方 MySQL 手册

来源地址:https://blog.csdn.net/allway2/article/details/121583352

您可能感兴趣的文档:

--结束END--

本文标题: 如何在 Docker 容器中运行 MySQL

本文链接: https://www.lsjlt.com/news/411122.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 如何在 Docker 容器中运行 MySQL
    本指南逐步解释了如何在几分钟内设置在 Docker 容器中运行的新 MySQL 服务器。 Docker 的一大优点是您可以快速使用它来试用应用程序,而无需直接在您的机器上安装它。您可以使用 Docker 在容器中运行数据库,就像它是远程服务...
    99+
    2023-09-17
    python php 开发语言
  • 使用Docker容器运行Mysql
    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 使用Docker容器运行Mysql 前言一、基础的虚拟机环境二、安装过程安装配置docker拉取Mysql镜像用docker启动mysql命令的使用和参数具体解...
    99+
    2023-08-16
    编辑器 docker mysql 运维 容器
  • Docker如何创建运行多个mysql容器
    这篇文章主要介绍“Docker如何创建运行多个mysql容器”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Docker如何创建运行多个mysql容器”文章能帮助大家...
    99+
    2022-10-19
  • 在DOCKER容器中运行MySQL服务的操作方法
    下面讲讲关于在DOCKER容器中运行MySQL服务的操作方法,文字的奥妙在于贴近主题相关。所以,闲话就不谈了,我们直接看下文吧,相信看完在DOCKER容器中运行MySQL服务的操作方法这篇文章你一定会有所受...
    99+
    2022-10-18
  • 在Docker上安装和运行MySQL容器(纯步骤)
    在Docker上安装和运行MySQL步骤 本文章只有操作步骤,没有原理解释,只是在学习当中提醒自己安装步骤。 第一步:从远程仓库拉取MySQL镜像 从远程仓库搜索mysql镜像 docker s...
    99+
    2023-09-03
    mysql docker linux
  • 向正在运行的docker mysql容器中 导入sql文件
    当需要将 SQL 文件导入正在运行的 Docker MySQL 容器时,可以按照以下步骤操作。 步骤 1:复制 SQL 文件到容器中 首先,使用 docker cp 命令将 SQL 文件从本地主机复制...
    99+
    2023-10-20
    docker mysql sql
  • 在docker上如何安装运行mysql
    这篇文章主要讲解了“在docker上如何安装运行mysql”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“在docker上如何安装运行mysql”吧!ps:实...
    99+
    2022-10-19
  • 在 Docker 容器中运行 PHPMyAdmin的详细步骤
    目录基本用法预设服务器使用 MySQL Docker 容器使用 Docker Compose 简化部署配置安装概括 PHPMyAdmin是 MySQL 和 MariaDB 数据库的流...
    99+
    2022-11-13
  • docker如何查看未运行的容器
    要查看未运行的容器,可以使用以下命令:1. 使用`docker ps -a`命令列出所有的容器,包括运行中和停止的容器。```she...
    99+
    2023-10-09
    docker
  • docker如何查看运行容器日志
    这篇文章主要讲解了“docker如何查看运行容器日志”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“docker如何查看运行容器日志”吧!1. 查看运行着的容器docker ps&n...
    99+
    2023-07-05
  • 如何在Docker中运行K3s
    本篇文章给大家分享的是有关如何在Docker中运行K3s,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。什么是k3d?k3d是一个小型程序,用于在Docker中运行K3s集群。 ...
    99+
    2023-06-15
  • 怎么在CentOS或Fedora上运行Docker容器
    这篇文章主要讲解了“怎么在CentOS或Fedora上运行Docker容器”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么在CentOS或Fedora上运行Docker容器”吧!最近 Do...
    99+
    2023-06-10
  • docker怎么停止运行中的容器
    要停止运行中的Docker容器,可以使用以下命令:1. 查看正在运行的容器列表:```docker ps```2. 停止指定的容器:...
    99+
    2023-10-09
    docker
  • 如何在Linux容器中运行PHP?
    Linux容器是一种轻量级的虚拟化技术,它可以让开发者在同一台主机上运行多个独立的应用程序,从而提高了系统的利用率和可扩展性。而PHP作为一种流行的Web开发语言,也可以很容易地在Linux容器中运行。本文将介绍如何在Linux容器中运行P...
    99+
    2023-07-25
    linux linux 容器
  • Python如何在Spring容器中运行?
    Spring是一个非常流行的Java应用框架,提供了许多有用的功能和工具,用于开发Web应用程序和企业级应用程序。Python是一种面向对象的编程语言,拥有强大的库和框架,用于开发各种类型的应用程序。Python与Spring集成可以帮助...
    99+
    2023-10-15
    shell spring 容器
  • Python 容器:如何在 shell 中运行?
    Python 是一种高级编程语言,拥有强大的容器类型。这些容器类型可以用来存储和组织数据,包括列表、元组、集合和字典。在本文中,我们将探讨如何在 shell 中使用 Python 容器。 在 shell 中使用 Python 容器非常简单...
    99+
    2023-07-02
    容器 http shell
  • 教你如何从正在运行的容器创建 Docker 映像
    Docker 容器通常是缺乏内部状态的临时应用程序实例。这是处理它们的最佳实践方法,可让您随时停止或重新启动容器。 但有时对容器文件系统的修改是不可避免的。也许您正在试用软件并希望...
    99+
    2022-11-13
  • 如何使用 Docker 容器运行 Python 文件 IDE?
    Docker 是一个用于开发、部署和运行应用程序的开源平台。它允许开发人员在容器中运行应用程序,从而使应用程序更加可移植、可靠和易于管理。在本文中,我们将探讨如何使用 Docker 容器运行 Python 文件 IDE。 一、安装 Doc...
    99+
    2023-08-25
    文件 ide 容器
  • docker如何查看容器启动命令(已运行的容器)
    目录通过docker ps命令通过docker inspect命令总结eg: docker ps 查看正在运行的容器: 通过docker ps命令 该命令主要是为了详细展示查看运行...
    99+
    2023-02-22
    查看docker容器的启动命令 docker容器启动 docker启动容器命令
  • 如何在docker中运行mariadb程序
    这篇文章主要介绍如何在docker中运行mariadb程序,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!安装docker获取mariadb镜像docker pull mariadb首先在https://hub.doc...
    99+
    2023-06-07
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作