8、SQL Server 数据库恢复全解析

SQL Server 数据库恢复全解析

1. 验证过程与可疑页面记录

在数据库验证过程中,如果在出现错误后仍让其继续运行,它会将损坏的页面记录到 MSDB 数据库中的新表——SUSPECT_PAGE 表中。每次 VERIFYONLY 命令发现可疑页面时,都会向该表中添加一行记录,最多可记录 1000 次。若单个备份文件产生超过 1000 个可疑页面,那就意味着存在严重问题需要解决,而且 SQL Server 的设计者认为此时继续记录错误意义不大。

2. 数据页面恢复

从 SQL Server 2005 开始,可使用 RESTORE 命令替换单个数据页面,支持离线和在线两种模式。若在正常操作中发现可疑页面,可使用在线模式。要使页面级恢复取得一定成功,数据库必须处于完整恢复模式。虽然大容量日志恢复模式可能可行,但实际上不建议依赖该模式进行页面恢复。

可恢复的仅为实际的数据页面,此技术不适用于日志文件中的页面、全局分配映射(GAM)页面、辅助全局分配映射(SGAM)页面或页面空闲空间(PFS)页面,仅与特定表或索引关联的数据页面适用。

恢复过程类似于完整恢复。确定要恢复的页面 ID 后,即可开始完整恢复,并仅指定需要替换的页面 ID。务必应用所有事务日志备份(包括尾日志备份),因为在完整备份之后,要恢复的页面可能已发生更改。示例代码如下:

RESTORE DATABASE AdventureWorks PAGE '20:1570,20:1571,20:1572'
FROM DISK='D:\SQLBackups\AWFull.bak'
WITH NORECOVERY;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值