mysql备份数据库事务日志,用备份事务日志尾部来还原MSSQL数据库误操作

有时会碰到同事误删或误更新了某些数据,现在把恢复数据的方法之一:备份日志尾部,简单记录一下。

1. 首先检查你要还原的数据库的恢复模式是否为完整,如果不是改为完整恢复模式。

cfc3c9e9424eaebed4ba34d13eb74da2.png

其次,确保该数据库至少做过一次完整备份,因为所有其他类型的备份都是基于完整备份的,如果不确定的话可以通过下面这个语句来查看数据库的备份情况:

select    database_name,recovery_model,name,backup_finish_date

from      msdb.dbo.backupset

where    database_name='SmartDev'

order by backup_finish_date desc,name

得到的结果:

2f3ba978ad4a10df6b0466fffe7c9429.png

2. 拿下面这个表来做例子:

select * from dbo.Office

02422edf269679d375a84a82559a44cc.png

有三条记录,现在把数据删掉:

delete from dbo.Office

7b33e37b64a9841548243c415e1fd85c.png

数据清空了,现在要想办法把数据恢复过来,我们要做一次日志尾部备份,这里要确保没有人再连接到该数据库上。

618a13c5a6a49321f9fb7402c062702c.png

特别是Media Options这个选项页中的各种选项要勾上,比如下图这样。

3b740fb227001797bf714a6de9a3cf97.png

点OK执行,如果出现下面的提示,则表示此时还有别的进程连接在该数据库上,因为备份日志尾部会使数据库处于还原状态,如果不断开所有连接是执行不了的。

a365a80bc5f05d8d2db4680c42f648e6.png

清除掉所有连接后再执行,备份成功后看看数据的状态,表示正在还原中。

5e06634e46684208c6a522b85bafa626.png

3. 进行还原数据库操作。首先还原完整数据库备份,这时要选择最近的一次完整备份,

7836129b731e5a13df83d97a536aeb6d.png

并在Options选项页中,Recovery state要选择第二项。

9185721757878596694a7199db04be0e.png

成功后看数据库还是下面这个状态,

aea203ee75e6339e4459a907078b16c6.png

接下来还原日志文件,在指定还原点时只要把时间指定到误操作之前的时间就可以。

4862c6a05dd576bda9aac7edf32bbe74.png

Options选项页中,因为日志文件是最后一个还原的文件,所以Recovery state选择第一项。

fc5d006c4d47293406e51be8ea705764.png

还原成功后

3057f90c7e5415a36334ea14c1dfb4e5.png

再查询,表数据已经恢复。

00d617e670be66ca09e67491746976dd.png

4. 最后总结一下,我尝试了多种情况,因为有可能存在多个完整备份,而这中间又可能有多个差异备份,得出以下几点:

a. 在还原完整数据库备份时,一定要选择离误操作时间最近的一次,如果这个备份文件找不到了,而去找次一个最近的备份是还原不成功的。

b. 如果在最近一次完整备份和误操作时间之间还有多个差异备份的话,可以不用逐步还原这些差异备份再还原日志备份,而是在还原了最近一次完整备份后直接还原日志备份即可。

c. 如果在还原的任何一部出现错误还原不成功,而数据库又处于

aea203ee75e6339e4459a907078b16c6.png这种不可用状态的话,可以用下面的语句恢复。

RESTORE DATABASE SmartDev WITH RECOVERY

可能还有些情况没尝试过,目前先只做到这些。

0b1331709591d260c1c78e86d0c51c18.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值