ApexSQL Recover 恢复一个被drop的表的数据
没有备份的情况下恢复一个被drop的表的数据
ApexSQL Recover 恢复一个被drop的表的数据
转自:https://solutioncenter.apexsql.com/zh/%E6%B2%A1%E6%9C%89%E5%A4%87%E4%BB%BD%E7%9A%84%E6%83%85%E5%86%B5%E4%B8%8B%E6%81%A2%E5%A4%8D%E4%B8%80%E4%B8%AA%E8%A2%ABdrop%E7%9A%84%E8%A1%A8%E7%9A%84%E6%95%B0%E6%8D%AE/
如果你曾经意外地执行过一个 DROP 语句并且你之前有一个数据库完整备份,在你drop掉表之前数据库没有发生任何改变,完整备份能让你简单地依靠覆盖数据库来恢复数据。 然而,事情并没有那么简单,因为往往数据库对象和数据在 DROP 语句执行之后都会发生变化又或者你没有做合理的备份,那么就没有方法去还原你丢失的数据。
那就是说,每一个 DROP 操作会被记录在SQL Server的事务日志里。这表示事务日志存储里足够的信息去回滚事务,并且如果数据库处于完整恢复模式下,对于 DROP 操作数据库备份能够支持时点还原。
正因为 DROP 操作是被记录到事务日志的,如果它被包含在一个显式,活动事务里那么是能够被回滚的。例如,下面的SQL 查询:
DROP TABLE Customer
SELECT *
FROM Customer
会显示出 Msg 208, Level 16, State 1 这样的结果,错误消息 因为 Customer 表已经被drop掉了
然而,下面的SQL 代码:
BEGIN TRAN
DROP TABLE Customer
ROLLBACK
SELECT *
FROM Customer
会返回 Customer 表所有的记录行数因为 DROP 表操作被回滚了。
已经被 DROP 的表就不能回滚,很明显这个表存储的数据也会丢失。 那是不是说由于 DROP 操作在没有数据库完整备份的情况下你就不能够恢复丢失的数据了呢?
幸运的是,不是的,ApexSQL Recover在这里就能够发挥它的作用
ApexSQL Recover 恢复工具,能够恢复已删除的,截断了的(truncate,损坏的或者置疑的数据。它能恢复由于drop操作而丢失的对象和数据并且
可以还原删除了的和在线BLOBs文件让它能够像SharePoint 恢复那样完美。
要恢复由于 DROP 操作并且没有备份的数据丢失情况,只需要按下面的来做:
- 启动 ApexSQL Recover
- 选择恢复由于DROP操作导致丢失的数据
- 在Select the database to recover 的步骤:
- 指定你想恢复数据的数据库所在的SQL实例 在server下拉框旁边
- 指定SQL实例的验证方法(如果你选择SQL Server授权请选择一个合法的证书)
- 在数据库下拉列表中指定数据库名
然后点击“下一步”
-
在“ Are additional data sources available?”步骤, 选择“No additional transaction logs are available ”选择
-
在“Select a recovery action”步骤,选择“Save recovery script to file”选项并指定一个T-SQL脚本文件保存的路径,所有的已丢失数据都插入到这个脚本文件并保存起来
- 点击“恢复”
就像那样,你会获取到所有的你所丢失的数据,在没有一个单独SQL数据库备份的情况下。
翻译者: 林勇桦
July 2, 2015
【2】软件详细介绍
软件介绍
ApexSQL Recover是一款可以帮助您恢复数据的软件,当您的数据丢失的时候,就可以通过本软件找到,其实现在很多软件都是可以将删除内容重新还原的,电脑的数据以及保存在sql server的数内容都可以通过专业的软件将已经删除的内容还原,这样可以让您在错误删除数据或者是数据意外丢失的情况下将原来的内容恢复,如果您需要执行SQL数据库内容恢复,可以选择这款ApexSQL Recover软件,该软件支持多种数据类型,支持多种删除类型,轻松还原SQL内容!
软件特色
1、详细过滤
2、指定数据或对象丢失的时间范围
3、ApexSQL Recover最新版支持多种数据源类型
4、从活动数据库和事务日志,分离的数据库和事务日志文件以及本机或压缩的事务日志和数据库备份中恢复
5、表模式还原
6、恢复已删除的表结构
7、选择性恢复
8、指定要恢复的数据和对象
9、智能资源管理
10、选择最佳恢复方法以获得最佳性能
11、压缩备份支持
12、使用本机压缩的事务日志和数据库备份作为数据源
13、丢失数据恢复
14、恢复由于DELETE,TRUNCATE或DROPTABLE操作而丢失的数据
15、直接到数据库恢复
16、直接将数据恢复到数据库,将丢失的表直接恢复到数据库,包括包含计算列或缺少模式和用户定义数据类型定义的表的表
17、BLOB恢复和提取
18、支持SQL服务器2008的新功能
功能介绍
1、恢复已删除的BLOB并将BLOB提取为数据文件,理想的SharePoint恢复
2、从意外、恶意以及/或欺骗性操作中恢复数据
3、从数据库备份中选择性地恢复数据
4、恢复因为删除操作而丢失的数据
5、恢复因为缩减操作而丢失的数据
6、恢复因为Drop操作而丢失的数据
7、从损坏的数据库或分离的MDFs中恢复数据
8、以文件形式恢复BLOB数据
软件优势
1、ApexSQL Recover可以让您的数据重新恢复到数据库
2、软件提供了详细的SQLserver连接方式
3、软件获取的数据都是可以预览的
4、可以查看数据结构可以表结构
5、ApexSQL Recover恢复的步骤很少
6、界面提供了多种恢复方案,可以选择最适合的一种恢复
7、找到已经删除的数据,可以手动选择需要恢复的对象
安装说明
1、在本站下载这款软件,解压后,双击exe文件,进入安装界面,点击next
2、查看协议,选择i accept...,点击next
3、设置软件安装位置,点击install
4、软件正在安装,我们耐心等待完成即可
使用说明
1、在数据丢失后立即将数据库设置为只读状态。这将防止重写MDF文件,并使您能够复制MDF和LDF文件。
2、对只读数据库运行APXSQL恢复。
3、复制数据库MDF和LDF文件,将它们恢复为新的数据库,并运行APESQL恢复它。
4、如果您知道数据丢失的方式,请从数据恢复选项中选择最合适的选项。如果不知道数据是如何丢失的,请尝试每个选项,直到成功恢复数据为止。只要数据还没有被新数据写入,APXSQL就会恢复它。
使用方法
1、打ApexSQL Recover软件,提示的主界面就是这样的
2、点击Deleted data,提示您可以选择数据库以恢复服务器
3、在这里登录您的数据库,支持身份验证:用户:数据库密码
4、界面的功能很多,可以点击Truncated data,也可以选择Deleted blobs
5、点击 Data from backup可以查看来自备份的数据
6、这里是设置功能,可以选择C:Userspc0359AppDataLocalApexSQLApexSQLRecover,可以自动加载SOL日志进行分析
7、 Theme是主题设置,提示三种主题可以选择white、Colorful、Dark
8、Script editor脚本编辑器,点击 built-in editor可以使用内置的编辑器
更新日志
1、支持SQL Server 2014
2、ApexSQL Recover远程服务安装,更快捷
3、不再需要服务器端组件的本地SQL Server实例的数据库恢复
4、用更少的设置步骤简化安装和用户交互
5、简化数据来源选择
6、选择重命名和对话框重新设计
7、改进质量,新的界面风格
8、修复了一些bug,优化了软件界面
9、优化了软件性能