semptom:

Kullanırken DBCC CHECKDB ile REPAIR_ALLOW_DATA_LOSS Bozuk bir .MDF veritabanını onarmak için aşağıdaki gibi parametre:

DBCC CHECKDB (xxxx, "REPAIR_ALLOW_DATA_LOSS")

aşağıdaki hata mesajını görüyorsunuz:

"Xxxx" için DBCC sonuçları.
CHECKDB, 'xxxx' veritabanında 0 tahsis hatası ve 0 tutarlılık hatası buldu.
Msn 824, Seviye 24, Durum 2, Satır 8
SQL Server mantıksal tutarlılık tabanlı bir G / Ç hatası algıladı: yanlış sağlama toplamı (beklenen: 0xea8a9a2f; gerçek: 0x37adbff8). 'Xxxx.mdf' dosyasında 1x28 ofsetinde 39 veri tabanında sayfa (0:00000000038000) okunurken meydana geldi. İçindeki ek mesajlar SQL Server hata günlüğü veya sistem olay günlüğü daha fazla ayrıntı sağlayabilir. Bu, veritabanı bütünlüğünü tehdit eden ve derhal düzeltilmesi gereken ciddi bir hata durumudur. Tam bir veritabanı tutarlılık denetimi (DBCC CHECKDB) tamamlayın. Bu hata birçok faktörden kaynaklanabilir; Daha fazla bilgi için, bkz SQL Server Çevrimiçi Kitaplar.

burada 'xxxx.mdf', onarılmakta olan bozuk MDF dosyasının adıdır. CHECKDB söylese de

CHECKDB, 'xxxx' veritabanında 0 tahsis hatası ve 0 tutarlılık hatası buldu.

Bu hala bir tutarlılık hatasıdır (Mesaj 824) veritabanında.

Hata mesajının ekran görüntüsü:

mantıksal tutarlılık tabanlı G / Ç hatası: yanlış sağlama toplamı

Bozulma ciddi ise, sürekli hata mesajları olacaktır (Mesaj 824), aşağıdaki gibi:

Msn 824, Seviye 24, Durum 6, Satır 2 SQL Server mantıksal tutarlılık tabanlı bir G / Ç hatası algıladı: yanlış sağlama toplamı (beklenen: 0x3d17dfef; gerçek: 0xd81748ef). 'Xxxx.mdf' dosyasında 1 ofsetinde 0 veri tabanında sayfa (39: 0000000000000000) okunurken meydana geldi. İçindeki ek mesajlar SQL Server hata günlüğü veya sistem olay günlüğü daha fazla ayrıntı sağlayabilir. Bu, veritabanı bütünlüğünü tehdit eden ve derhal düzeltilmesi gereken ciddi bir hata durumudur. Tam bir veritabanı tutarlılık denetimi (DBCC CHECKDB) tamamlayın. Bu hata birçok faktörden kaynaklanabilir; Daha fazla bilgi için, bkz SQL Server Çevrimiçi Kitaplar.

Msn 824, Seviye 24, Durum 6, Satır 4 SQL Server mantıksal tutarlılık tabanlı bir G / Ç hatası algıladı: yanlış sağlama toplamı (beklenen: 0x3d17dfef; gerçek: 0xd81748ef). 'Xxxx.mdf' dosyasında 1 ofsetinde 0 veri tabanında sayfa (39: 0000000000000000) okunurken meydana geldi. İçindeki ek mesajlar SQL Server hata günlüğü veya sistem olay günlüğü daha fazla ayrıntı sağlayabilir. Bu, veritabanı bütünlüğünü tehdit eden ve derhal düzeltilmesi gereken ciddi bir hata durumudur. Tam bir veritabanı tutarlılık denetimi (DBCC CHECKDB) tamamlayın. Bu hata birçok faktörden kaynaklanabilir; Daha fazla bilgi için, bkz SQL Server Çevrimiçi Kitaplar.

burada 'xxxx.mdf', onarılmakta olan bozuk MDF dosyasının adıdır.

Hata mesajının ekran görüntüsü:

boş

Yolsuzluk daha şiddetli ise, görebilirsiniz Mesaj 7909 şu Mesaj 824:

"Xxxx" için DBCC sonuçları.
CHECKDB, 'xxxx' veritabanında 0 tahsis hatası ve 0 tutarlılık hatası buldu.
Msn 824, Seviye 24, Durum 2, Satır 8
SQL Server mantıksal tutarlılık tabanlı bir G / Ç hatası algıladı: yanlış sağlama toplamı (beklenen: 0xcfcd2118; gerçek: 0x6fc599d6). 'Xxxx.mdf' dosyasında 1x1 ofsetinde 39 veri tabanında sayfa (0: 00000000002000) okunurken meydana geldi. İçindeki ek mesajlar SQL Server hata günlüğü veya sistem olay günlüğü daha fazla ayrıntı sağlayabilir. Bu, veritabanı bütünlüğünü tehdit eden ve derhal düzeltilmesi gereken ciddi bir hata durumudur. Tam bir veritabanı tutarlılık denetimi (DBCC CHECKDB) tamamlayın. Bu hata birçok faktörden kaynaklanabilir; Daha fazla bilgi için, bkz SQL Server Çevrimiçi Kitaplar.
Msn 7909, Seviye 20, Durum 1, Satır 8
Acil durum modu onarımı başarısız oldu. Yedeklemeden geri yüklemelisiniz.

burada 'xxxx' veritabanı adı ve 'xxxx.mdf' veritabanı fiziksel dosya adıdır.

not Mesaj 7909 birçok durumda meydana gelebilecek ciddi bir hatadır. SQL Server Veritabanının kurtarmanın ötesinde olduğunu düşünüyorum.

Hata mesajının ekran görüntüsü:

boş

Kesin Açıklama:

MDF dosyasındaki veriler 8KB olarak saklanır sayfaları. Her sayfanın isteğe bağlı bir sağlama toplamı alanı vardır.

DBCC CHECKDB komutu başlık sayfasında, PFS sayfasında ve bazı veri sayfalarında sağlama toplamı değerlerini bulursa ve sorunu düzeltemezse, bu hatayı bildirecektir (Mesaj 824). Bozulma şiddetliyse, sürekli hatalar olabilir (Mesaj 824) veya ardından başka bir hata (Mesaj 7909).

Ürünümüzü kullanabilirsiniz DataNumen SQL Recovery Verileri bozuk MDF dosyasından kurtarmak ve bu hatayı çözmek için.

Örnek Dosyalar:

Hataya neden olacak örnek bozuk MDF dosyaları (Tek Msg 824 hatası):

SQL Server versiyon Bozuk MDF dosyası MDF dosyası DataNumen SQL Recovery
SQL Server 2014 Hata1_3.mdf Error1_3_fixed.mdf

Hataya neden olacak örnek bozuk MDF dosyaları (Sürekli Msg 824 hataları):

SQL Server versiyon Bozuk MDF dosyası MDF dosyası DataNumen SQL Recovery
SQL Server 2014 Hata1_1.mdf Hata1_1_fixed.mdf

Hataya neden olacak örnek bozuk MDF dosyaları (Msg 824 hatası ve ardından Msg 7909 hatası):

SQL Server versiyon Bozuk MDF dosyası MDF dosyası DataNumen SQL Recovery
SQL Server 2014 Hata1_2.mdf Error1_2_fixed.mdf

 

Referanslar:

1. https://docs.microsoft.com/en-us/sql/relational-databases/errors-events/mssqlserver-824-database-engine-error?view=sql-server-ver15