作为开发人员,误操作数据delete、update、insert是最正常不过的了,比如:

  • 删除忘记加where条件;
  • 查询为了图方便按了F5,但是数据里面夹杂着delete语句。

 

 


 不管是打着后发动机声音噪音过大,缸筒活塞间隙过大,做过全身划痕处理;

还是喷过全身漆,对于有经验的老司机来说,这些都是不是事(还原一下数据库日志恢复就OK),

但是对于驾驶经验不足的人来说就难以驾驶了,只能重新换车(请教DBA:数据库管理员)。

但是并不是所有公司都有DBA,或者认识的朋友是DBA,那只能靠自己了,怎么办呢?

 

 


 

不慌,看法宝!

 

 


 

微软SQL服务器的增值软件工具供应商提供了ApexSQL Log工具(支持SQL Server2005/2008/2012),只要我不付钱,就不是嫖客咯,我都给你们整理好了,

ApexSql Log 2018免安装版下载地址(免费的哦)

百度网盘提取地址:

链接:https://pan.baidu.com/s/1h23f9cQuTQ_-r__yrfueSA
提取码:XZ66

官网地址:https://www.apexsql.com/Download.aspx(比较慢);

这是基于数据库日志的可视化恢复数据的工具,里面有很多功能,我们着重说数据恢复功能;

首先下载软件,使用我上面分享的地址下载或者百度查询下载也可以;

 


使用教程(以sql server2008为例)

我们先在数据库创建数据表,插入数据,然后把数据全部delete掉,如图所示:

 


 

使用ApexSql Log 2018工具恢复刚刚删除的数据

使用其他版本的也可以,我这里使用2018版的

1、打开ApexSql Log 2018,双击ApexSQLLog.exe运行程序

 

2、登陆需要恢复的数据库,点击Next

 

3、选择数据库日志,如果是回访备份文件点击Add filf添加,一般直接默认第一个就好了,然后点击Next

 

然后点击第一个 Open results in grid(在网格中打开结果)

 

4、选择需要恢复的时间、恢复的数据类型、恢复的数据表,然后点击Finish

 

 

 

5、选择需要的数据进行恢复

加载完成后,选择需要恢复的数据,点击上方的Undo图标

 

数据加载出来后,可以直接复制到数据库执行,也可以直接点击Execute图标执行

 

然后我们去数据库看一下最后执行的结果,数据就还原啦;

 

但是细心的小伙伴有没有发现,Id设了主键自增,还原后的数据id是自增的,

导致以id主键自增的键作为子表外键做关联的对不上了,所以小编这里不建议以主表自增为子表关联的外键,管理的外键最后设置一个Vguid就好了;

 

 

 


 

 

至于数据能够恢复的上限这里并没有测试,百度查了一下,有人说是8-10万条数据后会丢失,

真实是多少就需要进一步的压力测试了,这里就偷个懒,谁测试出来了艾特一下我看看。

对于drop和truncate暂时或者删库的就只能去备份里面恢复了,有其他办法的小伙伴可以艾特我一下看看。

 

欢迎关注订阅我的微信公众平台【熊泽有话说】,更多好玩易学知识等你来取
作者:熊泽-学习中的苦与乐
公众号:熊泽有话说
出处: https://www.cnblogs.com/xiongze520/p/13452106.html
创作不易,版权归作者和博客园共有,转载或者部分转载、摘录,请在文章明显位置注明作者和原文链接。  

 

内容来源于网络如有侵权请私信删除

文章来源: 博客园

原文链接: https://www.cnblogs.com/xiongze520/p/13452106.html

你还没有登录,请先登录注册
  • 还没有人评论,欢迎说说您的想法!