Saat menggunakan Microsoft SQL Server untuk melampirkan atau mengakses file database MDF yang rusak, Anda mungkin menemukan berbagai pesan kesalahan yang dapat membingungkan. Di bawah ini, kami akan mencantumkan semua kesalahan, diurutkan berdasarkan frekuensi. Untuk setiap kesalahan, kami akan menguraikan gejalanya, menjelaskan penyebab pastinya, dan memberikan contoh file beserta file yang diperbaiki olehnya DataNumen SQL Recovery. Ini akan membantu Anda lebih memahami kesalahan ini. Catatan 'xxx.MDF' akan mewakili nama korup Anda SQL Server File basis data MDF.
Berdasarkan SQL Server atau pesan kesalahan CHECKDB, ada tiga jenis kesalahan:
-
- Kesalahan alokasi: Kami tahu bahwa data dalam file MDF & NDF dialokasikan sebagai halaman. Dan ada beberapa halaman khusus yang digunakan untuk manajemen alokasi, sebagai berikut:
Jenis Halaman | Description |
Halaman GAM | Simpan info peta alokasi global (GAM). |
Halaman SGAM | Simpan info peta alokasi global (SGAM) bersama. |
Halaman IAM | Simpan info peta alokasi indeks (IAM). |
Halaman PFS | Simpan info alokasi PFS. |
Jika salah satu halaman alokasi di atas memiliki kesalahan, atau data yang dikelola oleh halaman alokasi ini tidak konsisten dengan informasi alokasi, maka SQL Server atau CHECKDB akan melaporkan kesalahan alokasi.
- Kesalahan konsistensi: Untuk halaman yang digunakan untuk menyimpan data, termasuk halaman data dan halaman indeks, jika SQL Server atau CHECKDB menemukan ketidakkonsistenan antara konten halaman dan checksum, kemudian mereka akan melaporkan kesalahan konsistensi.
- Semua kesalahan lainnya: Mungkin ada kesalahan lain yang tidak termasuk dalam dua kategori di atas.
- xxxx.mdf bukan file database utama. (Microsoft SQL Server, Kesalahan: 5171)
- Header untuk file 'xxxx.mdf' bukan header file database yang valid. Properti FILE SIZE salah. (Microsoft SQL Server, Kesalahan: 5172)
- SQL Server mendeteksi kesalahan I / O berbasis konsistensi logis: checksum salah
- SQL Server mendeteksi kesalahan I / O berbasis konsistensi logis: halaman robek
- Anda menghapus beberapa catatan atau beberapa tabel dalam database secara tidak sengaja.
SQL Server memiliki alat bawaan yang disebut DBCC, yang memiliki PERIKSADB dan MEJA PERIKSA opsi yang dapat membantu memperbaiki database MDF yang rusak. Namun, untuk file database MDB yang rusak parah, DBCC CHECKDB dan MEJA PERIKSA juga akan gagal.
Kesalahan konsistensi yang dilaporkan oleh CHECKDB:
- SQL Server mendeteksi kesalahan I / O berbasis konsistensi logis: checksum salah
- Baris di sys.xxx tidak memiliki baris yang cocok di sys.xxx.
- Kesalahan tabel: ID Objek ##, ID indeks ## akan dibangun kembali.
- Indeks tabel sistem ini tidak dapat dibuat ulang.
- ID Objek ##, ID indeks ##, ID partisi ##, ID unit alokasi ## (jenis Tidak Diketahui), ID halaman (##: 560) berisi ID halaman yang salah di header halamannya.
Kesalahan alokasi yang dilaporkan oleh CHECKDB:
- Halaman Index Allocation Map (IAM) Ditunjuk oleh Pointer Berikutnya dari Halaman IAM
- Tingkat (##: ##) di database ID ## ditandai dialokasikan di GAM, tetapi tidak ada SGAM atau IAM yang mengalokasikannya.
Semua kesalahan lain yang dilaporkan oleh CHECKDB:
- Gagal: (- #######) Menjalankan kueri “DBCC CHECKDB (xxxx) WITH NO_INFOMSGS” gagal dengan kesalahan berikut: “xxxx”.
- Kesalahan I / O (ID halaman buruk) terdeteksi selama pembacaan pada offset 0x ###### dalam file 'xxxx.mdf'.
- Sistem Tidak Dapat Mengaktifkan Cukup Database Untuk Membangun Kembali Log
- Kehilangan Data Saat Memperbaiki Dengan CHECKDB
- File tampaknya telah dipotong oleh sistem operasi.
- Selama mengulangi operasi yang dicatat dalam database 'xxxx', kesalahan terjadi pada ID catatan log.