云计算之路-阿里云-分享:经过RDS备份文件恢复SQL Server数据库

应用场景:假如您用了阿里云的SQL Server RDS,想在另一台服务器上经过备份文件还原数据库至以前的某个时间点。数据库

准备工做:准备1台用于还原的服务器,安装好SQL Server(2008或2012均可以)。服务器

还原场景:还原时间点在增量备份时间点以后,全量备份时间点以前。测试

测试案例:阿里云

上图是RDS管理管制台中看到的备份状况,咱们的目标是将数据库还原至2014-02-12 19:00的时间点,也就是在增量备份2014-02-13 06:31与全量备份2014-02-14 06:29之间的时间点。spa

通过实测的恢复操做步骤:日志

1,下载2014-02-10 07:16的全量备份文件并解压出要恢复的数据库备份文件。code

2,以NORECOVERY的方式还原2014-02-10 07:16的全量备份,操做SQL语句以下:blog

USE [master]
RESTORE DATABASE [数据库名称] 
FROM  DISK = N'数据库全量备份文件路径' 
WITH  FILE = 1,  
NORECOVERY
GO

还原成功后,数据库处于Restoring状态。ast

3, 继续以NORECOVERY的方式还原2014-02-12 06:51的增量备份,操做SQL语句以下:class

USE [master]
RESTORE DATABASE [数据库名称] 
FROM  DISK = N'数据库增量备份文件路径' 
WITH  FILE = 1,  
NORECOVERY
GO

还原成功后,数据库继续处于Restoring状态。

3. 联系阿里云客服,让他们联系DBA提供2014-02-12 06:51与2014-02-13 06:31时间点以前的日志备份文件(目前RDS管理控制台没有提供日志备份文件的下载)

4. 以RECOVERY(默认方式)的方式还原日志

RESTORE LOG [要恢复的数据库名称] 
FROM  DISK = N'前一步获得的数据库日志备份文件路径' 
WITH  FILE = 1,  
STOPAT = N'要恢复的时间点'
GO

日志还原成功后,数据库处于正常状态,这时数据库中的数据就还原到了要恢复的时间点。    

相关文章
相关标签/搜索