13510228421
技术资料
SQL数据库质疑 SQL数据库可疑 SQL数据库显示正在恢复 SQL数据库无法附加
2014-07-16 11:07:17  

 SQL数据库质疑 SQL数据库可疑 SQL数据库显示正在恢复  SQL数据库无法附加

 

数据库为什么会出现故障?为什么突然坏了?该怎么预防损坏?下面我们根据多年经验给大家讲讲我们的看法。

 

   SQL数据库是微软的数据库,这种数据库市场占用率估计达60%,使用的人多了 报告损坏的也就多了。加上SQL数据库给人感觉属于中型数据库 操作简单 所以一般企业都没有专业SQL数据库管理员. 加上 病毒 分区损坏 阵列崩溃 UPS断电 硬盘坏道因素 数据库损坏也是常见的。

  

   不是只有SQL数据库会损坏,其他数据库一样会损坏,只不过大型数据库 配备有专人管理备份检测等,所以有损坏的情况大部分DBA自己处理了。

 

  下面我们来看看 SQL数据库常见故障有哪些

 

SQL数据库置疑 SQL2005及以上版本数据库会显示为数据库可疑或者数据库挂起)  这个报错 大家应该是比较容易看到

出现这个情况 是因为 文件损坏 至于损坏原因有很多 例如 病毒 数据库所在分区损坏 磁盘坏道 系统强制关机 重启 蓝屏 突然断电等情况.

 

预防方法:

1 定期检测数据库存储分区是否逻辑有问题 比如运行chkdsk d: 检测

 

2 定期检测磁盘是否有坏道, 可以使用网上的 坏道检测工具 例如HDDScan 2.8或者更高版本

3 定期更换电源 (电源这个东西是很脆弱的.建议使用做工非常好 价格比较贵的好电源) 防止电源不稳定 电容爆浆 自动重启,

 

4 内存条 这个东西也很重要 如果有灰尘或者内存条接触不良 电脑将会蓝屏死机。

 

5 有条件的话 就做数据库备份吧,对数据库checkdb检测 建议一天一检测,别怕麻烦。

 

6 建议数据库跟备份文件不要放在同一块盘,做好的备份一定要进行还原测试,免得你需要恢复备份的时候发现备份是坏的 就麻烦了。

 

7 SQL数据库损坏大多是 数据库正在工作 读写数据库页面时 数据库服务突然中止导致,数据库很多数据未及时写入到MDF文件 或正在写 没写完整,这样再次重启服务时 有的显示正在恢复 过一会就恢复OK,有的因为事务损坏导致无法回滚或者重做事务 数据库就挂了,起不来了 显示质疑.

 

SQL数据库置疑解决方法

 

 1出现置疑后 强烈建议不要动存储数据库的分区 不要往里面写入文件 不要在这个分区打包RAR 或者黏贴任何文件到这个分区,你可以把损坏的MDFLDF文件拷贝到其他分区 来尝试附加 很小一部分会直接附加成功 一旦附加成功 你可以执行DBCC CHECKDB检测数据库是否正常 出现红字 即为有错误。

 

如果修复不了 建议联系我们处理.

 

SQL数据库使用中 突然使用不了了 这种就要小心是磁盘坏道了。你可以尝试停止SQL服务 然后拷贝MDF LDF文件到其他分区 如果拷贝中出现 冗余错误 那就表示 文件处在坏道上.

对于这种情况 不建议使用文件系统修复坏扇区 他会打乱文件结构, 导致问题更严重最简单的方法是  下载一些数据恢复软件  用数据恢复软件打开分区 例如R-Studio    finaldata 都可以.

右键点击恢复即可。 他会跳过坏扇区. 恢复出来的文件需要您在加以检测 以确定损坏程度 然后在尝试修复。 至于坏道 你可以拿去专业维修硬盘的地方处理或者 你的数据库文件已经保存出来 并且也修复OK的情况下 你可以用文件系统检查错误修复或者用hddreg软件修复坏扇区.

 

数据库显示正在恢复, 或者阵列崩溃导致的数据库问题

 

阵列崩溃这种导致数据库文件损坏的 建议还是 先找出原因 从阵列入手,  下面主要讲讲 SQL数据库在使用过程中 如果突然断电 非法重启 非法关机 等带来的严重后果,

 

  数据库在很多客户端同时操作的时候 会产生大量的读写操作,为了保持数据库数据的一致性,SQL会将数据先缓存起来,等到事务完成在一次性的写入到SQL数据库物理页面

 

这个过程 可能涉及到 修改数据  增加数据 删除数据 查询数据  SQL会很忙,假如这时 断电了 关机了。蓝屏了 那么 再次启动数据库时 数据库就会显示恢复  

运气好的时候 SQL会恢复完成 数据库完美如初。 运气不好的时候 就会造成事务死锁或者事务损坏 或者 SQL数据库物理页面 校验损坏  导致恢复失败 变成置疑或者可疑 以及恢复挂起 或者长时间恢复不完成。

 

SQL数据库备份文件无法还原 

 

这个问题不得不说 很多人 不会经常检查数据库是否有错误,结果备份的时候 也不进行校验

结果备份文件是坏的 也不知道。等到那天需要还原的时候发现还原不了 那就是个悲剧了。

导致备份损坏的原因 还有 文件系统损坏 病毒破坏 阵列损坏 坏道等 日常我们使用数据库 只要 硬件 文件系统 等做良好的检测 预防 就会很好的 预防数据库的损坏。

 

数据库文件被删除 数据库被老备份误还原覆盖

 

因为数据库经常使用 所以99.9%的数据库在磁盘存储里 他并不是连续的,成碎片状.他们依靠文件链接 呈现在使用者眼前 一旦您的数据库文件被误删除 通常数据恢复软件恢复出来的文件是不对的,虽然文件大小 名字 是正确的,但是内容却不是SQL数据库,或者部分正常 大部分确实其他文件的数据。

 

 这种建议 找专业 人士解决。 自己保护好磁盘分区 防止二次破坏。

 

下面在来说说 数据库被老备份还原, 是不是还原完成 就表示 原数据库没有办法恢复了? 答案不是因为原始数据库 在磁盘扇区底层有没有被覆盖到 或者 是不是被覆盖完了 这个需要 利用专业工具 从磁盘剩余空间 查找原始数据库页面 是否还存在 来确定。

只要没有覆盖完, 还是可以恢复部分数据。

如果数据库被彻底覆盖是否还能恢复数据?这个要跟数据 数据库使用的是什么模式. 数据库其中完全模式 才是我们需要的 虽然他会影响性能但是损失一点性能换来数据库的安全 完全值得。极佳数据库急救中心目前开发的SQL数据库事务日志恢复工具 就是专门针对这类情况 开发的。从磁盘恢复丢失的完整模式LDF文件 从中恢复数据库记录

表被删除 表数据被删除 表数据值被更新问题

 

以上操作 如果您误执行了 可以利用老备份和事务日志来进行数据恢复,这里不得不提的数据库模式 完整模式  这种模式会记录数据库的事务操作,也就是说可以利用它来恢复数据以及撤销任何操作,所以在使用数据库过程中 强烈建议 使用完整模式。

常用的事务恢复工具 Log Explorer for SQL Serverv 网上都可以下载到 并且有恢复教程 .

一定要保护好 原始MDF LDF文件 ,自己无法恢复的时候 可以寻求专业人士帮助.

 

                                                    深圳极佳数据库急救中心

                                                    www.sql110.com

                                                    QQ254897536

[Print]  [Close]  

7x24小时服务  QQ 1186505712 Email 1186505712@qq.com  TEL  13510228421   陈工   
         本站所有资源版权归深圳市极佳电脑技术服务有限公司,禁止克隆本站,抄袭本站文章等侵权行为,否则我们必将追究其法律责任! 

地址:深圳市龙华区中海汇德理花园2栋1单元1903
copyright 2008-2022 极佳数据 ( SQL110.com ) All rights reserved 粤ICP备17000871号

在线解答
QQ762862548
在线解答
QQ1186505712
在线解答
QQ254897536
在线解答
在线解答
在线解答