2010-08-05 09:21:51.31 spid11 錯誤: 823,嚴重度: 24,狀態: 2
2010-08-05 09:21:51.31 spid11 I/O error (torn page) detected during read at offset 0x0000116496a000 in file 'd:/Microsoft SQL Server/MSSQL/data/xxxxxxx_Data.MDF'.
======================================================
Description&Solution:
Torn_page_detection:
This recovery option allows SQL Server to detect incomplete I/O operations caused by power failures or other system outages.
When set to ON, this option causes a bit to be reversed for each
512-byte sector in an 8-kilobyte (KB) database page when the page is
written to disk. If a bit is in the wrong state when the page is later
read by SQL Server, the page was written incorrectly; a torn page is
detected. Torn pages are usually detected during recovery because any
page that was written incorrectly is likely to be read by recovery.
Although SQL Server database pages are 8 KB, disks perform I/O
operations using a 512-byte sector. Therefore, 16 sectors are written
per database page. A torn page can occur if the system fails (for
example, due to power failure) between the time the operating system
writes the first 512-byte sector to disk and the completion of the 8-KB
I/O operation. If the first sector of a database page is successfully
written before the failure, the database page on disk will appear as
updated, although it may not have succeeded.
Note Using battery-backed disk caches can ensure that data is successfully written to disk or not written at all.
If a torn page is detected, an I/O error is raised and the connection is
killed. If the torn page is detected during recovery, the database is
also marked suspect. The database backup should be restored, and any
transaction log backups applied, because it is physically inconsistent.
By default, TORN_PAGE_DETECTION is ON.