SQL Server 数据库恢复到某一时间点测试

时间:2021-12-04 06:26:02

        随着客户数据库数据的逐渐增大,为了保证数据库一旦发生问题,能够很快恢复到时间点,不得不指定相应的备份策略,以下总结一下数据库发生问题时,如何恢复到某一时间点:

第一步:创建数据库以及创建表

create database Test

 

use Test

go

 

create table A

(

  ID intidentity(0,1) primarykey,

  Name varchar(50) default'空值',

  PublishDate datetime default getdate()

)

 

----给表中添加测试数据,

insert into A(Name,PublishDate)values('zhangsan',GETDATE())

 

insert into AselectName+cast(IDasvarchar(10)),PublishDatefromA

第二步:然后完全备份数据库

         SQL Server 数据库恢复到某一时间点测试


第三步:然后在插入一部分数据 测试数据库

insert into Aselecttop 1000  Name+cast(IDasvarchar(10)),GETDATE()fromA

 SQL Server 数据库恢复到某一时间点测试

第四步: 做日志备份test01.trn

SQL Server 数据库恢复到某一时间点测试

第五步 : 删掉某一时间点之前的数据(数据量共51152,删掉,50152)

SQL Server 数据库恢复到某一时间点测试

注意:当删掉数据时,首先记清楚时间点,一定要做好日志备份和全备份(全备份是为防止了恢复时间点失败,事务日志备份是为了恢复时间点的数据)

第六步:首先日志备份后,目前共有三个备份:一个完全备份和2个事务日志备份

SQL Server 数据库恢复到某一时间点测试

第七步:先按照完全备份进行还原,

 SQL Server 数据库恢复到某一时间点测试

注意:如果还原不了,并提示数据库正在运行,建议做好备份后,重启实例,然后再做还原

SQL Server 数据库恢复到某一时间点测试

 

然后右键-------任务---还原--------事务日志 -----------

 SQL Server 数据库恢复到某一时间点测试

时间点选择:

SQL Server 数据库恢复到某一时间点测试

 

第八步:查看结果:还原时间点是否成功

SQL Server 数据库恢复到某一时间点测试

完成数据库时间点的还原完毕。