LAMP架构数据备份实操指南
一 备份范围与策略
二 数据库备份与恢复
mysqldump -u 用户名 -p 数据库名 > backup.sqlmysqldump -u 用户名 -p --all-databases > all_databases_backup.sqlgzip backup.sql(生成 backup.sql.gz)。scp backup.sql.gz 用户名@远程主机:/路径/。mysql -u 用户名 -p 数据库名 < backup.sql。三 网站文件与配置备份
tar -czvf web_$(date +%F).tar.gz /var/www/htmlcp -r /etc/httpd/ /path/to/backup/(CentOS/RHEL)cp -r /etc/apache2/sites-available/ /path/to/backup/(Debian/Ubuntu)cp /etc/php.ini /path/to/backup/php.inirsync -avz --delete /var/www/html/ 用户@远程主机:/path/to/backup/,适合日常增量备份与快速回滚。四 自动化与远程传输
/home/dbback.sh:#!/bin/bash
DB_USER="your_user"
DB_PASS="your_pass"
DB_NAME="your_db"
BACKUP_DIR="/home/backup"
DATE=$(date +%Y%m%d_%H%M%S)
mkdir -p "$BACKUP_DIR"
mysqldump -h 127.0.0.1 -u "$DB_USER" -p"$DB_PASS" "$DB_NAME" \
| gzip > "$BACKUP_DIR/${DB_NAME}_${DATE}.sql.gz"
chmod +x /home/dbback.sh0 1 * * * /home/dbback.sh五 恢复流程与最佳实践
mysql -u 用户名 -p 数据库名 < backup.sql;tar -xzvf web_YYYY-MM-DD.tar.gz -C /;