以前觉得Page Restore确实挺好用的,而且确实用Page Restore快速解决过一些问题。但是仔细想想很多时候Page Restore可能根本用不上。

因为SQL Server在备份的时候是不会检查数据库的结构的,如果有一些Page损坏了,数据库仍然可以成功备份。

下面我用Pual提供的损坏数据库做个实验(下载路径:http://www.sqlskills.com/blogs/paul/sample-corrupt-databases-to-play-with/

通过错误信息可以看到数据库有很多页面损坏了。但是备份完成功。在这种情况下即使有备份也不可能使用Page Restore了,因为备份的时候已经损坏了。

所以一定要定期的做DBCC CHECKDB,有备份也不是所有数据都可以找回来。

吐槽一下Page Restore的更多相关文章

  1. uC/OS-II汇编代码

    ;*************************************************************************************************** ...

  2. Database Corruption ->> Fix Database In Suspect State

    昨天在工作中遇到一个情况,就是Development环境中的某台服务器上的某个数据库进入了Suspect状态.以前看书倒是知道说这个状态,不过实际工作当中从来没有遇到过.那么一些背景情况是这样的. 环 ...

  3. Exchange Database Status(Copy Status ,Content Index State,QueueLength,Move Status...)

    Copy Status Description Mounted The active copy is online and accepting client connections. Only the ...

  4. 恢复 MSSQL bak 文件扩展名数据(下)

    恢复 MSSQL bak 文件扩展名数据 一.概念: RESTORE Statements (Transact-SQL) Restores backups taken using the BACKUP ...

  5. (4.4)dbcc checkdb 数据页修复

    转自:http://blog.51cto.com/lzf328/955852 三篇 一.创建错误数据库 以前看Pual写过很多数据恢复的文章,他很多的测试都是自己创建的Corrupt数据库,其实我们自 ...

  6. RESTORE detected an error on page (0:0) in database

    在测试服务器还原生产服务器的一个数据库时遇到了下面错误: System.Data.SqlClient.SqlError: RESTORE detected an error on page (0:0) ...

  7. TFS Express backup and restore

    When we setup source control server, we should always make a backup and restore plan for it. This ar ...

  8. Dapper小型ORM的使用(随便吐槽下公司)

    近来公司又有新项目要做,之前做项目用过蛮多ORM,包括ef,NetTiers,ServiceStack.OrmLite等ROM,每种ORM都有一定的坑(或者说是使用者的问题吧~~).用来用去都觉的有一 ...

  9. [20140711] SQL Server page还原

    create DATABASE T --数据库不能是简单模式 go USE t GO )) GO INSERT INTO dbo.t ( value ) VALUES ( ) ) BACKUP DAT ...

随机推荐

  1. HDOJ 4414 Finding crosses 暴力!

    Finding crosses Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Tot ...

  2. redhat server 5.3内核升极2.6.18 升级到 3.5 装systemtap 原创

    1. 在 LINUX 3.5源代码目录下执行  yum install ncurses-devel     make menuconfig 2  打开内核跟踪事件,用于SYSTEMTAP跟踪 kern ...

  3. c#分页工具类,完美实现List分页

    using System; using System.Collections.Generic; using System.Linq; using System.Web; namespace Proje ...

  4. C# iTextSharp 生成 PDF

    使用iTextSharp在Asp.Net中操作PDF系列文章 目录 http://www.cnblogs.com/CareySon/category/332146.html 实战 iTextSharp ...

  5. iOS开发里的Bundle是个啥玩意?!

    初学iOS开发的同学,不管是自己写的,还是粘贴的代码,或多或少都写过下面的代码 [[NSBundle mainBundle] pathForResource:@"someFileName&q ...

  6. What is an OPC .NET Wrapper ?

    An OPC .NET wrapper is a software layer that makes OPC COM servers accessible from a .NET client app ...

  7. cocos2d-x 3.0 将cpp-tests编译成Android版本号APK文件

    cmd模式 进入到 E:\cocos2d-x-3.0rc1\cocos2d-x-3.0rc1\build 输入命令 android list targets 在输入: android-build.py ...

  8. 用最简单的例子理解观察者模式(Observer Pattern)

    假设有一个软件公司,每当有新产品推出,就把信息通知到一些客户. 把通知这个动作抽象成一个接口. public interface IService { void Notif(); } 客户如果想获得通 ...

  9. ubuntu下C++和C编程

      一.anjuta Anjuta DevStudio 的官方地址:http://anjuta.sourceforge.net/Anjuta是一个C/C++ IDE,它最大的特色是灵活,同时打开多个文 ...

  10. java 查询oracle数据库所有表DatabaseMetaData的用法

    DatabaseMetaData的用法(转) 一 . 得到这个对象的实例 Connection con ; con = DriverManager.getConnection(url,userName ...