none
页扇区损坏,SQLSERVER将如何处理? RRS feed

  • 问题

  • 如果遇到硬件故障,如:页的某个扇区损坏,SQLSERVER将如何处理呢(在写入数据的时候,或者写入数据没有遇到故障,而过了一段时间又去读取的时候遇到了故障)?
    是否能够有什么方法模拟这样一个环境出来?
    2012年2月6日 7:51

答案

  • 把sql停掉,直接修改数据库文件即可。

    sql在下次使用这页的时候,会把这页标记为错误。这页上的数据会被破坏,除非这页的数据是重要的系统表,其它数据不会有影响。

    有mirror的话,能够自动修复这类错误。


    想不想时已是想,不如不想都不想。

    2012年2月7日 12:41
    版主

全部回复

  • In that case, you can create new table and copy as much data as possible from bad table to new table. Ensure you have good db and log backups for point of time recovery. 
    2012年2月6日 14:40
  • 这个环境不好模拟吧。

    建一个虚拟机,其中装对应的sqlserver,然后,新加一块小点的硬盘,比如几十M,然后在其上建一个数据库,其中导入一些规则的数据。

    把虚拟机关了。

    在主机上,用utrledit之类的二进制编辑工具,打开对应的硬盘虚拟机文件,看准对应的地方,修改,然后,保存。

    在开虚拟机,试图恢复在小盘上的数据。

     

    2012年2月6日 21:48
  • 把sql停掉,直接修改数据库文件即可。

    sql在下次使用这页的时候,会把这页标记为错误。这页上的数据会被破坏,除非这页的数据是重要的系统表,其它数据不会有影响。

    有mirror的话,能够自动修复这类错误。


    想不想时已是想,不如不想都不想。

    2012年2月7日 12:41
    版主
  • 把sql停掉,直接修改数据库文件即可。

    sql在下次使用这页的时候,会把这页标记为错误。这页上的数据会被破坏,除非这页的数据是重要的系统表,其它数据不会有影响。

    有mirror的话,能够自动修复这类错误。


    想不想时已是想,不如不想都不想。

    你好,问下如何直接修改数据库文件?

    有工具的吗?

    2012年2月22日 9:38
  • Yes, need tool to open file.
    2012年2月22日 14:24
  • SQL SERVER如何处理只需要了解一下。。自己如何处理需要实践一下

    从备份恢复页或从镜像恢复页。。如果有的话


    Try SQL Server 2008 QQ:315054403 dgdba@hotmail.com

    2012年2月28日 3:54