Jak usunąć Przywracanie bazy danych

14

Korzystam z wysyłki dziennika z SQL Server 2008 R2.

Mam sytuację, w której na dodatkowym dysku bazy danych zabrakło miejsca i nie stosowałem dzienników transakcji wysyłania dzienników.

Chcę to naprawić, usuwając bazy danych na dodatkowym serwerze i konfigurując wysyłanie dziennika od zera.

Problem, który mam teraz, polega na tym, że moje pomocnicze bazy danych są w stanie przywracania i nie mogę ich usunąć. Jak mogę kontynuować?

Na przykład, jeśli spróbuję przełączyć je w tryb offline, pojawia się błąd,

ALTER DATABASE is not permitted while the database is in the Restoring state.
Piotr
źródło
nie możesz wydać polecenia alter w przywracającej bazie danych, będziesz musiał zrobić zrzut.
Jason Cumberland,

Odpowiedzi:

25
RESTORE DATABASE dbname 
FROM DISK = 'dbname .bak'
WITH REPLACE, RECOVERY --force restore 

Lub tylko

RESTORE DATABASE dbname WITH RECOVERY

REPLACEzastąpienia istniejącej bazy danych, należy to zrobić tylko wtedy, gdy jesteś pewien, że chcesz nadpisać istniejącą bazę danych, jak wspomniano dont care, aby go usunąć

PRZYWRACANIE Z ODZYSKIEM jest domyślnym zachowaniem, które pozostawia bazę danych gotową do użycia, wycofując niezatwierdzone transakcje. Nie można przywrócić dodatkowych dzienników transakcji.

To powinno doprowadzić bazę danych do trybu online. Następnie możesz go usunąć i spróbować ponownie.

AmmarR
źródło
Uważam, że to, co mówisz, powinno było zadziałać. Moim rozwiązaniem było jednak ponowne uruchomienie usługi SQL, a następnie usunięcie baz danych, które działały później.
Peter
prawda, gdy usługa jest wyłączona, usunięcie dzienników transakcji zawsze utworzy nowy. wszystkiego najlepszego
AmmarR
3

Najlepszym sposobem, jak zrobiłem z tym problemem, jest napisanie tego polecenia „upuść bazę danych [nazwa bazy danych]”, a następnie utwórz nową o tej samej nazwie, a następnie przywróć bazę danych z innego pliku .bak, ponieważ plik .bak jest uszkodzony lub uszkodzony.

Ashar
źródło
W pytaniu o uszkodzone kopie zapasowe nie ma wzmianki.
ypercubeᵀᴹ