MySQL数据备份及备份脚本
一、SQL备份脚本
!/bin/bash
备份脚本
备份文件保存路径
BACKUP_DIR="/path/to/your/dir"
MySQL 数据库用户名
DB_USER="username"
MySQL 数据库密码
DB_PASSWORD="password"
需要备份的数据库名称
DB_NAME="username"
获取当前日期
DATE=$(date +"%Y-%m-%d_%H-%M-%S")
备份文件名
BACKUP_FILE="$BACKUP_DIR/${DB_NAME}backup$DATE.sql"
创建备份目录(如果不存在)
mkdir -p $BACKUP_DIR
执行备份命令
mysqldump -u $DB_USER -p$DB_PASSWORD $DB_NAME > $BACKUP_FILE
删除超过30天的备份文件
find $BACKUP_DIR -type f -name "*.sql" -mtime +30 -exec rm {} ;
二、创建crontab
给脚本赋权限
chmod +x /app/databases/backup.sh
创建crontab 定时任务
crontab -e
粘贴到crontab中
0 23 * * * /path/to/your/dir/backup.sh >> /path/to/your/dir/logs/backup.log 2>&1
三、crontab命令总结
-
crontab -l 查看系统有哪些定时任务
-
sudo crontab -l -u username 查看指定用户的定时任务
-
cat /etc/crontab
-
crontab -r 删除当前用户的所有 crontab 任务
-
crontab -i -r 在删除前进行确认
-
systemctl status cron
-
service cron status
-
sudo systemctl restart cron
-
sudo service cron restart
-
crontab -V
分类:
数据库
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~