Ändern der Zielwiederherstellungszeit einer Datenbank (SQL Server)
Gilt für:SQL Server
In diesem Artikel wird beschrieben, wie Sie mithilfe von SQL Server Management Studio oder Transact-SQL die Zielwiederherstellungszeit einer Datenbank in SQL Server festlegen oder ändern. Standardmäßig beträgt die Zielwiederherstellungszeit 60 Sekunden, und die Datenbank verwendet indirekte Prüfpunkte. Die Zielwiederherstellungszeit richtet eine Obergrenze der Wiederherstellungszeit für diese Datenbank ein.
Diese Einstellung wird sofort wirksam und erfordert keinen Neustart von SQL Server.
Hinweis
Die für eine bestimmte Datenbank angegebene obere Grenze durch die eingestellte Zielwiederherstellungszeit kann überschritten werden, wenn eine lang andauernde Transaktion zu übermäßig langen UNDO
-Zeiten führt.
Begrenzungen
Im Fall einer Arbeitsauslastung für Onlinetransaktionen bei einer Datenbank, die für indirekte Prüfpunkte konfiguriert ist, kann eine Verringerung der Leistung auftreten. Indirekte Checkpoints stellen sicher, dass die Anzahl der schmutzigen Seiten unter einem bestimmten Schwellenwert liegt, sodass die Datenbankwiederherstellung innerhalb der vorgesehenen Wiederherstellungszeit abgeschlossen ist. Die Konfigurationsoption „Wiederherstellungsintervall“ ermittelt die Wiederherstellungszeit über die Anzahl der Transaktionen. Im Gegensatz dazu greifen indirekte Prüfpunkte auf die Anzahl der modifizierten Seiten zurück.
Wenn indirekte Prüfpunkte für eine Datenbank aktiviert sind, die eine große Anzahl von Vorgängen empfängt, die schmutzige Seiten verursachen, kann der Hintergrundschreiber aggressives Leeren von schmutzigen Puffern auf den Datenträger starten, um sicherzustellen, dass die für die Wiederherstellung erforderliche Zeit innerhalb der in der Datenbank festgelegten Zielwiederherstellungszeit liegt. Dies kann zu einer zusätzlichen E/A-Aktivität auf bestimmten Systemen führen, was zu einem Leistungsengpässe beitragen kann, wenn das Datenträgersubsystem über oder in der Nähe des E/A-Schwellenwerts arbeitet.
Berechtigungen
Erfordert die ALTER
-Berechtigung für die Datenbank.
Verwenden von SQL Server Management Studio
Stellen Sie im Objekt-Explorer eine Verbindung mit einer Instanz der SQL Server-Datenbank-Engine her, und erweitern Sie diese Instanz.
Erweitern Sie den Container Datenbanken, und klicken Sie dann mit der rechten Maustaste auf die Datenbank, die geändert werden soll. Wählen Sie anschließend den Befehl Eigenschaften aus.
Wählen Sie im Dialogfeld Datenbankeigenschaften die Seite Optionen aus.
Geben Sie im Bereich Wiederherstellung im Feld Zielwiederherstellungszeit (Sekunden) die Anzahl von Sekunden als gewünschte Obergrenze der Wiederherstellungszeit für diese Datenbank an.
Verwenden von Transact-SQL
Stellen Sie eine Verbindung mit der Instanz von SQL Server her, auf der sich die Datenbank befindet.
Verwenden Sie die ALTER DATABASE-Anweisung wie folgt:
TARGET_RECOVERY_TIME = target_recovery_time { SECONDS | MINUTES }
Zielwiederherstellungszeit
Ab SQL Server 2016 (13.x) beträgt der Standardwert 1 Minute. Gibt bei einem Wert größer als 0 (der Standardwert für ältere Versionen) die Obergrenze der Wiederherstellungszeit für die angegebene Datenbank im Fall eines Absturzes an.
SEKUNDEN
Gibt an, dass target_recovery_time die Anzahl von Sekunden darstellt.
MINUTEN
Gibt an, dass target_recovery_time die Anzahl von Minuten darstellt.
Im folgenden Beispiel wird die Zielwiederherstellungszeit der
AdventureWorks2022
-Datenbank auf60
Sekunden festgelegt.ALTER DATABASE AdventureWorks2022 SET TARGET_RECOVERY_TIME = 60 SECONDS;