当阿里云服务器即将到期时,为避免数据丢失,建议尽快备份所有重要文件和数据库。以下是详细的步骤,帮助你从阿里云 ECS 实例中下载全部文件和数据库:
一、备份文件(网站/应用文件)
方法1:使用 scp 命令下载(推荐)
适用于 Linux/macOS 用户,通过 SSH 将文件从服务器复制到本地。
# 下载整个目录(例如 /var/www/html)
scp -r -P 22 root@你的服务器IP:/var/www/html /本地保存路径
# 示例:
scp -r root@123.456.789.0:/var/www/html ~/backup/
注意:如果 SSH 端口不是 22,请用
-P 端口号指定。
方法2:使用 SFTP 工具(图形化操作)
推荐工具:
- WinSCP(Windows)
- FileZilla(跨平台)
- Cyberduck(macOS)
操作步骤:
- 打开 SFTP 工具,输入:
- 主机:服务器公网 IP
- 协议:SFTP
- 端口:22(或自定义 SSH 端口)
- 用户名:root 或其他用户(如 www-data)
- 密码 或 私钥(根据登录方式选择)
- 连接后,浏览服务器文件,选择并下载所需目录。
方法3:打包后下载
在服务器上先压缩文件,再下载单个压缩包。
# 登录服务器后执行
tar -czf backup_files.tar.gz /var/www/html /etc/nginx /home/*
# 然后在本地用 scp 下载
scp root@你的IP:~/backup_files.tar.gz ./
二、备份数据库(以 MySQL/MariaDB 为例)
1. 导出数据库
# 导出单个数据库
mysqldump -u root -p 数据库名 > database_backup.sql
# 导出所有数据库
mysqldump -u root -p --all-databases > all_databases.sql
# 如果有多个数据库,可以分别导出
输入命令后会提示输入密码。
2. 压缩数据库文件(可选)
gzip database_backup.sql
# 生成 database_backup.sql.gz,更小便于传输
3. 从服务器下载数据库文件
scp root@你的IP:/root/database_backup.sql.gz ./
或使用 SFTP 工具下载。
三、其他需要备份的内容
| 内容 | 路径示例 | 说明 |
|---|---|---|
| Nginx/Apache 配置 | /etc/nginx/, /etc/apache2/ |
包括虚拟主机配置 |
| SSL 证书 | /etc/ssl/, /usr/local/nginx/conf/ssl/ |
保留 HTTPS 配置 |
| 系统用户与权限 | /etc/passwd, /etc/group |
如需迁移用户环境 |
| 定时任务 | crontab -l 或 /var/spool/cron/ |
备份计划任务 |
| 环境变量/启动脚本 | /etc/profile, /etc/rc.local |
自定义配置 |
四、高级建议
-
创建快照(ECS 快照)
- 登录阿里云控制台 → ECS → 实例 → 创建「磁盘快照」
- 可用于后续恢复或迁移到新实例
- 即使服务器到期,快照可单独保留(注意快照费用)
-
镜像备份(自定义镜像)
- 在控制台将当前实例制作成「自定义镜像」
- 可用于快速重建相同环境的新服务器
-
使用对象存储 OSS(适合大文件)
- 将打包的文件上传到阿里云 OSS
- 使用
ossutil工具同步:ossutil cp backup_files.tar.gz oss://your-bucket-name/ - 然后从 OSS 控制台下载到本地
五、注意事项
- ✅ 提前操作:不要等到最后一天,避免网络问题或忘记。
- ✅ 校验完整性:下载后检查文件大小、解压是否正常。
- ✅ 记录配置信息:数据库账号密码、域名、SSL 证书有效期等。
- ❌ 不要直接关机或释放实例,直到确认所有数据已备份。
六、后续迁移建议
备份完成后,你可以:
- 在新服务器上恢复文件和数据库
- 使用阿里云「镜像 + 新实例」快速部署
- 迁移到其他云厂商或本地服务器
如有具体环境(如 WordPress、LNMP、宝塔面板),可提供更多信息,我可以给出更针对性的备份方案。
云小栈