写得比较详细啰嗦,所以内容看起来多,其实很简单,有基础的童鞋可以直接备份数据库,安装软件,然后拉到文章底部看最后几步即可
~~ 正文开始 ~~
前几天不小心把存在表里的生产数据(为啥存在本地?因为临时在本地写了个demo,调接口获取的数据)给删了,不多不少一万多条数据,最后终于恢复回来,今天分享下恢复过程
为了防止数据被覆盖,我赶紧停止了任何数据操作和数据备份,并在网上找起教程,大概的方向是通过“SQL事务日志”来恢复被删的数据~~~
====数据备份开始====
这里简单说下数据备份吧,不要用软件来备份数据,因为有些数据库设置的‘简单模式’,备份会删除日志,导致恢复失败。
1、首先分离数据库
2、【重要!!!】
找到数据库文件路径,拷贝一份备用。(为了保险,一定要备份),一般文件路径都是这个:
C:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\DATA
3、备份完后把分离的数据库附加回去
=====数据备份完成====
我并不会分析日志,只能找工具辅助了咯。刚开始找的是Log Explorer,结果客户端装上了,服务端死活装不上,版本还老得离谱,装不上就当拉倒吧,,,,,所以我又双叒去网上找了另一款名为ApexSQLLog 的数据恢复软件
ApexSQL Log是为数据库开发用户打造的一款实用误操作恢复工具,软件可以帮助用户阅读SQL事务日志以审核更改和回滚事务,可以有效地找回丢失或者修改的数据库数据,支持SQL Server 2008、2005等版本
====软件安装开始====
安装软件运行环境,需要.NET 4.5,如果之前装过就不用装了,没有的话自己下载安装
链接:
ApexSQLLog 安装包下载链接:
软件无需安装,直接解压压缩包即可使用
====软件安装完成====
====软件使用与数据恢复====
1、解压后,打开文件,找到以下所示程序文件,鼠标右键,以管理员身份运行
2、选择和登录需要恢复数据的数据库
等待程序自动查找数据库和日志,别心急
3、选择需要恢复的数据的日志文件,一般默认就好
4、选择以表格形式展示数据
5、选择需要恢复数据的时间段,一般默认,,然后点右下角“Finish”
====接下来进行数据恢复操作=====
筛选数据可以选择时间、操作人、增删改操作(具体见下图)
图1:通过时间筛选你要的数据
图2:通过语句或表筛选你要的数据
图3:通过用户筛选你要的数据
选完筛选条件后点击“apply”应用,查出来的数据应该就是你想恢复的了
======================
比如我要恢复被误删的数据,,筛选出delete语句的记录,勾选数据,恢复
软件就会生成这些被删数据对应的insert语句,然后你就可以保存到本地,通过insert语句恢复被删除的数据啦
====软件使用与数据恢复结束====
希望这篇文章对你有帮助!记得帮忙点赞转发哦,感谢!