备份MySQL数据库
备份MySQL数据库脚本:
#!/bin/bash # description: MySQL buckup shell script # author: lmj # web site: http://www.cnblogs.com/dscode st=$(date +%s) USER="root" # 用户名 PASSWORD="root" # 密码 DATABASE="myblogdb" # 数据库 MAIL="jpds@gmail.com" # mail BACKUP_DIR=/home/lmj/data_backup/ # 备份文件存储路径 LOGFILE=/home/lmj/data_backup/data_backup.log # 日志文件路径 DATE=`date +%Y%m%d-%H%M` # 用日期格式作为文件名 DUMPFILE=$DATE.sql ARCHIVE=$DATE.sql.tar.gz OPTIONS="-u$USER -p$PASSWORD $DATABASE" # 判断备份文件存储目录是否存在,否则创建该目录 if [ ! -d $BACKUP_DIR ] then mkdir -p "$BACKUP_DIR" fi # 开始备份之前,将备份信息头写入日记文件 echo " ">> $LOGFILE echo "--------------------" >> $LOGFILE echo "BACKUP DATE:" $(date +"%y-%m-%d %H:%M:%S") >> $LOGFILE echo "-------------------" >> $LOGFILE # 切换至备份目录 cd $BACKUP_DIR mysqldump $OPTIONS > $DUMPFILE
# 判断数据库备份是否成功 if [[ $? == 0 ]] then tar czvf $ARCHIVE $DUMPFILE >> $LOGFILE 2>&1 echo "[$ARCHIVE] Backup Successful!" >> $LOGFILE rm -f $DUMPFILE # 删除原始备份文件,只需保留备份压缩包 # 把压缩包文件备份到其他机器上。 scp -P 110 $BACKUP_DIR$ARCHIVE ubuntu@*.*.*.*:/home/user/data_backup/ >> $LOGFILE 2>&1 else echo "Database Backup Fail!" >> $LOGFILE # 备份失败后向管理者发送邮件提醒 mail -s "database:$DATABASE Daily Backup Fail!" $MAIL fi echo "Backup Process Done"
# 删除3天以上的备份文件 # Cleaning find $BACKUP_DIR -type f -mtime +2 -name "*.tar.gz" -exec rm -f {} \;
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET制作智能桌面机器人:结合BotSharp智能体框架开发语音交互
· 软件产品开发中常见的10个问题及处理方法
· .NET 原生驾驭 AI 新基建实战系列:向量数据库的应用与畅想
· 从问题排查到源码分析:ActiveMQ消费端频繁日志刷屏的秘密
· 一次Java后端服务间歇性响应慢的问题排查记录
· 互联网不景气了那就玩玩嵌入式吧,用纯.NET开发并制作一个智能桌面机器人(四):结合BotSharp
· Vite CVE-2025-30208 安全漏洞
· 《HelloGitHub》第 108 期
· MQ 如何保证数据一致性?
· 一个基于 .NET 开源免费的异地组网和内网穿透工具