福州大学城论坛

 找回密码
 立即注册
开启左侧

备份 MySQL 指定数据库并删除10天前的备份文件

[复制链接]
发表于 2025-3-7 12:35:25 | 显示全部楼层 |阅读模式 来自 中国福建福州
[Bash shell] 纯文本查看 复制代码
#!/bin/bash
# 备份 MySQL 数据库的脚本

#进入到备份文件目录
cd /home/backup/database/mysql/crontab_backup/shop_i3sh_com

# 定义变量
DB_USER="root"         # MySQL 用户名
DB_PASS="Q4Wz425jgy"           # MySQL 密码(建议使用root不会报错)
DB_NAME="shop"       # 要备份的数据库名
BACKUP_DIR="/home/backup/mysql/shop_i3sh_com/"   # 备份目录

# 创建备份目录(如果不存在)
mkdir -p $BACKUP_DIR

#进入到备份文件目录
cd $BACKUP_DIR

# 生成日期
DATE=$(date +'%Y-%m-%d-%H-%M-%S'_mysql_data)

# 运行备份命令    使用root备份 后面带参数锁定数据库
mysqldump -u$DB_USER -p$DB_PASS $DB_NAME >$BACKUP_DIR$DB_NAME-$DATE.sql --skip-lock-tables

#进入到备份文件目录
#cd /
#cd /home/backup/mysql/shop_i3sh_com/

#压缩备份文件
tar zcvf $BACKUP_DIR$DB_NAME-$DATE.sql.tar.gz $BACKUP_DIR$DB_NAME-$DATE.sql
 
#删除临时SQL文件
rm -f $BACKUP_DIR$DB_NAME-$DATE.sql


# 输出备份结果
echo "备份完成:$BACKUP_DIR$DB_NAME-$DATE.sql"

#删除10天前的备份文件-如果要删文件,又删出文件夹,那么就不用-type 参数a
find . -mtime +10 -type f -name "*" -exec \rm -f {} \;



















配合宝塔计划,在计划里面黏贴修改好的脚本 ,即可实现自动备份数据库。防止误操作

备份 MySQL 指定数据库并删除10天前的备份文件

备份 MySQL 指定数据库并删除10天前的备份文件
福州大学城论坛 - 声明 1、在发表言论时,请遵守当地法律法规。主题所有言论纯属个人意见,与本站立场无关。
2、本站所有主题由作者发表,作者享有帖子相关版权,其他单位或个人使用、转载或引用本文时必须征得作者同意并注明来源于福州大学城论坛
3、如本帖侵犯到任何版权问题,请立即告知本站,本站将及时予与删除并致以最深的歉意。
4、帖子不遵守当地法律法规、广告、人身攻击等情况时,福州大学城论坛管理人员有权不事先通知发贴者而删除本文。
 楼主| 发表于 2025-3-7 15:05:43 | 显示全部楼层 来自 中国福建福州
配合宝塔计划,在计划里面黏贴修改好的脚本 ,即可实现自动备份数据库。防止误操作
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|福州大学城论坛 ( 闽ICP备2022007610号-2 )|站点地图

GMT+8, 2025-6-9 20:16 , Processed in 0.352303 second(s), 10 queries , Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表