属于大家的
VPS知识分享站

云服务器数据怎么备份?VPS快照、备份和恢复方法说明

去年一个客户的VPS因为误操作删了一个重要目录,没有备份,数据直接没了。这种事情其实可以避免,只要提前做好备份。

这篇文章介绍三种备份方式,选一种适合你的。

方式一:快照备份

快照是VPS某个时间点的完整磁盘镜像。就像给服务器拍了一张”照片”,恢复的时候直接还原到拍照时的状态。

萤光云支持快照功能,操作简单。

创建快照:
1. 进入控制台找到对应服务器
2. 点击”快照 – 创建快照”
3. 输入快照名称(方便区分)
4. 确认创建

恢复快照:
1. 在快照列表中选择要恢复的快照
2. 点击”恢复”
3. 确认操作
4. 等待恢复完成(服务器会自动重启)

快照的特点:
– 备份速度快,通常几分钟完成
– 恢复速度快,直接还原整个磁盘
– 占用存储空间(按快照大小计费)
– 适合定期自动备份

快照计费: 快照占用独立的存储空间,按GB计费。建议只保留必要数量的快照,定期清理过期的。

方式二:手动备份

手动备份是把需要保护的文件和数据库通过SCP、SFTP等方式下载到本地或另一台服务器。

备份网站文件:

# 在本地电脑执行,把服务器上的网站目录下载到本地
scp -r root@服务器IP:/var/www/html ~/backup/

备份数据库(MySQL):

# 在服务器上执行,导出数据库
mysqldump -u root -p 数据库名 > backup.sql

# 下载到本地
scp root@服务器IP:~/backup.sql ~/backup/

备份配置文件:

# 备份Nginx配置
scp root@服务器IP:/etc/nginx/nginx.conf ~/backup/

# 备份防火墙规则
ssh root@服务器IP "iptables-save" > ~/backup/iptables.rules

手动备份的优点是灵活,可以只备份需要的内容,节省空间。缺点是需要手动操作,容易忘记。

方式三:自动备份脚本

设置一个定时任务,每天自动备份数据库和文件。

创建备份脚本:

#!/bin/bash
# /root/backup.sh

BACKUP_DIR="/root/backups"
DATE=$(date +%Y%m%d)
mkdir -p $BACKUP_DIR

# 备份MySQL
mysqldump -u root -p你的密码 --all-databases > $BACKUP_DIR/db_$DATE.sql

# 备份网站文件
tar czf $BACKUP_DIR/web_$DATE.tar.gz /var/www/html

# 删除7天前的备份
find $BACKUP_DIR -name "*.sql" -mtime +7 -delete
find $BACKUP_DIR -name "*.tar.gz" -mtime +7 -delete

设置定时执行:

chmod +x /root/backup.sh
crontab -e
# 每天凌晨3点执行备份
0 3 * * * /root/backup.sh

备份策略建议

根据数据重要性选择备份频率:

数据类型 建议备份频率 备份方式
生产数据库 每天 自动备份脚本
网站文件 每周 快照或手动
系统配置 修改时 快照
临时数据 不需要

3-2-1备份原则: 至少保留3份备份,存储在2种不同的介质上,其中1份在异地。

对于关键业务,建议:
– 每天自动备份数据库
– 每周创建一次快照
– 定期把备份文件同步到另一台服务器或本地

恢复数据

从快照恢复: 在控制台选择快照 → 恢复,整个磁盘还原到快照时的状态。

从SQL文件恢复数据库:

mysql -u root -p 数据库名 < backup.sql

从压缩包恢复文件:

tar xzf web_backup.tar.gz -C /var/www/html

你可能在想

快照和手动备份哪个好?

快照操作简单、恢复快,但要付费。手动备份免费、灵活,但需要自己维护。建议两者结合:定期快照做系统级备份,定期手动备份做关键数据备份。

快照占多少空间?

快照占用的空间取决于磁盘使用率,不是整个磁盘大小。通常占用实际数据量的70%-90%。

能不能把备份存到另一台VPS?

可以,而且推荐这样做。用rsync定时同步到另一台服务器,实现异地备份。

赞(0)
未经允许不得转载:VPS知识分享站 » 云服务器数据怎么备份?VPS快照、备份和恢复方法说明