Docker安装MySQL

2023-10-26

签名:但行好事,莫问前程。


前言

记录Docker安装MySQL的过程。

容器数据卷:我们知道Docker通过镜像创建了容器,当容器运行起来会产生数据。拿MySQL为例,MySQL容器运行会存储数据,数据会储存在容器中,当我们删除容器,容器中保存的数据也会被删除,这样数据并不安全。
我们可以使用容器数据卷技术,将MySQL容器存储的数据挂载在宿主机的目录下,这样即使我们不小心删除MySQL容器,但是MySQL的数据在宿主机上还有备份,这样会比较安全。


一、查看镜像

1、进入官网查看MySQL镜像:https://hub.docker.com/_/mysql

在这里插入图片描述

2、通过docker命令查看MySQL镜像:

dicker search mysql

在这里插入图片描述

二、拉取镜像(指定版本MySQL5.7)

拉取最新版本的MySQL镜像:

docker pull mysql

拉取指定版本的MySQL镜像(以MySQL5.7为例):

docker pull mysql:5.7

在这里插入图片描述

查看MySQL镜像是否拉取成功:

docker ps -a 

在这里插入图片描述

三、运行容器(数据挂载)

运行容器并使用挂载命令:

docker run -d --name MySql5.7 -p 3306:3306 -v /usr/local/mysql/conf:/etc/mysql/conf.d -v /usr/local/mysql/data:/var/lib/mysql -v /usr/local/mysql/log:/var/log/mysql -e MYSQL_ROOT_PASSWORD=root mysql:5.7

命令分析:
-d:以后台的方式运行
–name MySql5.7:给启动的容器起别名
-p 3306:3306:宿主机和容器端口映射
-v /usr/local/mysql/conf:/etc/mysql/conf.d:将容器中的配置文件夹/etc/mysql/conf.d挂载到主机对应的/usr/local/mysql/conf文件夹中
-v /usr/local/mysql/data:/var/lib/mysql:将容器中数据文件夹/var/lib/mysql挂载到主机对应的/usr/local/mysql/data文件夹中
-v /usr/local/mysql/log:/var/log/mysql:将容器中日志文件夹/var/log/mysql挂载到主机对应的/usr/local/mysql/log文件夹中
-e MYSQL_ROOT_PASSWORD=root:给初始化用户root设置密码为root
mysql:5.7:指定用这个镜像来创建运行实例

执行容器启动命令:
在这里插入图片描述

四、测试连接

用Navicat测试连接数据库:

在这里插入图片描述


总结

博客主要记录了Docker安装MySQL和MySQL数据挂载,有啥错误或不足地方请指正,如果对你有所帮助,请一键三连。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Docker安装MySQL 的相关文章

  • MySQL存储过程错误意外字符“:”

    我有以下语句来创建存储过程 但我不断收到 位置 835 处出现意外字符 错误 语句中唯一的冒号位于 start loop 循环中 为什么我会收到此错误以及如何修复 DELIMITER CREATE DEFINER root localhos
  • 在没有条件的情况下,如何使查询不返回任何内容?

    相当简单 我有一对多 多对一关系 我想查询它 但是 当未提供任何 WHERE 子句信息时 我不希望返回任何结果 简单来说 如何使查询变得非贪婪 您可以添加一个始终为 false 的 where 子句 并附加您想要用 OR 提供的条件 sel
  • 如何使用Query备份MySQL数据库?

    我们如何使用 Query 备份 MySQL 数据库 就像我们可以使用以下 Query 备份 MS SQL 一样 Query backup database DATABASENAME to disk PATH 使用 mysqldump php
  • MongoDB 聚合查询与 MySQL SELECT field1 FROM 表

    我对 MongoDB 完全陌生 想要比较 NoSQL 数据模型相对于关系数据库对应部分的查询性能 我将其写入 MongoDB shell Make 10 businesses Each business has 10 locations E
  • 即使退出命令后,Shell 脚本仍继续运行

    我的shell脚本如下所示 bin bash Make sure only root can run our script EUID ne 0 echo This script must be run as root 1 gt 2 exit
  • 让网站登录也能在 WordPress 上使用

    我使用 PHP 和 MySQL 开发了一个网站 该网站已经有登录和注册表单 myweb com 我已经在这个网址添加了 wordpressmyweb com blog 我想禁用 WordPress 上的登录和注册页面并强制用户使用我的 基本
  • 由于参数中有空格,Bash 脚本因未知选项而失败

    我正在尝试运行 aws create lambda 函数 事情的经过如下 eval aws lambda create function function name FUNCTION NAME runtime RUNTIME role RO
  • 选择给定日期范围内的所有月份,包括值为 0 的月份

    我正在尝试编写一个 MySQL 查询来获取给定日期之间所有月份的每月平均值 我的想法是这样的 查询 类似 SELECT AVG value1 as avg value 1 AVG value2 as avg value 2 MONTH sa
  • MySQL 索引创建速度很慢(在 EC2 上)

    我有一张相当简单的桌子 requestparams requestid varchar 64 NOT NULL requestString text ENGINE MyISAM 使用 LOAD DATA 填充表后 我正在更改架构并将 req
  • “排序文件名 | uniq”不适用于大文件

    我可以从小文本文件中删除重复条目 但不能从大文本文件中删除重复条目 我有一个 4MB 的文件 文件的开头如下所示 aa aah aahed aahed aahing aahing aahs aahs aal aalii aalii aali
  • PHP exec - 检查是否启用或禁用

    有没有办法检查 php 脚本是否exec 在服务器上启用还是禁用 这将检查该功能是否确实有效 权限 权利等 if exec echo EXEC EXEC echo exec works
  • mysql中更新查询中的多个set和where子句

    我认为这是不可能的 因为我找不到任何东西 但我想我会在这里检查一下 以防我没有寻找正确的东西 我的数据库中有一个设置表 其中有两列 第一列是设置名称 第二列是值 我需要同时更新所有这些 我想看看是否有一种方法可以在一个查询的同时更新这些值
  • 健全性检查 SSH 公钥? [关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 我已要求用户提供他们的公共 id rsa pub ssh 密钥 然后将其放入 home theiraccount ssh authorized key
  • Bash 变量:区分大小写?

    Bash shell 脚本区分大小写吗 是可变的date与DATE 是的 它区分大小写 就像 UNIX 的其余部分一样 date and DATE是两个不同的变量 makefile and Makefile是两个不同的文件 h and H是
  • 将尾部输出重定向到程序中

    我想使用 tail 作为标准输入向程序发送文本文件中的最新行 首先 我向程序回显一些每次都相同的输入 然后从输入文件发送尾部输入 该输入文件应首先通过 sed 处理 以下是我期望工作的命令行 但是当程序运行时 它只接收回显输入 而不接收尾部
  • MySQL 查询 - 使用 ORDER BY rand( ) 强制区分大小写

    是否可以强制查询区分大小写 我的听起来是这样的 SELECT g path FROM glyphs WHERE g glyph g glyph ORDER BY rand 如果 g glyph r 结果可以是 R 或 r 这不是我所期望的
  • 优化 SELECT 和 WHERE 子句中的存储函数调用

    我有一个具有以下结构的 SQL 查询 SELECT storedfunc param table field as f FROM table WHERE storedfunc param table field lt value ORDER
  • /etc/php5/conf.d 文件夹中的 .ini 文件有什么用?

    我知道 ini 文件位于 etc php5 cli与 PHP 的 CLI 使用有关 文件位于 etc php5 fpm是关于 PHP 的 FastCGI FPM 方面 但是位于以下位置的 ini 文件又如何呢 etc php5 conf d
  • 使用Linux虚拟鼠标驱动

    我正在尝试实施一个虚拟鼠标驱动程序根据基本 Linux 设备驱动程序书 有一个用户空间应用程序 它生成坐标以及内核模块 See 虚拟鼠标驱动程序和用户空间应用程序代码 http www embeddedlinux org cn Essent
  • 更改子进程中的 iostream

    现在 我正在开发一个项目 其中我需要启动一个子进程来使用 C 在 Linux 中执行一个新程序 并且我需要重定向标准输入和输出 就像在 C 中一样 它们是cin and cout 到一个文件 这意味着在子进程中 标准输入和输出都是文件 子进

随机推荐

  • JAVA中sort()函数的使用方法的个人总结

    1 sort 函数的基本格式 默认排序为升序排序 Arrays sort int a int fromIndex int toIndex Arrays sort 数组名 起始下标 终止下标 一个简单的排序例子 import java uti
  • PCB绘制常用规范

    PCB包含四个文件 原理图 原理图库 封装库文件 PCB文件 首先新建一个PCB工程 File gt New gt Project gt PCBProject 1 原理图文件 name SchDoc File gt new gt Schma
  • Python自动化测试实战篇(3)优化unittest批量自动化接口测试代码,ddt驱动+yaml实现用例调用,输出HTMLTestRunner测试报告

    这些是之前的文章 里面有一些基础的知识点在前面由于前面已经有写过 所以这一篇就不再详细对之前的内容进行描述 Python自动化测试实战篇 1 读取xlsx中账户密码 unittest框架实现通过requests接口post登录网站请求 JS
  • LAMP-web平台搭建(Linux+apache+mysql+php)

    一 介绍 apache 实现网页共享传输 MySQL 数据存储 PHP 实现页面解析 浏览器仅能解析简单的HTML语言 无法直接解析PHP语言 二 部署方式 yum 安装 优点 安装部署便捷 快速 缺点 软件版本固定 且版本较低 源码安装
  • OkHttpClient 发送请求示例

    import okhttp3 import java util Map 类名称 OkHttpClientUtil 类描述 OkHttp 客户端 public class OkHttpClientUtil public static Stri
  • linux内存利用率多少合适,如何理解linux服务器中的内存使用率和平均负载

    我使用的是具有128GB内存和24个内核的 Linux服务器 我使用top来查看它的使用量 它的输出粘贴在帖子的末尾 这是两个问题 1 我看到每个正在运行的进程占用很小的内存百分比 MEM不超过0 2 大多数只有0 0 但总内存几乎与第四行
  • 第四章 课后习题

    一 填空题 1 如类果类A继承了B 那么类A被称为 派生 类 而类B被称为 基 类 2 C 的两种继承为 单继承 和 多继承 3 在默认情况下的继承方式为 私有继承方式 4 从基类中公有派生一个类时 基类的公有成员就成为派生类的 公有 成员
  • 【教程】Edraw Max使用教程:Edraw Max快速入门指南

    Edraw Max是一款简单易用的快速制图软件 帮助你轻松创建流程图 网络拓扑图 组织结构图 商业图表 工程图 思维导图 软件设计图和平面布局图等 大多数用户一般不会花太多时间详细阅读用户手册 因此我们编辑了这个快速入门指南 为帮助你尽快开
  • 前端 jQuery 如何将时间转换为yyyy-MM-dd格式的

    可以使用 JavaScript 内置的 Date 对象和其提供的方法来实现将时间转换为指定格式的字符串 具体可以使用以下代码 假设现在的时间是 2023年3月25日 const date new Date 创建一个 Date 对象 cons
  • INSTALL_FAILED_DUPLICATE_PERMISSION 安装失败的问题

    今天在开发的时候遇到一个问题app安装的时候android studio报 INSTALL FAILED DUPLICATE PERMISSION这个东西 然后把以前自己开发的一个项目卸载了 这个项目成功运行起来了 最后发现是我在做第二个项
  • 解决vscode输出中文乱码问题

    原因 输入编码和Windows系统输出编码方式不同 查看vscode编码方式 可以看到vscode中的默认编码方式是UTF 8 接下来通过cmd下的chcp命令查看系统的默认编码方式 936代表GBK 可以看到编码方式不同 解决方法 1 临
  • 基于微信小程序的垃圾废品回收类软件

    随着我国经济迅速发展 人们对手机的需求越来越大 各种手机软件也都在被广泛应用 但是对于手机进行数据信息管理 对于手机的各种软件也是备受用户的喜爱 废品回收类小程序被用户普遍使用 为方便用户能够可以随时进行废品回收类小程序的数据信息管理 特开
  • Pycharm 中文乱码解决,统一设置 UTF-8,再也不会乱码了

    背景 当我们在使用pycharm编写代码的时候 为了避免乱码问题 我们统一用utf 8编码 由于Python源代码也是一个文本文件 所以当你的源代码包含中文的时候 在保存源代码的时候就务必指定保存为UTF 8编码 但是有很的多的小伙伴还不知
  • VMware Workstation 16 Pro 安装及设置

    前言 VMware Workstation 是一个运行在window或Linux系统的软件 使开发人员能够在同一台 PC 上同时运行多个基于 x86 的 Windows Linux 和其他操作系统 本篇文章主要介绍VMware最新版本 VM
  • 键盘录入月份的值,输出对应的季节

    键盘录入月份的值 输出对应的季节 if switch 实现 输入 3 4 5 输出 春季 输入 6 7 8 输出 夏季 输入 9 10 11 秋季 输出 12 1 2 冬季 使用if选择结构语句 import java util Scann
  • Windows批处理获取指定格式的年月日和时间

    Windows批处理获取指定格式的系统年月日和时间 bat命令行输入获取系统当前日期的指定 date T 会打印出当前日期 2 但如果我们只想要日期中的year month day 可以自己定义设置显示日期 如下所示 date x y x的
  • 【概念】FISCO-BCOS证书进行Dapp开发需要注意什么?讲解config.ini,group.id.genesis,group.id.ini

    前言 FISCO BCOS是联盟链 一说到联盟链就少不了证书的存在 无论是节点证书还是加密证书都有着重要的作用 目前证书配置最多的是hyperledger fabric 这一节我们就简单的讲一下爱FISCO BCOS中的证书 证书 首先我们
  • 提升Python程序运行效率的方法总结

    使用Python中的timeit函数测试程序运行效率 def timeit stmt pass setup pass timer
  • python连接Mysql数据库,java读取python脚本实现动态传参以及增删改查等操作的个人学习记录心得

    目录 前言 一 项目的概述 二 Mysql数据库 1 导入数据 2 数据库增删改查 三 java读取python脚本 并实现动态传参 1 初期探索 2 具体实例 a 数据库的删除操作 b 数据库的添加操作 四 其他细节的问题 总结 前言 这
  • Docker安装MySQL

    签名 但行好事 莫问前程 文章目录 前言 一 查看镜像 二 拉取镜像 指定版本MySQL5 7 三 运行容器 数据挂载 四 测试连接 总结 前言 记录Docker安装MySQL的过程 容器数据卷 我们知道Docker通过镜像创建了容器 当容