新司机的致胜法宝,使用ApexSql Log2018快速恢复数据库被删除的数据
作为开发人员,误操作数据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 创作不易,版权归作者和博客园共有,转载或者部分转载、摘录,请在文章明显位置注明作者和原文链接。 |
新司机的致胜法宝,使用ApexSql Log2018快速恢复数据库被删除的数据的更多相关文章
- 阿里BCG重磅报告《人工智能,未来致胜之道》
阿里BCG重磅报告<人工智能,未来致胜之道> 阿里云研究中心.波士顿咨询公司以及Alibaba Innovation Ventures合作共同推出的<人工智能:未来制胜之道>这 ...
- ln -s 新目录(最后一个目录新建images) 旧目录(删除最后的images目录)
sudo yum install libvirt virt-install qemu-kvm 默认安装会启用一个NAT模式的bridgevirbr0 启动激活libvirtd服务 systemctl ...
- uber在限制新司机加入了,看看新政策把
您可以点击“车主奖励分组查询”输入您在系统注册的手机号查询您所在奖励分组 5月25日-5月31日 奖励明细 1. 成都优步合作车主第一组 奖励政策: (账户激活时间在2015年5月29日之前) *以下 ...
- Ubuntu中开启MySQL远程访问功能,并将另一个数据库服务器中的数据迁移到新的服务器中
一.开启MyS远程访问功能 1.进入服务器输入netstat -an | grep 3306确认3306是否对外开放,MySQL默认状态下是不对外开放访问功能的.输入以上命令之后如果端口没有被开放就会 ...
- 将新浪博客里的表情包存入MySQL数据库不完整版本一堆可能用到的散乱代码
header = {'Cookie': 'SINAGLOBAL=7368591819178.463.1491810091070; ALF=1558832450; SCF=Ajrc1sxuwynVIu_ ...
- 阿里云POLARDB如何帮助百胜软件应对数据库的“巅峰时刻”
POLARDB是阿里云自研的下一代关系型云数据库,100%兼容MySQL,存储容量最高可达100TB,性能最高提升至MySQL的6倍,适用于企业多样化的数据库应用场景.POLARDB采用存储和计算分离 ...
- redis缓存恢复-2022新项目
一.业务场景 Web项目开发中,为了加快数据处理的的效率,大量的使用了各种缓存,缓存技术主要使用的是redis.导致出现的小小的 问题是对redis缓存形成了一个比较强的依赖,并且有的数据暂时是没有同 ...
- OpenStack 企业私有云的若干需求(10):OpenStack 的前景和钱景
本系列会介绍OpenStack 企业私有云的几个需求: 自动扩展(Auto-scaling)支持 多租户和租户隔离 (multi-tenancy and tenancy isolation) 混合云( ...
- 你真的了解ASP.NET Core 部署模型吗?
---------------------------- 以下内容针对 ASP.NET Core2.1,2.2出现IIS进程内寄宿 暂不展开讨论-------------------------- ...
随机推荐
- JavaScript 基础 学习 (四)
JavaScript 基础 学习 (四) 解绑事件 dom级 事件解绑 元素.on事件类型 = null 因为赋值的关系,所以给事件赋值为 null 的时候 事件触发的时候,就没有事件处理 ...
- 【Nginx】如何为已安装的Nginx动态添加模块?看完我懂了!!
写在前面 很多时候,我们根据当时的项目情况和业务需求安装完Nginx后,后续随着业务的发展,往往会给安装好的Nginx添加其他的功能模块.在为Nginx添加功能模块时,要求Nginx不停机.这就涉及到 ...
- Python Ethical Hacking - TROJANS Analysis(5)
Spoofing File Extention - A trick. Use the Kali Linux Program - Characters 1. Open the program. 2. F ...
- 产品升级前后MD5码对比
在做产品测试的时候,经常会需要对比升级前后的MD5码,这时可以通过终端登录设备,具体步骤如下: 1.在升级前时,将MD5码写入log1.info文件: check_md5 -d / -w log1.i ...
- swfupload控件文件上传大小限制设置
swfupload控件,是我在开发过程中用到的上传文件的控件,非常实用和方便.但最近碰到一些问题,解决之后进行一下整理. 因为用户上传文件的大小限制增加,导致原本上传控件时,文件的大小需要进行调整和限 ...
- 时间复杂度为O(nlogn)的排序算法
时间复杂度为O(nlogn)的排序算法(归并排序.快速排序),比时间复杂度O(n²)的排序算法更适合大规模数据排序. 归并排序 归并排序的核心思想 采用"分治思想",将要排序的数组 ...
- windows系统远程修改密码
1.需求:公司需要短时间.批量修改一些windows系统的管理员密码: 2.准备工作: a.下载软件:链接:https://pan.baidu.com/s/1kV52DqE1_4siPuxS5Mosc ...
- JAVA OOP 编程-常用设计模式
smart-design-pattern 吼吼!10分钟内快速回顾所有设计模式及应用场景 其实,工作三年以上,精通coding,深知并发编程,熟悉OOP思想,但却因为种种原因! 没有在学习生涯初期就看 ...
- OnePill本地保存用户的结构
sharedPreferences存储的数据 int Code code 表示当前用户的类别:医生为1,用户为2. Sting user user 存储当前user的json字符串 String do ...
- 给定两个列表,转换为 DataFrame 类型
import pandas as pd def get_data(): q1 = [] q2 = [] p1 = input("list 1:") p2 = input(" ...
