阅读量:1
以下是Debian系统下MySQL备份恢复的典型案例及操作要点:
案例1:逻辑备份与恢复(推荐场景:中小型数据库)
需求:备份mydb数据库并恢复到新实例。
操作步骤:
- 备份数据库
mysqldump -u root -p mydb > /backups/mydb_20250809.sql # 备份为SQL文件 gzip /backups/mydb_20250809.sql # 压缩节省空间 - 恢复数据库
gunzip /backups/mydb_20250809.sql.gz # 解压 mysql -u root -p -e "CREATE DATABASE mydb_restore;" # 创建新库 mysql -u root -p mydb_restore < /backups/mydb_20250809.sql # 导入数据
案例2:物理备份与恢复(推荐场景:大型数据库)
需求:快速备份整个MySQL数据目录并恢复。
操作步骤:
- 备份数据目录
sudo systemctl stop mysql # 停止服务 sudo cp -R /var/lib/mysql /backups/mysql_backup # 复制数据目录 sudo chown -R mysql:mysql /backups/mysql_backup # 确保权限正确 sudo systemctl start mysql - 恢复数据目录
sudo systemctl stop mysql sudo rm -rf /var/lib/mysql/* # 清空原数据 sudo cp -R /backups/mysql_backup/* /var/lib/mysql/ # 恢复备份 sudo chown -R mysql:mysql /var/lib/mysql sudo systemctl start mysql
案例3:增量备份与恢复(基于Binlog)
需求:从全量备份后恢复增量数据(如误删表后恢复)。
操作步骤:
- 前提条件:需提前开启Binlog(
log_bin=/var/log/mysql/mysql-bin.log)。 - 恢复全量备份
mysql -u root -p < /backups/full_backup.sql # 先恢复全量备份 - 应用Binlog增量
mysqlbinlog /var/log/mysql/mysql-bin.000001 --start-datetime="2025-08-09 00:00:00" --stop-datetime="2025-08-09 12:00:00" > incremental.sql # 解析增量日志 mysql -u root -p < incremental.sql # 应用增量SQL
关键注意事项
- 权限与安全:备份文件需存放在非Web根目录,建议加密或异地存储。
- 验证备份:定期用
mysqlcheck工具测试备份完整性。 - 自动化工具:可通过
crontab定时执行备份脚本,结合rsync实现远程同步。
以上案例覆盖不同场景,可根据数据库规模和恢复需求选择合适方案。
以上就是关于“Debian MySQL备份恢复案例”的相关介绍,筋斗云是国内较早的云主机应用的服务商,拥有10余年行业经验,提供丰富的云服务器、租用服务器等相关产品服务。云服务器资源弹性伸缩,主机vCPU、内存性能强悍、超高I/O速度、故障秒级恢复;电子化备案,提交快速,专业团队7×24小时服务支持!
简单好用、高性价比云服务器租用链接:https://www.jindouyun.cn/product/cvm