Dzisiaj, po awarii zasilania, jedna baza danych (z odzyskiem: pełna) pokazuje „W trybie odzyskiwania” w SSMS. Więc:
moja baza danych (w trakcie odzyskiwania) (stan bazy danych: odzyskiwanie, zamknięcie)
Po zakończeniu w „procesie odzyskiwania” baza danych wyświetla nazwę moja baza danych bez „(w trakcie odzyskiwania)”. Myślałem, że problem został rozwiązany, ale tak nie było.
Kiedy uruchomiłem aplikację korzystającą z tej bazy danych, dodatkowy tekst „(w trakcie odzyskiwania)” pojawia się ponownie obok nazwy mojej bazy danych.
Czekałem, aż zakończy się „proces odzyskiwania”, a następnie przełączyłem bazę danych w tryb offline i przywróciłem ją do trybu online.
Zrestartowałem serwer, ponownie uruchomiłem komputer i kiedy moja aplikacja była uruchomiona, dodatkowy tekst pojawia się ponownie. W logach SQL Server kilka razy pojawia się komunikat „Uruchamianie bazy danych„ moja baza danych ”. Wygląda na to, że baza danych działa, ponieważ mogę wstawić dane, ale stan pokazuje, że coś się dzieje.
Dziennik serwera nie pokazuje niczego interesującego. Jedyną nienormalną rzeczą jest to, że mam 30 pozycji „Uruchamianie bazy danych„ moja baza danych ””.
Wiem, że po uruchomieniu serwera każda baza danych przechodzi proces odzyskiwania, zanim będzie gotowa do użycia. Ale w moim przypadku baza danych przechodzi do trybu online, a następnie pokazuje „moja baza danych (w trakcie odzyskiwania)”. Jeśli zamknę aplikację, baza danych przejdzie w stan: normalny. Doprowadza mnie to do szału.
Zainstalowałem nawet nową instancję programu SQL Server i umieściłem na niej starą bazę danych „myDatabase”. Problem nadal się zdarza.
Po uruchomieniu tego zapytania:
SELECT databasepropertyex('nyDatabase', 'STATUS')
Pokazuje odzyskiwanie, online, podejrzanego i powrót do trybu online, a następnie odzyskiwanie i tak dalej.