# 备份单个数据库
mysqldump -u [username] -p[password] [database_name] > backup.sql
# 备份所有数据库
mysqldump -u [username] -p[password] --all-databases > all_backup.sql
# 备份特定表
mysqldump -u [username] -p[password] [database_name] [table1] [table2] > tables_backup.sql
# 带时间戳的备份文件名
mysqldump -u [username] -p[password] [database_name] > db_$(date +%Y%m%d_%H%M%S).sql
# 停止MySQL服务
sudo service mysql stop
# 复制数据目录(默认通常在/var/lib/mysql)
sudo cp -R /var/lib/mysql /backup/mysql_backup
# 重启MySQL服务
sudo service mysql start
mysqlhotcopy -u [username] -p [password] [database_name] /backup/directory
#!/bin/bash
# 数据库备份脚本
USER="username"
PASS="password"
DB="database_name"
BACKUP_DIR="/path/to/backup"
DATE=$(date +%Y%m%d_%H%M%S)
mysqldump -u$USER -p$PASS $DB > $BACKUP_DIR/$DB_$DATE.sql
# 删除7天前的备份
find $BACKUP_DIR -name "*.sql" -type f -mtime +7 -exec rm {} \;
mysql -u [username] -p[password] [database_name] < backup.sql
mysql -u [username] -p[password] < all_backup.sql
mysql -u [username] -p[password] [database_name] < table_backup.sql
# 首先恢复完整备份
mysql -u root -p < full_backup.sql
# 然后应用二进制日志
mysqlbinlog /var/log/mysql/mysql-bin.000123 | mysql -u root -p
完整备份+增量备份:
异地备份:
备份验证:
加密敏感数据:
通过合理使用这些方法,您可以确保LAMP架构中的MySQL数据库得到有效保护,并在需要时能够快速恢复。