如何定时备份使用Docker构建的MySQL容器中的数据库

请添加图片描述

👨🏻‍💻 热爱摄影的程序员
👨🏻‍🎨 喜欢编码的设计师
🧕🏻 擅长设计的剪辑师
🧑🏻‍🏫 一位高冷无情的编码爱好者
大家好,我是 DevOps 工程师
欢迎分享 / 收藏 / 赞 / 在看!

【需求】MySQL 服务使用 Docker 构建。在每天的 23:00 将 MySQL 中的 test 数据库备份到宿主机 /dump 目录下,并且文件名加上日期,如:/dump/test_20230927.sql
【解决】
首先在宿主机创建一个定时任务脚本,该脚本将在每天晚上 23:00 执行导出操作。使用 Cron 来调度这个任务。
在 /home 目录下创建一个名为 export_mysql.sh 的脚本文件,并确保给它执行权限:

cd /home
touch export_mysql.sh
chmod +x export_mysql.sh

编辑 export_mysql.sh 文件,添加以下内容:

#!/bin/bash# 设置导出文件名,使用日期和项目名称作为文件名
container_name="mysql-test" # 容器名称
project_name="test" # 项目名称
mysql_user="root" # 数据库用户名
mysql_password="123456" # 数据库密码
mysql_database="test" # 数据库名称
dump_path="/dump/" # 备份文件存放路径
export_filename="${project_name}_$(date +\%Y\%m\%d).sql" # 导出文件名# 备份数据库
docker exec ${container_name} mysqldump -u${mysql_user} -p${mysql_password} ${mysql_database} > ${dump_path}${export_filename}

设置一个 Cron 任务,以便每天晚上 23:00 运行 export_mysql.sh 脚本。打开终端,运行以下命令来编辑 Cron 任务:

crontab -e

在 Cron 编辑器中,添加以下行来设置每天晚上 23:00 运行导出脚本:

0 23 * * * /home/export_mysql.sh

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

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

相关文章

PIE:1979-2018年中国气温数据产品(空间分辨率为0.1º)

简介 中国气温数据产品包含1979-2018年期间中国的近地表气温数据(单位为摄氏度),时间分辨率为每日,空间分辨率为0.1。本产品集成了再分析数据(ERA5、CMFD)、遥感数据(MODIS)、原位数…

php eayswoole node axios crypto-js 实现大文件分片上传复盘

不啰嗦 直接上步骤 步骤1.开发环境配置 项目需要node.js 做前端支撑 官网下载地址: http://nodejs.cn/download/ 根据自己需要下载对应的版本,我下载的是windows系统64位的版本。 包下载好后 进行安装,安装步骤在此省略... 测试是否安装成功 …

蓝海彤翔亮相2023新疆网络文化节重点项目“新疆动漫节”

9月22日上午,2023新疆网络文化节重点项目“新疆动漫节”(以下简称“2023新疆动漫节”)在克拉玛依科学技术馆隆重开幕,蓝海彤翔作为国内知名的文化科技产业集团应邀参与此次活动,并在美好新疆e起向未来动漫展映区设置展…

C#生成自定义海报

安装包 SixLabors.ImageSharp.Drawing 2.0 需要的字体:宋体和微软雅黑 商用的需要授权如果商业使用可以使用方正书宋、方正黑体,他们可以免费商用 方正官网 代码 using SixLabors.Fonts; using SixLabors.ImageSharp; using SixLabors.ImageSharp.Draw…

python切分字符串

在Python中,您可以使用不同的方法来切分字符串,具体取决于您的需求和字符串的结构。以下是一些常见的方法: 使用split()方法: split()方法允许您根据指定的分隔符将字符串切分成子字符串,并返回一个包含这些子字符串的…

使用SPY++查看窗口信息去排查客户端UI软件问题

目录 1、使用SPY查看窗口的信息 2、使用SPY查看某些软件UI窗口用什么UI组件实现的 2.1、查看海康视频监控客户端安装包程序 2.2、查看华为协同办公软件WeLink 2.3、查看字节协同办公软件飞书 2.4、查看最新版本的Chrome浏览器 2.5、查看小鱼易连视频会议客户端软件 2.6…

C/S架构学习之UDP服务器

UDP服务器的实现流程:一、创建用户数据报套接字(socket函数):通信域选择IPV4网络协议、套接字类型选择数据报式; int sockfd socket(AF_INET,SOCK_DGRAM,0); 二、填充服务器的网络信息结构体:1.定义网络信…

Java初始化大量数据到Neo4j中(一)

背景:我们项目第一次部署图数据库,要求我们把现有的业务数据以及关系上线第一时间初始化到Neo4j中。开发环境数据量已经百万级别。生成环境数据量更多。 我刚开始开发的时候,由于对Neo4j的了解并没有很多,第一想到的是用代码通用组…

Mybatis 批量修改数据,,并判断非空数据插入

方法一&#xff1a; <update id"updateListPO"> <foreach collection"list" separator";" item"item">UPDATE project_quotation_item<SET>product_num #{item.productNum},product_price_total #{item.pr…

CIP或者EtherNET/IP中的PATH是什么含义?

目录 SegmentPATH举例 最近在学习EtherNET/IP&#xff0c;PATH不太明白&#xff0c;翻了翻规范&#xff0c;在这里记个笔记。下面的叙述可能是中英混合&#xff0c;有一些是规范中的原文我直接搬过来的。我翻译的不准确。 Segment PATH是CIP Segment中的一个分类。要了解PATH…

每日一题 322零钱兑换(完全背包)(灵神版本)

题目 与01背包的区别就是可以重复拿一件物品 零钱兑换 给你一个整数数组 coins &#xff0c;表示不同面额的硬币&#xff1b;以及一个整数 amount &#xff0c;表示总金额。 计算并返回可以凑成总金额所需的 最少的硬币个数 。如果没有任何一种硬币组合能组成总金额&#xff…

Dev C++安装与运行

参考: https://blog.csdn.net/Keven_11/article/details/126388791 https://www.cnblogs.com/-Wallace-/p/cpp-stl.html 2021年真题要求 2022年真题要求 河南省的考试环境 IDE环境 Dev C 安装 下载 安装 点击OK&#xff0c;选择我接受 修改安装路径为D盘d:\Program Fi…

MQTT协议是什么?快速了解MQTT协议在物联网中的应用

随着工业互联网的迅猛发展&#xff0c;工业设备数据采集和实时监控成为制造业提高生产效率和质量的重要手段。在物联网应用中&#xff0c;通信技术包括Wi-Fi、RFID、NFC、RS232、RS485、USB等&#xff0c;其中在物联网技术框架体系中所使用到的通讯协议主要有&#xff1a;AMQP、…

[ruby on rails] postgres sql explain 优化

一、查看执行计划 sql User.all.to_sql # 不会实际执行查询 puts ActiveRecord::Base.connection.explain(sql)# 会实际执行查询&#xff0c;再列出计划 User.all.explain# 会实际执行查询&#xff0c;再列出计划ActiveRecord::Base.connection.execute(EXPLAIN ANALYZE sql…

[论文笔记]P-tuning

引言 今天带来第四篇大模型微调的论文笔记GPT Understands, Too。 本篇工作提出的方法是P-tuning,使用可训练的连续提示嵌入,使GPT在NLU上表现比传统的全量微调的GPT更好的效果。P-tuning还提高了BERT在少样本和监督设定下的性能,大幅减少了提示工程的需求。 总体介绍 根…

Django(21):使用Celery任务框架

目录 Celery介绍Celery安装Celery使用项目文件和配置启动Celery编写任务调用异步任务查看任务执行状态及结果 设置定时和周期性任务配置文件添加任务Django Admin添加周期性任务启动任务调度器beat Flower监控任务执行状态Celery高级用法与注意事项给任务设置最大重试次数不同任…

2023-09-28 mysql-代号m-schema调研-文档记录

摘要: mdb中的database与mdb中的database的概念南辕北辙, 可以说有着本质的不同. mysql中的database可以看作是table的namespace, 而在mdb中, 与此相似的概念也就是table的namespace的概念, 是schema. 为了将mysql的db与mdb的schema建立映射关系后的技术风险可控, 需要详细分…

26663-2011 大型液压安全联轴器 课堂随笔

声明 本文是学习GB-T 26663-2011 大型液压安全联轴器. 而整理的学习笔记,分享出来希望更多人受益,如果存在侵权请及时联系我们 1 范围 本标准规定了大型液压安全联轴器的分类、技术要求、试验方法及检验规则等。 本标准适用于联接两同轴线的传动轴系&#xff0c;可起到限制…

面试算法14:字符串中的变位词

题目 输入字符串s1和s2&#xff0c;如何判断字符串s2中是否包含字符串s1的某个变位词&#xff1f;如果字符串s2中包含字符串s1的某个变位词&#xff0c;则字符串s1至少有一个变位词是字符串s2的子字符串。假设两个字符串中只包含英文小写字母。例如&#xff0c;字符串s1为&quo…

软考高级之系统架构师之软件需求工程

概述 一个完整的软件生存周期是以需求为出发点。软件需求是指用户对系统在功能、行为、性能、设计约束等方面的期望。 需求开发&#xff1a; 需求获取需求分析需求定义&#xff08;需求规格说明书&#xff09;需求验证 需求管理: 变更控制版本控制需求跟踪需求状态跟踪 需…