LNMP架构下MySQL数据备份实操指南
一 备份方式概览
二 使用 mysqldump 进行逻辑备份
三 自动化备份与远程容灾
#!/bin/bash
DB_USER="backup"
DB_PASS="YourStrongPass"
DB_NAME="mydb"
BACKUP_DIR="/backup/mysql"
KEEP_DAYS=7
DATE=$(date +"%Y%m%d%H%M%S")
BACKUP_FILE="$BACKUP_DIR/${DB_NAME}_${DATE}.sql.gz"
mkdir -p "$BACKUP_DIR"
mysqldump -u"$DB_USER" -p"$DB_PASS" --single-transaction --routines --triggers "$DB_NAME" \
| gzip > "$BACKUP_FILE"
# 删除超过 KEEP_DAYS 天的备份
find "$BACKUP_DIR" -type f -name "*.sql.gz" -mtime +$KEEP_DAYS -delete
# 可选:同步到远程主机(需配置免密或密钥登录)
# rsync -avz --remove-source-files "$BACKUP_FILE" user@remote:/backup/mysql/
# 或
# scp "$BACKUP_FILE" user@remote:/backup/mysql/
四 数据恢复步骤
五 注意事项与最佳实践