阿里云RDS备份那点事,我最终还是选了这三种方式
用阿里云RDS也有好些年了,踩过最大的坑就是——以为控制台的“备份恢复”很靠谱,结果发现真要恢复的时候,它让你先买个新实例。如图1

也不是说不能这样操作,但每次误操作都去买个新实例再导数据,费钱不说,还浪费时间。后来我慢慢摸索了一套适合个人站长或小团队的备份恢复方案,分享一下。
一、如果是 WordPress 的数据库:直接用插件
我自己的博客是WordPress,数据库放在RDS上。以前习惯用DMS导出,每次都要登录阿里云,进控制台,找实例,登录数据库,进入 DMS,点导出,下载……太麻烦了。
后来装了 UpdraftPlus 插件,直接在WordPress后台就能备份和恢复。如图2

- 备份:点一下“立即备份”,数据库+网站文件一起打包,可以存到百度网盘、阿里云OSS或者本地。
- 恢复:插件里点“恢复”,选一个备份集,等一会儿就好了。
关键点:我从来没打开过DMS去备份WordPress数据库,完全用插件搞定。插件还会定期自动备份,省心。
适合场景:日常折腾主题、插件、手动改数据库前的保险。
二、如果不是 WordPress 的数据库:DMS 导入导出
另外还有一些小应用,不是WordPress,数据库也在RDS上。比如一个内部用的工具系统,或者自己写的某个小网站。
这种情况下,UpdraftPlus没法用,我就老老实实用 DMS,如图3。

操作也很简单:
- 登录DMS,找到目标数据库,点“导出该库”或者“数据库导出”,选SQL格式,下载到本地。
- 恢复的时候,点“数据导入”,上传之前导出的SQL文件。
注意:单个文件不能超过5GB,如果你的表太大,可以分开导出。另外,导出的SQL文件记得存到本地电脑,别只留在服务器上。
三、万一忘了备份,还能救急:RDS的“库表恢复”
人总有犯懒的时候。
比如昨天,我的某一个自己编写的批量操作标签的脚本,感觉风险可控,运行前就没用UpdraftPlus备份。结果DELETE语句大量执行……标签记录大量被删除。
这时候才想起来:阿里云RDS控制台有个“库表恢复”功能,不是那个“备份恢复”(那个要你买新实例),是单独的“库表恢复”。如图4

怎么用:
- 进RDS控制台 → 你的实例 → 备份恢复 → 库表恢复(看准了,不是“数据库恢复”)。
- 选择要恢复的库或者表,再选一个时间点(比如半小时前的)。
- 提交,会自动恢复至另一个数据库中了,等几分钟就回来了。
优点:不用买新实例,也不影响其他表,只恢复你选的那几个表。而且只要你的备份策略正常(比如快照保留7天),7天内任意时间点都能恢复。
缺点:只能恢复最近几天的(取决于你的备份保留时长),不能跨地域,也不能恢复到另一个实例。但对于手滑改错数据这种场景,完全够用了。
四、我的日常操作总结
| 情况 | 我用什么 |
|---|---|
| WordPress改代码/改数据前 | UpdraftPlus 快速备份 |
| 非WordPress的数据库定期备份 | DMS 导出SQL到本地 |
| 忘了备份,误操作了 | RDS 库表恢复 |
控制台的“实例备份恢复”,我基本上只用来做一种事:如果要删库跑路之前(开玩笑)或者需要做大规模数据迁移的时候,才会考虑。平时真用不上,因为它恢复要开新实例,太折腾。
五、备份策略怎么设置省钱
RDS的备份存储是收费的,但免费额度一般够用(比如存储空间100GB,免费额度200GB)。我自己的设置是(默认设置),如图5:

- 快照备份保留天数:7天(最低了,没法再短)
- 备份周期:每周一、三、五(最少2次,我选3次)
- 日志备份:开启,保留7天
- 任意时间点恢复:关闭(库表恢复够用了)
- 跨地域备份:关闭(要额外花钱,没必要)
这样每个月备份费用基本为0,足够覆盖7天内任意表的数据回滚需求。
六、说个真实感受
如果你也是一个人维护几个小网站,别迷信RDS控制台那个“备份恢复”按钮。它设计的场景是大公司、高可用、异地灾备,个人用户用起来别扭。
反而是UpdraftPlus + DMS导入导出 + RDS库表恢复,这三个工具组合起来,既灵活又省钱。
当然,最好的习惯还是:操作前先备份。但实在忘了,库表恢复能救命。
以上都是个人经验,不一定适用于所有场景,仅供参考。