Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

So ändern Sie das Wiederherstellungsmodell einer SQL Server-Datenbank mit T-SQL

SQL Server hat drei Wiederherstellungsmodelle; einfach, vollständig und massenprotokolliert. Jede Datenbank verwendet eine dieser Einstellungen.

Sicherungs- und Wiederherstellungsvorgänge erfolgen im Rahmen des Wiederherstellungsmodells der Datenbank

Sie können das Wiederherstellungsmodell einer Datenbank ändern, indem Sie ALTER DATABASE verwenden -Anweisung zusammen mit SET RECOVERY Option.

Die verfügbaren Optionen bei Verwendung von ALTER DATABASE zum Festlegen des Wiederherstellungsmodells sind:

  • SIMPLE
  • FULL
  • BULK_LOGGED

Sie benötigen ALTER Berechtigungen für die Datenbank, um solche Änderungen vorzunehmen.

Beispiel

Angenommen, wir haben eine Datenbank namens PetHotel .

Wir können das aktuelle Wiederherstellungsmodell überprüfen, indem wir die sys.databases abfragen Katalogansicht:

SELECT 
    name, 
    recovery_model_desc  
FROM sys.databases
WHERE name = 'PetHotel';

Ergebnis:

+----------+-----------------------+
| name     | recovery_model_desc   |
|----------+-----------------------|
| PetHotel | SIMPLE                |
+----------+-----------------------+

Das PetHotel Datenbank verwendet derzeit das einfache Wiederherstellungsmodell.

Ändern wir es in das vollständige Wiederherstellungsmodell:

USE master;  
ALTER DATABASE PetHotel 
SET RECOVERY FULL;

Fertig.

Lassen Sie uns nun das Ergebnis überprüfen:

SELECT 
    name, 
    recovery_model_desc  
FROM sys.databases
WHERE name = 'PetHotel';

Ergebnis:

+----------+-----------------------+
| name     | recovery_model_desc   |
|----------+-----------------------|
| PetHotel | FULL                  |
+----------+-----------------------+

Das Wiederherstellungsmodell wurde wie angegeben erfolgreich geändert.

Wichtige Überlegungen

Beim Wechsel vom einfachen Wiederherstellungsmodus in einen der anderen wird die Umstellung erst nach der ersten Datensicherung wirksam.

Daher sollten Sie, sobald Sie vom einfachen Wiederherstellungsmodus zum vollständigen oder massenprotokollierten Wiederherstellungsmodell wechseln, eine vollständige oder differenzielle Datenbanksicherung durchführen, um die Protokollkette zu starten.

Wenn Sie zu wechseln Deaktivieren Sie beim einfachen Wiederherstellungsmodell alle geplanten Jobs zum Sichern des Transaktionsprotokolls (beim einfachen Wiederherstellungsmodell werden keine Protokollsicherungen verwendet).

Außerdem ist das Massenwiederherstellungsmodell speziell für Massenvorgänge gedacht. Wenn Sie zu diesem Zweck vom vollständigen Wiederherstellungsmodell zum Massenprotokollierungsmodell wechseln, sollten Sie wieder in den vollständigen Wiederherstellungsmodus wechseln, sobald Sie die Massenvorgänge durchgeführt haben.

Stellen Sie nach dem Wechsel vom massenprotokollierten Wiederherstellungsmodell zurück zum vollständigen Wiederherstellungsmodell sicher, dass Sie das Protokoll sichern.

Eine Übersicht über jedes Wiederherstellungsmodell finden Sie unter Wiederherstellungsmodelle auf der Microsoft-Website.