返回顶部
首页 > 资讯 > 数据库 >Docker中怎么运行MySQL
  • 822
分享到

Docker中怎么运行MySQL

2024-04-02 19:04:59 822人浏览 安东尼
摘要

这篇文章将为大家详细讲解有关 Docker中怎么运行Mysql,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。数据安全问题不要将数据储存在容器中,这也是 Do

这篇文章将为大家详细讲解有关 Docker中怎么运行Mysql,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

数据安全问题

不要将数据储存在容器中,这也是 Docker  官方容器使用技巧中的一条。容器随时可以停止、或者删除。当容器被rm掉,容器里的数据将会丢失。为了避免数据丢失,用户可以使用数据卷挂载来存储数据。但是容器的  Volumes 设计是围绕 UNIOn FS  镜像层提供持久存储,数据安全缺乏保证。如果容器突然崩溃,数据库未正常关闭,可能会损坏数据。另外,容器里共享数据卷组,对物理机硬件损伤也比较大。

Docker中怎么运行MySQL

性能问题

大家都知道,mysql 属于关系型数据库,对io要求较高。当一台物理机跑多个时,IO就会累加,导致IO瓶颈,大大降低 Mysql 的读写性能。

在一次Docker应用的十大难点专场上,某国有银行的一位架构师也曾提出过:“数据库的性能瓶颈一般出现在IO上面,如果按 Docker  的思路,那么多个docker最终IO请求又会出现在存储上面。现在互联网的数据库多是share nothing的架构,可能这也是不考虑迁移到 Docker  的一个因素吧”。

Docker中怎么运行MySQL

其实也有相对应的一些策略来解决这个问题,比如:

(1)数据库程序与数据分离

如果使用Docker 跑 MySQL,数据库程序与数据需要进行分离,将数据存放到共享存储,程序放到容器里。如果容器有异常或 MySQL  服务异常,自动启动一个全新的容器。另外,建议不要把数据存放到宿主机里,宿主机和容器共享卷组,对宿主机损坏的影响比较大。

(2)跑轻量级或分布式数据库

Docker 里部署轻量级或分布式数据库,Docker 本身就推荐服务挂掉,自动启动新容器,而不是继续重启容器服务。

(3)合理布局应用

对于IO要求比较高的应用或者服务,将数据库部署在物理机或者KVM中比较合适。目前腾讯云的TDSQL和阿里的Oceanbase都是直接部署在物理机器,而非Docker  。

状态问题

在 Docker 中水平伸缩只能用于无状态计算服务,而不是数据库。

Docker 快速扩展的一个重要特征就是无状态,具有数据状态的都不适合直接放在 Docker 里面,如果 Docker  中安装数据库,存储服务需要单独提供。

目前,腾讯云的TDSQL(金融分布式数据库)和阿里云的Oceanbase(分布式数据库系统)都直接运行中在物理机器上,并非使用便于管理的 Docker  上。

Docker中怎么运行MySQL

资源隔离方面

资源隔离方面,Docker  确实不如虚拟机KVM,Docker是利用Cgroup实现资源限制的,只能限制资源消耗的***值,而不能隔绝其他程序占用自己的资源。如果其他应用过渡占用物理机资源,将会影响容器里  MySQL 的读写效率。

需要的隔离级别越多,获得的资源开销就越多。 相比专用环境而言,容易水平伸缩是Docker的一大优势。 然而在 Docker  中水平伸缩只能用于无状态计算服务,数据库并不适用。

Docker中怎么运行MySQL

难道 MySQL 不能跑在容器里吗?

MySQL 也不是全然不能容器化。

  • 对数据丢失不敏感的业务(例如用户搜索商品)就可以数据化,利用数据库分片来来增加实例数,从而增加吞吐量。

  • docker适合跑轻量级或分布式数据库,当docker服务挂掉,会自动启动新容器,而不是继续重启容器服务。

  • 数据库利用中间件和容器化系统能够自动伸缩、容灾、切换、自带多个节点,也是可以进行容器化的。

关于 Docker中怎么运行MySQL就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

您可能感兴趣的文档:

--结束END--

本文标题: Docker中怎么运行MySQL

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

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

猜你喜欢
  • Docker中怎么运行MySQL
    这篇文章将为大家详细讲解有关 Docker中怎么运行MySQL,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。数据安全问题不要将数据储存在容器中,这也是 Do...
    99+
    2024-04-02
  • docker中怎么安装并运行mysql
    本篇文章给大家分享的是有关docker中怎么安装并运行mysql,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。  1.获取mysql镜像  从...
    99+
    2024-04-02
  • docker运行mysql
    以mysql:5.7镜像为例 linux根目录下创建/docker/mysql文件夹,然后分别创建conf和data文件夹存放配置和数据 # 启动容器,初始化root密码 docker run -d -p 3306:3306 -e MYS...
    99+
    2021-02-28
    docker运行mysql 数据库入门 数据库基础教程 数据库 mysql
  • 怎么在docker中运行docker swarm模式
    这篇文章将为大家详细讲解有关怎么在docker中运行docker swarm模式,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。安装docker使用yum安装更新yum源,sudo yum u...
    99+
    2023-06-07
  • 怎么在Fedora 32中运行Docker
    本篇文章给大家分享的是有关怎么在Fedora 32中运行Docker,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。步骤 1:系统准备在 Fedora 的最后两个版本中,操作系统...
    99+
    2023-06-07
  • docker中如何运行mysql容器
    要在Docker中运行MySQL容器,可以按照以下步骤操作: 拉取MySQL镜像: docker pull mysql 运行...
    99+
    2024-04-02
  • 如何在 Docker 容器中运行 MySQL
    本指南逐步解释了如何在几分钟内设置在 Docker 容器中运行的新 MySQL 服务器。 Docker 的一大优点是您可以快速使用它来试用应用程序,而无需直接在您的机器上安装它。您可以使用 Docker 在容器中运行数据库,就像它是远程服务...
    99+
    2023-09-17
    python php 开发语言
  • docker运行mysql容器报错怎么解决
    如果在Docker中运行MySQL容器时遇到问题,可以尝试以下几种方法来解决: 确保主机上没有其他进程占用MySQL默认端口(3...
    99+
    2024-04-09
    docker mysql
  • docker运行mysql的方法是什么
    要在Docker中运行MySQL,首先需要安装Docker并启动Docker引擎。然后可以通过以下步骤在Docker中运行MySQL...
    99+
    2024-04-09
    docker mysql
  • docker怎么停止运行中的容器
    要停止运行中的Docker容器,可以使用以下命令:1. 查看正在运行的容器列表:```docker ps```2. 停止指定的容器:...
    99+
    2023-10-09
    docker
  • docker怎么运行windows镜像
    要在Docker中运行Windows镜像,需要确保已经安装了Docker Desktop for Windows,并且在Docker...
    99+
    2023-09-18
    windows docker
  • docker怎么运行ubuntu镜像
    要在Docker中运行Ubuntu镜像,您可以按照以下步骤操作:1. 首先,确保您已经安装了Docker。可以在终端中运行以下命令来...
    99+
    2023-08-23
    docker ubuntu
  • 使用Docker容器运行Mysql
    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 使用Docker容器运行Mysql 前言一、基础的虚拟机环境二、安装过程安装配置docker拉取Mysql镜像用docker启动mysql命令的使用和参数具体解...
    99+
    2023-08-16
    编辑器 docker mysql 运维 容器
  • 怎么在docker中运行指定的内存
    怎么在docker中运行指定的内存?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。如下:-m,--memory     &nbs...
    99+
    2023-06-14
  • 怎么在Docker中运行Jupyter/Spark/Mesos服务
    本篇内容介绍了“怎么在Docker中运行Jupyter/Spark/Mesos服务”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!在Docke...
    99+
    2023-06-19
  • Docker中优化Mysql运行内存的操作
    使用docker stats查询运行内存,从这里可以看到,我的mysql一共用了400mb内存。经过下面操作可以优化为只占用100mb内存。 1、进入容器 docker exec ...
    99+
    2024-04-02
  • Docker中安装运行rabbitMQ
    1拉取rabbitmq镜像 docker pull rabbitmq # 默认使用 rabbitmq最新版 1.2、启动容器实例  docker run -d --name rabbitmq -p15672:15672 -p5672:56...
    99+
    2023-10-03
    java-rabbitmq rabbitmq docker 中间件
  • 怎么查看docker是否运行
    可以使用以下命令来查看 Docker 是否运行:1. 使用 `docker info` 命令来获取 Docker 的详细信息。如果 ...
    99+
    2023-09-23
    docker
  • ubuntu环境下怎么运行docker
    这篇文章主要介绍“ubuntu环境下怎么运行docker”,在日常操作中,相信很多人在ubuntu环境下怎么运行docker问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”ubuntu环境下怎么运行docker...
    99+
    2023-07-04
  • docker怎么指定运行用户
    在Docker中,可以使用`USER`指令来指定容器中运行的用户。 在Dockerfile中,可以使用以下格式指定运行用户: USE...
    99+
    2023-10-27
    docker
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作