Objaw:
Podczas próby dołączenia bazy danych .MDF w formacie SQL Server, pojawi się następujący komunikat o błędzie:
Dołączenie bazy danych nie powiodło się dla serwera „xxx”. (Microsoft.SqlServer.Smo)
Wystąpił wyjątek podczas wykonywania instrukcji języka Transact-SQL lub partii. (Microsoft.SqlServer.ConnectionInfo)
Nagłówek pliku „xxx.mdf” nie jest prawidłowym nagłówkiem pliku bazy danych. Właściwość FILE SIZE jest niepoprawna. (Micosoft SQL Server, Błąd: 5172)
gdzie „xxx.mdf” to nazwa pliku MDF do załączenia.
Zrzut ekranu z komunikatem o błędzie:
Dokładne wyjaśnienie:
Dane w pliku MDF są przechowywane jako strony, z których każda ma rozmiar 8 KB. Pierwsza strona, zwana stroną nagłówkową pliku, zawiera m.inost ważne informacje o całym pliku, w tym podpis pliku, rozmiar, kompatybilność i inne istotne szczegóły.
Jeśli strona nagłówka pliku MDF jest uszkodzona lub uszkodzona i nie może zostać rozpoznana przez firmę Microsoft SQL Server, następnie SQL Server pomyśli, że nagłówek jest nieprawidłowy i zgłosi ten błąd.
Możesz skorzystać z naszego produktu DataNumen SQL Recovery aby odzyskać dane z uszkodzonego pliku MDF i rozwiązać ten błąd.
Przykładowe pliki:
Przykładowe uszkodzone pliki MDF, które spowodują błąd:
SQL Server wersja | Uszkodzony plik MDF | Plik MDF naprawiony przez DataNumen SQL Recovery |
SQL Server 2005 | Błąd2_1.mdf | Błąd2_1_fixed.mdf |
SQL Server 2008 R2 | Błąd2_2.mdf | Błąd2_2_fixed.mdf |
SQL Server 2012 | Błąd2_3.mdf | Błąd2_3_fixed.mdf |
SQL Server 2014 | Błąd2_4.mdf | Błąd2_4_fixed.mdf |