Ich verwende den Protokollversand mit SQL Server 2008 R2.
Ich habe eine Situation, in der das sekundäre Datenbanklaufwerk keinen Speicherplatz mehr hat und keine Protokollversand-Transaktionsprotokolle anwendete.
Ich möchte dies beheben, indem ich die Datenbanken auf der sekundären Ebene lösche und den Protokollversand von Grund auf neu konfiguriere.
Das Problem, das ich jetzt habe, ist, dass sich meine sekundären Datenbanken im Wiederherstellungsstatus befinden und ich sie nicht löschen kann. Wie kann ich vorgehen?
Wenn ich zum Beispiel versuche, sie offline zu schalten, erhalte ich den Fehler:
ALTER DATABASE is not permitted while the database is in the Restoring state.
sql-server
log-shipping
Peter
quelle
quelle
Antworten:
oder nur
das
REPLACE
Überschreiben der vorhandenen Datenbank, tun es nur , wenn Sie sicher , dass Sie Ihre vorhandene Datenbank außer Kraft setzen möchten , wie Sie erwähnten Sie sich nicht interessieren, sie löschenWIEDERHERSTELLEN MIT WIEDERHERSTELLUNG ist das Standardverhalten, bei dem die Datenbank durch Zurücksetzen der nicht festgeschriebenen Transaktionen einsatzbereit bleibt. Zusätzliche Transaktionsprotokolle können nicht wiederhergestellt werden.
Das sollte die Datenbank online bringen. Dann können Sie es löschen und erneut versuchen.
quelle
Am besten schreibe ich diesen Befehl 'drop database [database name]' und erstelle dann einen neuen mit demselben Namen und stelle dann die Datenbank aus einer anderen .bak-Datei wieder her, da die .bak-Datei beschädigt oder fehlerhaft ist.
quelle