阿里云关系型数据库(Relational
Database Service,简称 RDS)是一种稳定可靠、可弹性伸缩的在线数据库服务。基于飞天分布式系统和高性能存储,RDS 支持 MySQL、SQL Server、PostgreSQL 和 PPAS( Postgre Plus Advanced
server,一种高度兼容 Oracle 的数据库)引擎,并且提供了容灾、备份、恢复、监控、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。
应用场景
假如您用了阿里云的SQL Server RDS,想在另外一台服务器上通过备份文件还原数据库至之前的某个时间点。
准备工作
一台服务器,安装SQL Server
还原时间点在增量备份时间点之后,全量备份时间点之前
测试案例
上图是RDS管理管制台中看到的备份情况,我们的目标是将数据库还原至2014-02-12 19:00的时间点,也就是在增量备份2014-02-13
06:31与全量备份2014-02-14 06:29之间的时间点。
经过实测的恢复操作步骤
1. 下载2014-02-10 07:16的全量备份文件并解压出要恢复的数据库备份文件。
2. 以NORECOVERY的方式还原2014-02-10 07:16的全量备份,操作SQL语句如下:
还原成功后,数据库处于Restoring状态。
3. 继续以NORECOVERY的方式还原2014-02-12
06:51的增量备份,操作SQL语句如下:
还原成功后,数据库继续处于Restoring状态。
4. 日志备份文件的下载
RDS 控制台 - 备份恢复 - 数据备份,选择需要下载的备份集,点击“下载”。
点击“复制内网地址” 或 “复制外网地址” 来获取备份的 内网 或 外网 下载地址。
日志备份的地址在 RDS 控制台 - 备份恢复 - 日志备份
获取:
5. 解压备份文件
解压备份文件前,要先下载好解压工具 rds_backup_extract
解压备份文件:
bash rds_backup_extract
-f/home/mysql/backup/hins575175_xtra_20150429091224.tar.gz -C /home/mysql/data
6. 以RECOVERY(默认方式)的方式还原日志
日志还原成功后,数据库处于正常状态,这时数据库中的数据就还原到了要恢复的时间点。
参考
RDS for MySQL 备份文件恢复到自建数据库
RDS Linux 平台使用 wget 工具下载备份与日志文件
通过RDS备份文件恢复SQL Server数据库