为什么自己恢复的文件是坏的
数据库文件的特殊结构
数据库文件,按照块组成。您所看到的文件如下面的15个块一样,他们就是组成一个数据库最小的单位。而每个块
一般为512 1024 2048 4096 8192 16384 等大小字节。根据数据库类型不同以及实际的应用。块的大小默认选定。
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
为什么数据库0字节,以及数据库丢失,误删除等情况后,您自己使用数据恢复软件恢复的数据库不能附加或者附加后
有些表报错,或者您找到的文件根本不是源文件呢?
我们知道 数据库是按块存储,而文件在分区中存储是按照自己的簇存放,(这里的簇也可以理解为块)。由于数据库文件
经常的操作 查询 以及写入操作,数据库的块会增多或者减少 或者打乱存储位置,这样在实际磁盘的存储中就是下面的情况
块1 |
块2 |
其他数据 |
其他数据 |
其他数据 |
其他数据 |
块3 |
块4 |
其他数据 |
块5 |
块6 |
其他数据 |
其他数据 |
块7 |
块8 |
其他数据 |
块9 |
块10 |
块11 |
块12 |
数据恢复软件的恢复原理分为两种:
一是 根据 文件的簇链接 来把文件提取出来 优点是 文件较小的一般可以成功,或者 文件存储位置连续的可以成功。
缺点是 一旦文件簇链接被破坏或者消失 您恢复的文件就不是源文件或者恢复的文件不完整。
二是 根据数据库文件的头尾 在磁盘里面找相匹配的头 然后提取文件。 优点是 找到的肯定是数据库文件,缺点是 恢复
的文件大都不完整。强行修复缺少数据。
那么有没有一种办法 可以救援这种文件呢?
经过我们的研究, 数据库的块都有自己的页号和其他的一些参数,出现丢失 误删除 这些灾难普通的软件无能为力的时候,
可以借助这些参数 我们在磁盘中 搜索所有的数据库块,然后按照 每个数据库的块头参数 数据类型 分离出 一个个数据库。
这样我们就可以得到需要的数据库文件。 此技术我们早已用在实际的工作中,如果您的数据库出现灾难 不妨联系我们 找出
解决方法。
如果文件覆盖了,比如数据库强制还原了老的备份,。或者数据库误删除 丢失后 分区又写入了数据。比如数据库误删除后
又新建了数据库!这样还可以恢复吗?
事实上这种故障 可以理解为 技术加运气。 如果真的覆盖 那么以数据恢复业目前的技术没法解决。 说到运气 这里就是指 文件在磁盘底层没有被真的覆盖 或者没有被覆盖完。比如一个数据库文件100MB ,只覆盖了50MB ,那么还有50MB是可以救回来的。这就是技术的问题了、
总结 数据库文件和其他的文件 几乎都有自己的结构,比如块结构 类型结构 等等,。只是在用户眼里就是一个文件,但是结构开发跟分析上他就是若干个文件,这就是专业跟非专业的区别。数据出了 问题,要冷静 在C盘出问题的数据 立即关机,把盘挂到其他机子上解决。 在其他盘出现问题的数据,不要对出现问题的分区在做任何操作。不要往里面写入数据。我们苦口婆心的说这些 也是为了您的数据100%可以被恢复。 最妥的办法 就是 出问题了 先咨询专业人士 我该怎么做。 不想花钱 想自己做,在我们的指导下 您也可以做。愿意找我们 在联系我们都可以。一切都是为了数据安全!