数据库置疑没有办法做数据库备份使用DBCC WRITEPAGE的方法
数据库置疑没有办法做数据库备份使用DBCC writepage的方法
USE master IF DB_ID('TestDB') IS NOT NULL DROP DATABASE TestDB GO CREATE DATABASE TestDB GO USE TestDB GO CREATE TABLE TestDB.dbo.t1 ( Field1 CHAR(10) ) GO INSERT INTO TestDB.dbo.t1 VALUES ( 'AAAAAAAAAA' ) GO SELECT * FROM TestDB.dbo.t1 DBCC TRACEON(3604) DBCC IND(TestDB, t1, 1) DBCC PAGE(TestDB, 1, 79,3) ALTER DATABASE testdb SET SINGLE_USER DBCC writepage(TestDB, 1, 2, 22, 2, 0x0600,1) ALTER DATABASE testdb SET MULTI_USER BACKUP DATABASE [testdb] TO DISK ='c:\testdbfull.bak' --消息 3013,级别 16,状态 1,第 1 行 --BACKUP DATABASE 正在异常终止。 --消息 824,级别 24,状态 2,第 1 行 --SQL Server 检测到基于一致性的逻辑 I/O 错误 校验和不正确(应为: 0x0aa170b9,但实际为: 0x0aa170bb)。在文件 'D:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\TestDB.mdf' 中、偏移量为 0x00000000004000 的位置对数据库 ID 11 中的页 (1:2) 执行 读取 期间,发生了该错误。SQL Server 错误日志或系统事件日志中的其他消息可能提供了更详细信息。这是一个威胁数据库完整性的严重错误条件,必须立即纠正。请执行完整的数据库一致性检查(DBCC CHECKDB)。此错误可以由许多因素导致;有关详细信息,请参阅 SQL Server 联机丛书。 BACKUP LOG [testdb] TO DISK ='c:\testdblog.bak' WITH NORECOVERY 消息 926,级别 14,状态 1,第 1 行 无法打开数据库 'TestDB'。恢复操作已将该数据库标记为 SUSPECT。有关详细信息,请参阅 SQL Server 错误日志。 消息 3013,级别 16,状态 1,第 1 行 BACKUP LOG 正在异常终止。 RESTORE DATABASE [testdb] WITH RECOVERY
用CONTINUE_AFTER_ERROR取出日志
BACKUP DATABASE [testdb] TO DISK ='c:\testdbfull.bak' WITH CONTINUE_AFTER_ERROR --消息 3013,级别 16,状态 1,第 1 行 --BACKUP DATABASE 正在异常终止。 --消息 824,级别 24,状态 2,第 1 行 --SQL Server 检测到基于一致性的逻辑 I/O 错误 校验和不正确(应为: 0x0aa170b9,但实际为: 0x0aa170bb)。在文件 'D:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\TestDB.mdf' 中、偏移量为 0x00000000004000 的位置对数据库 ID 11 中的页 (1:2) 执行 读取 期间,发生了该错误。SQL Server 错误日志或系统事件日志中的其他消息可能提供了更详细信息。这是一个威胁数据库完整性的严重错误条件,必须立即纠正。请执行完整的数据库一致性检查(DBCC CHECKDB)。此错误可以由许多因素导致;有关详细信息,请参阅 SQL Server 联机丛书。 --消息 3013,级别 16,状态 1,第 1 行 --BACKUP DATABASE 正在异常终止。 --消息 824,级别 24,状态 2,第 1 行 --SQL Server 检测到基于一致性的逻辑 I/O 错误 校验和不正确(应为: 0x0aa170b9,但实际为: 0x0aa170bb)。在文件 'D:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\TestDB.mdf' 中、偏移量为 0x00000000004000 的位置对数据库 ID 11 中的页 (1:2) 执行 读取 期间,发生了该错误。SQL Server 错误日志或系统事件日志中的其他消息可能提供了更详细信息。这是一个威胁数据库完整性的严重错误条件,必须立即纠正。请执行完整的数据库一致性检查(DBCC CHECKDB)。此错误可以由许多因素导致;有关详细信息,请参阅 SQL Server 联机丛书。 BACKUP LOG [testdb] TO DISK ='c:\testdblog.bak' WITH NORECOVERY,CONTINUE_AFTER_ERROR --消息 926,级别 14,状态 1,第 1 行 --无法打开数据库 'TestDB'。恢复操作已将该数据库标记为 SUSPECT。有关详细信息,请参阅 SQL Server 错误日志。 --消息 3013,级别 16,状态 1,第 1 行 --BACKUP LOG 正在异常终止。