标签:日志 info create 使用 var 数据库备份 交流 from 遇到
对于在实际的数据库操作中,可能会遇到的数据误操作的情况,进行数据恢复。
1.版本要求:Sql server 2008及以上版本
2.要有误操作前的完整数据库备份,并且备份后未做过日志截断处理
以下进行测试:
1.建立测试数据库,恢复模式选为完整:
2.对数据库做完整备份:
3.测试数据库中建表,并插入测试数据:
Use test;
go
create table mytable
(
code varchar(20) null,
name varchar(64) null,
date1 datetime null
)
Go
declare @n int ,@dateStop datetime
set @n =1
set @dateStop = dateadd(minute,2,getdate())
while getdate() <= @dateStop
begin
insert into mytable
select @n,cast(@n as varchar(12))+‘测试‘,getdate() waitfor delay ‘00:00:00:10‘
set @n = @n + 1
end
4.恢复至:2018-07-29 10:46:32之前的数据
5.做删除操作,误操作产生
delete from mytable
6.做事务日志备份:
7.误操作出现后,如果是生产环境,为避免影响其他正常的业务,使用步骤2中做的原始完整备份进行还原,可以在其他服务器上还原,也可以在本机上还原为其他的数据库名,本例还原为test2:
8.使用事务日志进行还原,并选择需要还原的时间点:
9.检查数据库test2中的数据,恢复至:2018-07-29 10:46:32之前:
注意事项:
1.日常数据库维护时,定期进行数据库完整备份
2.如果有截断日志的操作,应在截断后,立即做数据库完整备份,否则日志不连续,无法还原
3.如果日志增量较大,建议定期做截断、备份。
以上总结,供参考。经验交流,+QQ:1002732169
标签:日志 info create 使用 var 数据库备份 交流 from 遇到
原文地址:https://www.cnblogs.com/qiaoliqing/p/9384736.html