Linux系统定时备份数据库是一个常见的需求,主要涉及以下几个基础概念和技术点:
以下是一个简单的Shell脚本示例,用于定时备份MySQL数据库:
#!/bin/bash
# 数据库配置
DB_USER="your_db_user"
DB_PASS="your_db_password"
DB_NAME="your_db_name"
BACKUP_DIR="/path/to/backup/directory"
DATE=$(date +%Y%m%d%H%M%S)
# 创建备份目录(如果不存在)
mkdir -p $BACKUP_DIR
# 执行备份
mysqldump -u $DB_USER -p$DB_PASS $DB_NAME > $BACKUP_DIR/$DB_NAME-$DATE.sql
# 压缩备份文件
gzip $BACKUP_DIR/$DB_NAME-$DATE.sql
# 删除旧备份(可选)
find $BACKUP_DIR -type f -name "*.sql.gz" -mtime +7 -exec rm {} \;
将上述脚本保存为backup_db.sh
,并设置Cron作业来定时执行:
crontab -e
添加以下行以每天凌晨2点执行备份:
0 2 * * * /path/to/backup_db.sh
chmod +x backup_db.sh
赋予执行权限。通过以上步骤和注意事项,可以有效地在Linux系统中实现数据库的定时备份。
企业创新在线学堂
DB・洞见
云+社区沙龙online [国产数据库]
腾讯云数据库TDSQL训练营
DB-TALK 技术分享会
腾讯云数据库TDSQL(PostgreSQL版)训练营
云+社区技术沙龙[第17期]
领取专属 10元无门槛券
手把手带您无忧上云