联系我们
简单又实用的WordPress网站制作教学
当前位置:网站首页 > 程序开发学习 > 正文

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

作者:小教学发布时间:2023-10-29分类:程序开发学习浏览:96


导读:👨🏻‍💻热爱摄影的程序员👨🏻‍🎨喜欢编码的设计师🧕🏻擅长设计的剪辑师🧑🏻‍🏫一位高冷无情的编码爱好者大家好,我是设备运维工程师欢迎分享/收藏/赞/在看![需求]MySQL服务使用D...

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

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

[需求]MySQL服务使用Docker构建。在每天的23:00将MYSQL中的测试转储数据库备份到宿主机/转储目录下,并且文件名加上日期,如:/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



标签:如何定时备份使用Docker构建的MySql容器中的数据库_编程洪同学的博客


程序开发学习排行
最近发表
网站分类
标签列表