Odzyskiwanie utraconej bazy danych

Witam,

Mam nietypowy problem, otóż posiadam plik bazy przykładowo " xyz.mdf" bez pliku logu. Czy istnieje szansa na odzyskanie pliku logu bez którego nie mogę odtworzyć bazy na nowo ?

Pozdrawiam! :slight_smile:

Zależy jaki miałeś typ odzyskiwanie bazy. Simple czy full recovery. W pierwszym przypadku, aktualne dane bazy powinny być w mdf, w drugim może być gorzej. Jeżeli transakcje nie zostały zapisane w pliku bazy.

Masz jakieś dumpy baz i pliku log? Dump loga można i powinno się robić tylko przy full recovery. Możesz spróbować utworzyć bazę o tej samej nazwie i podmienić plik. Musi być w identycznej lokalizacji. Możesz mieć też problem z uprawnianiami do pliku, więc będziesz musiał je poprawić.

Na przyszłość rób zrzuty baz, tzw. dumpy (hot backup) i co jakiś czas warto robić kopie plików przy wyłączonej usłudze SQL (cold backup) lub VSS lub programem, który robi zrzuty (snapshoty) VSS, np. Cobian. Przy full recovery plik log też musisz backupować. Jeśli to nie SQL Express, to możesz wykorzystać SQL Agent do kopii w innym przypadku skrypt SQL, który można wygenerować chociazby w SQL Management Studio i uruchamiać go w PowerShell z powiadomieniami na maila czy backup się wykonał czy nie.