Triệu chứng:

Khi đang sử dụng DBCC KIỂM TRADB với REPAIR_ALLOW_DATA_LOSS tham số để sửa chữa cơ sở dữ liệu .MDF bị hỏng, như thế này:

DBCC CHECKDB(xxxx, 'REPAIR_ALLOW_DATA_LOSS')

bạn thấy thông báo lỗi sau:

Msg 824, cấp 24, trạng thái 2, dòng 2
SQL Server đã phát hiện lỗi I/O dựa trên tính nhất quán logic: id trang không chính xác (dự kiến ​​1:143; thực tế 0:9). Nó xảy ra trong quá trình đọc trang (1:143) trong cơ sở dữ liệu ID 39 ở độ lệch 0x0000000011e000 trong tệp 'C:Program FilesMicrosoft SQL ServerMSSQL12.SQL2014MSSQLDATAError1.mdf'. Thông báo bổ sung trong SQL Server nhật ký lỗi hoặc nhật ký sự kiện hệ thống có thể cung cấp thêm chi tiết. Đây là một tình trạng lỗi nghiêm trọng đe dọa tính toàn vẹn của cơ sở dữ liệu và phải được khắc phục ngay lập tức. Hoàn thành kiểm tra tính nhất quán của cơ sở dữ liệu đầy đủ (DBCC CHECKDB). Lỗi này có thể do nhiều yếu tố gây ra; để biết thêm thông tin, xem SQL Server Sách trực tuyến.
Msg 3313, cấp 21, trạng thái 1, dòng 2
Trong khi thực hiện lại thao tác đã ghi trong cơ sở dữ liệu 'Error1', đã xảy ra lỗi tại ID bản ghi nhật ký (135:752:2). Thông thường, lỗi cụ thể trước đó đã được ghi lại dưới dạng lỗi trong dịch vụ Nhật ký Sự kiện Windows. Khôi phục cơ sở dữ liệu từ bản sao lưu đầy đủ hoặc sửa chữa cơ sở dữ liệu.
Msg 3414, cấp 21, trạng thái 1, dòng 2
Đã xảy ra lỗi trong quá trình khôi phục, khiến cơ sở dữ liệu 'Error1' (39:0) không thể khôi phụctarting. Chẩn đoán các lỗi khôi phục và sửa chúng hoặc khôi phục từ một bản sao lưu tốt đã biết. Nếu lỗi không được sửa chữa hoặc dự kiến, hãy liên hệ với bộ phận Hỗ trợ Kỹ thuật.
Msg 824, cấp 24, trạng thái 2, dòng 2
SQL Server đã phát hiện lỗi I/O dựa trên tính nhất quán logic: id trang không chính xác (dự kiến ​​1:160; thực tế 0:41). Nó xảy ra trong quá trình đọc trang (1:160) trong cơ sở dữ liệu ID 39 ở độ lệch 0x00000000140000 trong tệp 'C:Program FilesMicrosoft SQL ServerMSSQL12.SQL2014MSSQLDATAError1.mdf'. Thông báo bổ sung trong SQL Server nhật ký lỗi hoặc nhật ký sự kiện hệ thống có thể cung cấp thêm chi tiết. Đây là một tình trạng lỗi nghiêm trọng đe dọa tính toàn vẹn của cơ sở dữ liệu và phải được khắc phục ngay lập tức. Hoàn thành kiểm tra tính nhất quán của cơ sở dữ liệu đầy đủ (DBCC CHECKDB). Lỗi này có thể do nhiều yếu tố gây ra; để biết thêm thông tin, xem SQL Server Sách trực tuyến.
Msg 824, cấp 24, trạng thái 2, dòng 4
SQL Server đã phát hiện lỗi I/O dựa trên tính nhất quán logic: id trang không chính xác (dự kiến ​​1:160; thực tế 0:41). Nó xảy ra trong quá trình đọc trang (1:160) trong cơ sở dữ liệu ID 39 ở độ lệch 0x00000000140000 trong tệp 'C:Program FilesMicrosoft SQL ServerMSSQL12.SQL2014MSSQLDATAError1.mdf'. Thông báo bổ sung trong SQL Server nhật ký lỗi hoặc nhật ký sự kiện hệ thống có thể cung cấp thêm chi tiết. Đây là một tình trạng lỗi nghiêm trọng đe dọa tính toàn vẹn của cơ sở dữ liệu và phải được khắc phục ngay lập tức. Hoàn thành kiểm tra tính nhất quán của cơ sở dữ liệu đầy đủ (DBCC CHECKDB). Lỗi này có thể do nhiều yếu tố gây ra; để biết thêm thông tin, xem SQL Server Sách trực tuyến.

trong đó 'Error1' là tên của cơ sở dữ liệu MDF bị hỏng đang được sửa chữa.

Tin nhắn 3313 cho biết thao tác nhật ký không thể được thực hiện.

Ảnh chụp màn hình thông báo lỗi:

Giải thích chính xác:

Khi CHECKDB không thể thực hiện thao tác được ghi nhật ký, nó sẽ báo lỗi Tin nhắn 3313 và cố gắng sửa lỗi. Nếu không khắc phục được lỗi thì việc khôi phục sẽ thất bại và sẽ dẫn đến nhiều lỗi hơn, chẳng hạn như Thông báo 3414 và Thông báo 824.

Bạn có thể sử dụng sản phẩm của chúng tôi DataNumen SQL Recovery để khôi phục dữ liệu từ tệp MDF bị hỏng và khắc phục lỗi này.

Các tệp mẫu:

Lấy mẫu các tệp MDF bị hỏng sẽ gây ra Tin nhắn 3313 lôi:

SQL Server phiên bản Tập tin MDF bị hỏng Tệp MDF được cố định bởi DataNumen SQL Recovery
SQL Server 2014 Lỗi9.mdf Error9_fixed.mdf

Tài liệu tham khảo: