Freigeben über


sys.sp_flush_log (Transact-SQL)

Gilt für: SQL Server 2016 (13.x) und höhere Versionen

Leert das Transaktionsprotokoll der aktuellen Datenbank auf den Datenträger, wodurch alle verzögert dauerhaften Transaktionen, für die zuvor ein Commit ausgeführt wurde, festgeschrieben werden.

Wenn Sie die verzögerte Transaktionsdauerhaftigkeit aufgrund der Leistungsvorteile verwenden, gleichzeitig aber auch eine Zusicherung im Hinblick auf den maximalen Datenverlust benötigen, der bei einem Serverabsturz oder Failover auftreten darf, sollten Sie in regelmäßigen Abständen sys.sp_flush_log ausführen. Wenn Sie beispielsweise sicherstellen möchten, dass Sie nicht mehr als n Sekunden datenwert verlieren, würden Sie alle n Sekunden ausführensp_flush_log.

Durch die Ausführung von sys.sp_flush_log wird sichergestellt, dass alle verzögert dauerhaften Transaktionen, für die zuvor ein Commit ausgeführt wurde, in dauerhafte Transaktionen konvertiert werden. Weitere Informationen finden Sie im Thema Steuern der Transaktionsdauerhaftigkeit.

Transact-SQL-Syntaxkonventionen

Syntax

sp_flush_log
[ ; ]

Argumente

Keine.

Rückgabecodewerte

Ein Rückgabecode mit der Angabe eines 1 Erfolgs. Alle anderen Werte geben einen Fehler an.

Resultset

Keine.

Beispielcode

EXEC sys.sp_flush_log;