docker灵活部署mysql

news2024/11/18 1:41:16

博客简要

用docker部署mysql,并将数据库映射到主机上,并增加远端访问mysql数据库

当你使用Docker运行MySQL时,并且希望将MySQL数据库的数据存储在宿主机(也就是运行Docker的主机)上的特定路径,你需要在启动容器时通过 -v--volume 参数来实现数据卷挂载。这样可以确保数据库的数据持久化,即使容器停止或删除,数据也不会丢失。

假设你已经在宿主机上创建了外部数据目录,例如 /path/to/mysql/data,要将这个目录作为MySQL容器内部的数据存储位置,你可以按照以下方式执行 docker run 命令:

直接运行docker容器

数据存在在host主机上,防止docker关闭数据清空

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

这里的各个参数含义:

  • -d 表示后台运行容器。
  • --name=mysql-server 给容器命名。
  • -v /path/to/mysql/data:/var/lib/mysql 将宿主机的 /path/to/mysql/data 目录映射到容器内的 /var/lib/mysql 目录,这是MySQL默认的数据存储位置。
  • -e MYSQL_ROOT_PASSWORD=your_password 设置MySQL root用户的密码。
  • -p 3306:3306 将宿主机的3306端口映射到容器的3306端口,以便外部能够访问MySQL服务。
  • mysql:tag 是你要拉取的MySQL镜像的标签,比如 mysql:latest(获取最新版)或 mysql:5.7(获取特定版本)。

如果你尚未拉取MySQL镜像,请先执行 docker pull mysql:tag 获取所需的镜像版本。

举例

docker run -d \
  --name=mysql-server \
  -v /home/eve/mysqldb:/var/lib/mysql \
  -e MYSQL_ROOT_PASSWORD=jupping001 \
  -p 3306:3306 \
  mysql:8.0

进入容器设置远端访问

docker exec -ti mysql-server /bin/bash
  • 进入数据库
mysql -u root -p
  • 列出数据库
show database;

 

  • 进入mysql数据库
use mysql;
  • 依次执行下方命令,就可获取远程登录权限
grant all on *.* to 'root'@'%';
alter user 'root'@'%' identified with mysql_native_password by 'jumpping001';
FLUSH PRIVILEGES;

以后重启mysql服务器不需要再出指定密码

docker run -d \
  --name=mysql-server \
  -v /home/eve/mysqldb:/var/lib/mysql \
  -p 3306:3306 \
  mysql:8.0

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1610662.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

现代农业AI智能化升级之路:机器学习在现代农业领域的现状与未来发展

🧑 作者简介:阿里巴巴嵌入式技术专家,深耕嵌入式人工智能领域,具备多年的嵌入式硬件产品研发管理经验。 📒 博客介绍:分享嵌入式开发领域的相关知识、经验、思考和感悟,欢迎关注。提供嵌入式方向…

ppt技巧:​如何将两个PPT幻灯片文件合并成一个?

第一种方式:复制粘贴幻灯片 1. 打开第一个PPT幻灯片文件,确保你已经熟悉该文件的内容和布局。 2. 打开第二个PPT幻灯片文件,浏览其中的所有幻灯片,选择你想要合并到第一个文件中的幻灯片。 3. 使用快捷键CtrlC(Wind…

python_列表和元组

介绍 列表(List)和元组(Tuple)是Python中两种不同的数据结构,它们都可以用来存储一系列的元素。下面是它们的主要特点和区别: 列表(List) 可变性:列表是可变的&…

Redis:报错Creating Server TCP listening socket *:6379: bind: No error

错误: window下启动redis服务报错: Creating Server TCP listening socket *:6379: bind: No error 原因: 端口6379已被绑定,应该是因为上次未关闭服务 解决: ①依次输入命令: redis-cli.exe &#xff08…

SpringBoot基于JavaWeb的菜鸟驿站快递管理系统ssm

前端:vue.jsElementUI 编程语言: java 框架: ssm/springboot 详细技术:springboot springbootvueMYSQLMAVEN 数据库: mysql5.7 数据库工具:Navicat/SQLyog都可以 ide工具:IDEA 或者eclipse 对菜鸟驿站快递管理系统设计…

MySql安装(Linux)

一、清除原来的mysql环境 在前期建议使用root用户来进行操作,使用 su -来切换成root用户,但是如果老是提示认证失败,那么有可能我们的root密码并没有被设置, 我们可以先设置root的密码 sudo passwd root 然后就可以切换了。 …

Window中Jenkins部署asp/net core web主要配置

代码如下 D: cd D:\tempjenkins\src\ --git工作目录 dotnet restore -s "https://nuget.cdn.azure.cn/v3/index.json" --nuget dotnet build dotnet publish -c release -o %publishPath% --发布路径

分布式锁实现方案-基于zookeeper的分布式锁实现(原理与代码)

目录 一、基于zookeeper的分布式锁 1.1 基于Zookeeper实现分布式锁的原理 1.1.1 分布式锁特性说明 1.1.1.1 特点分析 1.1.1.2 本质 1.1.2 Zookeeper 分布式锁实现原理 1.1.2.1 Zookeeper临时顺序节点特性 1.1.2.2 Zookeeper满足分布式锁基本要求 1.1.2.3 Watcher机制 …

‘language‘不能作为表名或字段名

今天写一个C#访问Access的程序,拼接SQL语句时一直出错, string sql "insert into dllinfos (dllname,dllfilename,type,functions,harm,repairmethod,issys, paths, ishorse, language, version, company) values (" textBox1.Text ",…

2 逻辑斯蒂回归(分类)

目录 1 理论 逻辑回归假设数据服从伯努利分布(二分类),通过极大化似然函数的方法,运用梯度下降来求解参数,来达到将数据二分类的目的。 逻辑斯蒂回归(Logistic Regression)是一种用于解决分类问题的…

探索C语言数据结构:利用顺序表完成通讯录的实现

在好久之前我就已经学习过顺序表,但是在前几天再次温习顺序表的时候,我惊奇的发现顺序编表可以完成我们日常使用的通讯录的功能,那么今天就来好好通过博客总结一下通讯录如何完成吧。 常常会回顾努力的自己,所以要给自己的努力留…

Games101-光线追踪(辐射度量学、渲染方程与全局光照)

Basic radiometry (辐射度量学) 光的强度假定l为10,但是10是什么。 Whitted-Style中间了很多不同简化,如能看到高光,表示做了布林冯着色,意味着一个光线打进来后会被反射到一定的区域里,而不是沿着完美的镜像方向&…

javaEE初阶——多线程(五)

T04BF 👋专栏: 算法|JAVA|MySQL|C语言 🫵 小比特 大梦想 此篇文章与大家分享关于多线程的文章第五篇关于 多线程代码案例二 阻塞队列 如果有不足的或者错误的请您指出! 目录 2.阻塞队列2.1常见队列2.2 生产者消费者模型有利于进行解耦合程序进行削峰填谷…

网站空间的类型包括

网站空间的类型包括许多不同的形式,每种形式都具有其独特的特点和用途。从个人博客到企业网站,从电子商务平台到社交网络,各种类型的网站都为用户提供了不同的体验和功能。在本文中,我们将探讨几种常见的网站空间类型,…

MYSQL之增删改查(中)

前言: 以下是MySQL最基本的增删改查语句,很多IT工作者都必须要会的命令,也 是IT行业面试最常考的知识点,由于是入门级基础命令,所有所有操作都建立在单表 上,未涉及多表操作。 4、“查”——之单表查询 My…

Linux的firewalld防火墙

介绍firewalld: ①、firewalld(Dynamic Firewall Manager of Linux systems,Linux系统的动态防火墙管理器)服务是默认的防火墙配置管理工具,它拥有基于CLI(命令行界面)和基于GUI(图…

专业清洁工匠服务网站模板 html网站

目录 一.前言 二.页面展示 三.下载链接 一.前言 该HTML代码生成了一个网页,包括以下内容: 头部信息:指定了网页的基本设置和元数据,例如字符编码、视口大小等。CSS文件:引入了多个CSS文件,用于设置网页…

程序员自由创业周记#32:新产品构思

程序员自由创业周记#32:新产品构思 新作品 我时常把自己看做一位木匠,有点手艺,能做一些作品养活自己。而 加一、Island Widgets、Nap 就是我的作品。 接下来在持续维护迭代的同时,要开启下一个作品的创造了。 其实早在2022的1…

【leetcode面试经典150题】64. 删除排序链表中的重复元素 II(C++)

【leetcode面试经典150题】专栏系列将为准备暑期实习生以及秋招的同学们提高在面试时的经典面试算法题的思路和想法。本专栏将以一题多解和精简算法思路为主,题解使用C语言。(若有使用其他语言的同学也可了解题解思路,本质上语法内容一致&…

C++必修:从C语言到C++的过渡(上)

✨✨ 欢迎大家来到贝蒂大讲堂✨✨ 🎈🎈养成好习惯,先赞后看哦~🎈🎈 所属专栏:C学习 贝蒂的主页:Betty’s blog 1. 什么是C C(c plus plus)是一种计算机高级程序设计语言&…