当前位置: 首页 > news >正文

docker 通过定时任务恢复MySQL数据库

1.编写恢复命令脚本 nm_jxxt_new.sh ,并记录开始及结束 时间
格式
gunzip -c 备份文件路径 | docker exec -i 容器id(xxx) mysql -u数据库连接用户名(xx) -p密码(xx) 恢复到数据名称(xx)
参考命令如果是压缩文件
gunzip -c /u01/db/mysql_8.0.26/backup/my_db_nameb_20250428_000011.sql.gz | docker exec -i 5cb4w344d mysql -uroot -proot my_db_namee
如果是sql文件
docker exec -i 5cb4da3d589c mysql -uroot -proot my_db_name < /u01/db/mysql_8.0.26/backup/my_db_name_20250428_000011.sql

参考脚本
#! /bin/sh# 定义日志文件路径
LOG_FILE="/u01/db/MY_DBNAME_backup.log"# 获取当前时间
START_TIME=$(date "+%Y-%m-%d %H:%M:%S")
echo "-----------------数据库恢复日志-----------------" >> $LOG_FILE
echo "恢复开始时间: $START_TIME" >> $LOG_FILE
echo "数据库名称: MY_DBNAM" >> $LOG_FILE
echo "-------------------------------------------------" >> $LOG_FILEecho "-----------------恢复mysql8数据库---------------";
echo "--数据库恢复开始 -------------------------------";# 执行数据库恢复
START_RESTORE_TIME=$(date +%s)
gunzip -c /usr/db/mysql_8/backup/MY_DBNAM_20250428_000011.sql.gz | docker exec -i 5cb4da34534 mysql -uroot -pjysa MY_DBNAM# 记录数据库恢复结束时间和用时
END_RESTORE_TIME=$(date +%s)
RESTORE_TIME=$((END_RESTORE_TIME - START_RESTORE_TIME))END_TIME=$(date "+%Y-%m-%d %H:%M:%S")echo "恢复结束时间: $END_TIME" >> $LOG_FILE
echo "恢复用时: $RESTORE_TIME 秒" >> $LOG_FILE
echo "-------------------------------------------------" >> $LOG_FILE
echo "--数据库恢复结束 -------------------------------" >> $LOG_FILE# 输出日志到终端
cat $LOG_FILE

2. 添加定时任务
  1. 打开 crontab 编辑器
crontab -e
  1. 添加以下行:
10 0 29 4 * /u01/db/MY_DBNAM.sh
3. 加载定时任务
systemctl reload crond.service

4.查看任务列表

crontab -l

相关文章:

  • P1494 [国家集训队] 小 Z 的袜子 Solution
  • Java 基础--运算符全解析
  • MySQL 连接池 (Pool) 常用方法详解
  • HTML应用指南:利用POST请求获取全国达美乐门店位置信息
  • 【网络编程】UDP协议 和 Socket编程
  • Seaborn一个用于统计图形绘制的高级API
  • 基于C++数据结构双向循环链表实现的贪吃蛇
  • AgeTravel | 银发文娱旅游一周新鲜事
  • 使用高德MCP+AI编程工具打造一个旅游小助手
  • 线程同步与互斥核心要点整理
  • 精益数据分析(30/126):电商商业模式的深度剖析与关键指标解读
  • linux安装ragflow
  • 《从线性到二维:CSS Grid与Flex的布局范式革命与差异解析》
  • Tailwind CSS 响应式设计解析(含示例)
  • 【算法练习】归并排序和归并分治
  • JAVA使用Apache POI导出Word,支持向表格动态添加多行数据
  • taro小程序如何实现大文件(视频、图片)后台下载功能?
  • 为什么要学习《金刚经》
  • [AI]browser-use + web-ui 大模型实现自动操作浏览器
  • Android项目中使用ComposeUI
  • 深入贯彻中央八项规定精神学习教育中央指导组培训会议召开
  • 杨国荣︱学术上的立此存照——《故旧往事,欲说还休》读后
  • 体坛联播|安切洛蒂预计执教巴西国家队,利拉德确诊跟腱撕裂
  • “五一”假期倒计时,节前错峰出游机票降价四成
  • 瞄准“美丽健康”赛道,上海奉贤如何打造宜居宜业之城?
  • 脱发后怎么把头发养回来?脱发自救指南来了