目录

前言

MySQL

MySql数据文件介绍及存放位置

MySQL数据库文件恢复工具

MSSQL

数据库文件及文件位置

 MSSQL数据库修复工具

 Oracle

数据库文件及日志文件位置

Oracle数据库恢复工具


前言

近来应急会有遭遇勒索的情况,但针对不同的勒索家族,勒索加密的方式也不一样,针对只加密文件前几个字节的情况,还是存在挽回部分数据库数据的可能。本文旨在整理一些恢复遭受损坏数据库文件的工具。

MySQL

MySql数据文件介绍及存放位置

1、MySQL数据库文件介绍

MySQL每个数据库都对应存放在一个与数据库同名的文件夹中,MySQL数据库文件包括MySQL数据库自身所建数据库文件和Mysql所用存储引擎创建的数据库文件。

(1)MySQL创建并管理的数据库文件

“.frm文件“: 存储数据库表的框架结构,文件名与表名相同,每个表对应一个同名frm文件,与操作系统和存储引擎无关(不管MySQL运行在何种操作系统上,使用何种存储引擎,都有这个文件。

Ps:mysql8后无frm文件,放入sdi文件中

除了必有的”.frm”文件,根据MySQL所使用的存储引擎不同(MySQL常用的两个存储引擎MyISAM和InnoDB),存储引擎会创建各自不同的数据库文件。

(2)MyISAM数据库表文件

“.MYD” 文件: 即 MY data, 表数据文件

“.MYI” 文件: 即 MY index,索引文件

“.log” 文件: 日志文件

(3)InnoDB 采用表空间(tablespace)来管理数据,存储表数据和索引

InnoDB数据库文件(即InnoDB文件集,ib-file set): ibdata1、ibdata2等: 系统表空间文件,存储InnoDB系统信息和用户数据表数据和索引,所有表共用

“.ibd” 文件: 单表表空间文件, 每个表使用一个表空间文件(file per table),存放用户数据表数据和索引

日志文件: ib_logfile1、ib_logfile2

2、数据库文件存放位置

(1)MySQL如果使用MyISAM存储引擎,数据库文件类型就包括.frm、.MYD、.MYI,默认存放位置是C:\Documentsand Settings\All Users\Application Data\MySQL\MySQL Server 5.1\data

(2)MySQL如果使用InnoDB存储引擎,数据库文件类型就包括.frm、ibdata1、.ibd,存放位置有两个,.frm文件默认存放位置是C:\Documents and Settings\AllUsers\ApplicationData\MySQL\MySQL Server 5.1\data,ibdata1、.ibd文件默认存放位置是MySQL安装目录下的data文件夹

MySQL数据库文件恢复工具

1、Recovery Toolbox For MySQL

下载链接:https://recoverytoolbox.com/download/RecoveryToolboxForMySqlInstall.exe

安装完成后会直接弹出如下窗口,选中要恢复的数据库文件夹

 选中后,点击Next即可,点击某张表,能恢复的话能看到对应的数据表内容。

最后导出恢复的数据库文件有两种模式,一种导出为sql脚本,一种为直接导出至MySQL数据库中。

 2、Stellar Repair For MySQL

Stellar Repair for MySQL 数据恢复软件是强大的 MySQL 数据库修复软件,受到广大数据库管理员的信任,用于修复损坏的 MySQL 数据库,并安全地恢复所有无法访问的数据库对象。它以原始格式恢复表、主键、视图、触发器等。支持 MySQL 8.0.26 及以下版本。

  • 修复 Mysql 数据库的 Innodb 和 Myisam 表
  • 恢复密钥、表、表属性、数据类型、视图、触发器
  • 修复在 Windows 和 Linux 上创建的 MySQL 数据库

安装完成后,选中数据库的data目录

 指定要修复的数据库,修复结果如下。

MSSQL

数据库文件及文件位置

1、数据库文件

SQL Server 数据库具有三种类型的文件,如下表所示:

文件说明
包含数据库的启动信息,并指向数据库中的其他文件。 每个数据库有一个主要数据文件。 主要数据文件的建议文件扩展名是 .mdf。
辅助副本用户定义的可选数据文件。 通过将每个文件放在不同的磁盘驱动器上,可以跨多个磁盘分散数据。 次要数据文件的建议文件扩展名是 .ndf。
事务日志此日志包含用于恢复数据库的信息。 每个数据库必须至少有一个日志文件。 事务日志的建议文件扩展名是 .ldf。

例如,简单数据库“Sales”包括一个包含所有数据和对象的主要文件和一个包含事务日志信息的日志文件。 可以创建一个更复杂的数据库“Orders”,其中包括一个主要文件和五个次要文件。 数据库中的数据和对象分散在所有六个文件中,而四个日志文件包含事务日志信息。

默认情况下,数据和事务日志放在同一驱动器和路径上,以处理单磁盘系统。 对于生产环境,这可能不是最佳选择。 建议将数据和日志文件放在不同的磁盘上。

2、存放位置

 MSSQL数据库修复工具

1、 Stellar Repair For MS SQL

下载链接: SQL Database Recovery Tool. Repair MDF, NDF Database Files - Free Download

Stellar Repair for MS SQL是业界公认的、最好的MS SQL数据库修复软件之一。由于操作十分简便,因此它在我们的列表中排名第一。通过调用.mdf和.ndf文件,Stellar Repair for MS SQL能够恢复各种表、触发器、索引、键、规则、以及存储过程等。该软件不但能够从各种MS SQL文件中恢复那些已删除的记录,而且允许我们恢复数据库的特定组件。它善于修复SQL数据库的各类损坏性错误。下面让我们来看看它是如何工作的:

(1)首先,您在计算机上成功地安装了Stellar Repair for MS SQL后,请以管理员的身份运行该软件。您将看到一条消息(或是说明性质的对话框),它会询问您:数据库是否已被打开。如果您的MS SQL Server正在运行,则请停止该服务器,并将数据库复制到其他位置。

(2)接着,Stellar Repair会通过一个对话框的形式,引导您去选择已损坏的文件。为此,你可以按下“浏览”按钮,从目标系统中选择相应的文件。(注:这里选择文件必须是mdf文件后缀)

(3)在选择了已损坏的.mdf文件之后,您可以直接按下“修复”按钮。在该软件自动执行、并成功修复好受损的文件之后,Stellar Repair允许您将文件保存为多种扩展名类型。

2、Aryson SQL Database Recovery

下载链接:SQL Database Recovery Tool to Repair Corrupt MDF & LDF Files

Aryson SQL Database Recovery是业界最常用的一种在线工具,它可以轻松地恢复和还原各种已损坏的SQL数据库文件。同时,Aryson也能够支持扩展名为.mdf和.ndf等类型的文件。Aryson SQL Database Recovery可以在不损害文件的情况下,恢复数据并修复相对应的文件。下面让我们看看它是如何工作的:

在成功安装了Aryson SQL Database Recovery后,您将看到一个如下图所示的窗体。

 选中要修复的mdf文件,修复完成后,效果如下(注:对文件类型有*.mdf*就行)

3、Kernel For SQL Recovery

下载链接: SQL MDF Database Recovery Tool to Repair/Recover Corrupt SQL Databases

Kernel for SQL Recovery允许用户从已损坏的MDF/NDF文件中,轻松地恢复那些丢失了的数据库对象。它能够以原始的属性和结构,来检索所有的数据库对象,其中包括:表、触发器、规则、以及已删除的记录等。下面让我们来看看它是如何工作的:

在成功安装了Kernel for SQL Recovery后,您可以双击运行之。您将看到一个如下图所示的带有说明框的主窗体。在此,您可以选择某个已经损坏的.mdf文件

4、DiskInternals MSSQL Recoveryn

下载链接:MSSQL Recovery. Undelete and repair all kinds of .mdf databases | DiskInternals

DiskInternals MSSQL Recovery能够让数据库管理员开展包括取消删除、还原和修复MyISAM和InnoDB格式的、已损坏的MSSQL数据库等操作。它既支持Ext2/Ext3、exFAT、FAT、FAT32、NTFS或HFS等文件系统格式,又可以从那些无法访问的破损驱动器中恢复文件。MySQL Recovery还可以还原那些部分损坏的InnoDB数据库。下面让我们来看看它是如何工作的:

在成功安装了MSSQL Recovery后,您将看到一个如下图所示的窗体

 在此,我们只想使用其试用版,因此可以按下“启动试用版本”的按钮。接着,您将看到一个如下的窗体:

该窗体为您提供了如下两个按钮:

  • 修复现有的数据库
  • 从磁盘中恢复数据库

您可以根据实际情况选择任何一个按钮。在此,我使用了第二个选项。该软件将从计算机中加载并显示本地所有的磁盘。如下图所示:

 Oracle

数据库文件及日志文件位置

1、数据库文件介绍

Oracle 数据库包含四种文件类型:数据文件、控制文件、重做日志文件、参数文件。

数据库文件存储在D:\dev\oracle\product\10.2.0\oradata\orcl目录下,该目录主要存储数据库的控制文件、数据文件、重做日志文件。其中*.dbf文件对应数据库中每个表空间;.ctl文件为控制文件;.log文件对应重做日志文件组及其成员。

Oracle数据库恢复工具

1、Stellar Repair For Oracle

下载链接:https://cloud.stellarinfo.com/StellarPhoenixDatabaseRepairforOracle.exe?_ga=2.142654128.443878516.1647590345-1496113487.1647254232

安装完成后会让你选择oracle数据库文件,这话是Stellar Repair

2、Dbview For Oracle

下载地址:http://www.recovery-for-oracle.com/dbinfo/dbView.zip

dbview for oracle是一个和DUL类似的oracle数据库恢复工具,能在没有安装oracle数据库的电脑上,通过对数据库的数据文件进行分析, 得到oracle的数据、表、视图、 函数、存储过程、序列等数据库对象,最后使用OCI功能将这些数据库对象导入oracle数据库的软件。

dbview软件可以在不需要传送数据库文件给数据库恢复公司和不付费的情况下,就能让你查看已损坏数据库的数据情况,为您是否接受数据库恢复公司的服务提供决策依据。

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐