Das Transaktionsprotokoll [SQL Server]The Transaction Log (SQL Server)

GILT FÜR: jaSQL Server neinAzure SQL-DatenbankneinAzure SQL Data Warehouse neinParallel Data WarehouseAPPLIES TO: yesSQL Server noAzure SQL Database noAzure SQL Data Warehouse noParallel Data Warehouse

Jede SQL ServerSQL Server-Datenbank verfügt über ein Transaktionsprotokoll, in dem alle Transaktionen sowie die Datenbankänderungen erfasst werden, die von den einzelnen Transaktionen vorgenommen werden.Every SQL ServerSQL Server database has a transaction log that records all transactions and the database modifications made by each transaction.

Das Transaktionsprotokoll ist eine wichtige Komponente der Datenbank.The transaction log is a critical component of the database. Wenn ein Systemfehler auftritt, benötigen Sie dieses Protokoll, um Ihre Datenbank wieder in einen konsistenten Zustand zu versetzen.If there is a system failure, you will need that log to bring your database back to a consistent state.

Informationen zur Transaktionsprotokollarchitektur und den internen Gegebenheiten finden Sie im Handbuch zur Architektur und Verwaltung von Transaktionsprotokollen in SQL Server.For information about the transaction log architecture and internals, see the SQL Server Transaction Log Architecture and Management Guide.

Warnung

Dieses Protokoll sollten Sie nicht löschen oder verschieben, wenn Sie sich über die Auswirkungen dieses Vorgangs nicht vollständig im Klaren sind.Never delete or move this log unless you fully understand the ramifications of doing so.

Tipp

Einige bekannte gute Ausgangspunkte für das Anwenden von Transaktionsprotokollen während der Datenbankwiederherstellung werden durch Prüfpunkte vorgegeben.Known good points from which to begin applying transaction logs during database recovery are created by checkpoints. Weitere Informationen finden Sie unter Datenbankprüfpunkte (SQL Server).For more information, see Database Checkpoints (SQL Server).

Vom Transaktionsprotokoll unterstützte OperationenOperations supported by the transaction log

Das Transaktionsprotokoll unterstützt die folgenden Vorgänge:The transaction log supports the following operations:

  • Wiederherstellen einzelner Transaktionen.Individual transaction recovery.
  • Wiederherstellen aller unvollständigen Transaktionen, wenn SQL ServerSQL Server gestartet wird.Recovery of all incomplete transactions when SQL ServerSQL Server is started.
  • Ausführen eines Rollforwards für eine wiederhergestellte Datenbank, Datei, Dateigruppe oder Seite bis zu dem Punkt, an dem der Fehler aufgetreten ist.Rolling a restored database, file, filegroup, or page forward to the point of failure.
  • Unterstützen der Transaktionsreplikation.Supporting transactional replication.
  • Lösungen zur Unterstützung von Hochverfügbarkeit und Notfallwiederherstellung: AlwaysOn-VerfügbarkeitsgruppenAlways On availability groups, Datenbankspiegelung und Protokollversand.Supporting high availability and disaster recovery solutions: AlwaysOn-VerfügbarkeitsgruppenAlways On availability groups, database mirroring, and log shipping.

Wiederherstellen einzelner TransaktionenIndividual transaction recovery

Wenn eine Anwendung eine ROLLBACK-Anweisung ausgibt oder die Datenbank-Engine einen Fehler erkennt (z.B. die unterbrochene Verbindung mit einem Client), wird anhand der Protokolldatensätze für die Änderungen, die von einer nicht abgeschlossenen Transaktion vorgenommen wurde, ein Rollback ausgeführt.If an application issues a ROLLBACK statement, or if the Database Engine detects an error such as the loss of communication with a client, the log records are used to roll back the modifications made by an incomplete transaction.

Wiederherstellen aller unvollständigen Transaktionen, wenn SQL ServerSQL Server gestartet wirdRecovery of all incomplete transactions when SQL ServerSQL Server is started

Wenn ein Server ausfällt, bleiben die Datenbanken möglicherweise in einem Status, in dem einige Änderungen nicht vom Puffercache in die Datendateien geschrieben wurden, einige Änderungen von unvollständigen Transaktionen jedoch bereits in den Datendateien vorgenommen wurden.If a server fails, the databases may be left in a state where some modifications were never written from the buffer cache to the data files, and there may be some modifications from incomplete transactions in the data files. Beim Starten einer Instanz von SQL ServerSQL Server wird eine Wiederherstellung aller Datenbanken ausgeführt.When an instance of SQL ServerSQL Server is started, it runs a recovery of each database. Für jede Änderung, die im Protokoll aufgezeichnet wurde und die möglicherweise nicht in die Datendateien geschrieben wurde, wird ein Rollforward ausgeführt.Every modification recorded in the log which may not have been written to the data files is rolled forward. Für jede unvollständige Transaktion, die im Transaktionsprotokoll erkannt wird, wird anschließend ein Rollback ausgeführt, um sicherzustellen, dass die Integrität der Datenbank aufrechterhalten wird.Every incomplete transaction found in the transaction log is then rolled back to make sure the integrity of the database is preserved.

Ausführen eines Rollforwards für eine wiederhergestellte Datenbank, Datei, Dateigruppe oder Seite bis zu dem Punkt, an dem der Fehler aufgetreten istRolling a restored database, file, filegroup, or page forward to the point of failure

Nach einem Hardwareverlust oder Datenträgerfehler, der sich auf die Datendateien auswirkt, können Sie die Datenbank so wiederherstellen, wie sie zum Zeitpunkt des Ausfalls vorlag.After a hardware loss or disk failure affecting the database files, you can restore the database to the point of failure. Sie stellen zuerst die letzte vollständige und die letzte differenzielle Datenbanksicherung und anschließend die nachfolgende Folge von Transaktionsprotokollsicherungen bis zu dem Punkt wieder her, an dem der Fehler aufgetreten ist.You first restore the last full database backup and the last differential database backup, and then restore the subsequent sequence of the transaction log backups to the point of failure.

Beim Wiederherstellen der einzelnen Protokollsicherungen übernimmt die Datenbank-Engine erneut sämtliche im Protokoll aufgezeichneten Änderungen, um für alle Transaktionen einen Rollforward auszuführen.As you restore each log backup, the Database Engine reapplies all the modifications recorded in the log to roll forward all the transactions. Sobald die letzte Protokollsicherung wiederhergestellt ist, verwendet die Datenbank-Engine die Protokollinformationen, um für sämtliche Transaktionen einen Rollback auszuführen, die zu diesem Zeitpunkt noch nicht abgeschlossen waren.When the last log backup is restored, the Database Engine then uses the log information to roll back all transactions that were not complete at that point.

Unterstützen der TransaktionsreplikationSupporting transactional replication

Der Protokolllese-Agent überwacht das Transaktionsprotokoll jeder für die Transaktionsreplikation konfigurierten Datenbank und kopiert die für die Replikation markierten Transaktionen aus dem Transaktionsprotokoll in die Verteilungsdatenbank.The Log Reader Agent monitors the transaction log of each database configured for transactional replication and copies the transactions marked for replication from the transaction log into the distribution database. Weitere Informationen finden Sie unter Funktionsweise der Transaktionsreplikation.For more information, see How Transactional Replication Works.

Unterstützen von Hochverfügbarkeits- und NotfallwiederherstellungslösungenSupporting high availability and disaster recovery solutions

Standbyserverlösungen, AlwaysOn-VerfügbarkeitsgruppenAlways On availability groups, Datenbankspiegelung und Protokollversand hängen in großem Umfang vom Transaktionsprotokoll ab.The standby-server solutions, AlwaysOn-VerfügbarkeitsgruppenAlways On availability groups, database mirroring, and log shipping, rely heavily on the transaction log.

In einem Szenario mit AlwaysOn-VerfügbarkeitsgruppenAlways On availability groups wird jedes Update einer Datenbank (des primären Replikats) sofort in separaten vollständigen Kopien der Datenbank (die sekundären Replikate) reproduziert.In an AlwaysOn-VerfügbarkeitsgruppenAlways On availability groups scenario, every update to a database, the primary replica, is immediately reproduced in separate, full copies of the database, the secondary replicas. Das primäre Replikat sendet jeden Protokolldatensatz sofort an die sekundären Replikate, in denen dieser eingehende Protokolldatensatz auf Verfügbarkeitsgruppen-Datenbanken angewendet wird, wobei der Protokolldatensatz kontinuierlich weitergegeben wird.The primary replica sends each log record immediately to the secondary replicas which applies the incoming log records to availability group databases, continually rolling it forward. Weitere Informationen finden Sie unter Always On-Failoverclusterinstanzen.For more information, see Always On Failover Cluster Instances

In einem Protokollversandszenario sendet der primäre Server das aktive Transaktionsprotokoll der primären Datenbank an ein oder mehrere Ziele.In a log shipping scenario, the primary server sends the active transaction log of the primary database to one or more destinations. Jeder sekundäre Server stellt das Protokoll in seiner lokalen sekundären Datenbank wieder her.Each secondary server restores the log to its local secondary database. Weitere Informationen finden Sie unter Informationen zum Protokollversand.For more information, see About Log Shipping.

In einem Datenbankspiegelungsszenario wird jedes Update einer Datenbank (der Prinzipaldatenbank) sofort in einer separaten vollständigen Kopie der Datenbank (der Spiegeldatenbank) reproduziert.In a database mirroring scenario, every update to a database, the principal database, is immediately reproduced in a separate, full copy of the database, the mirror database. Die Prinzipalserverinstanz sendet jeden Protokolldatensatz sofort an die Spiegelserverinstanz, die die eingehenden Protokolldatensätze auf die Spiegeldatenbank anwendet, um kontinuierlich ein Rollforward dafür auszuführen.The principal server instance sends each log record immediately to the mirror server instance which applies the incoming log records to the mirror database, continually rolling it forward. Weitere Informationen finden Sie unter Datenbankspiegelung.For more information, see Database Mirroring.

Transaction Log characteristicsTransaction Log characteristics

Merkmale der SQL Server-Datenbank-EngineSQL Server Database Engine-Transaktionsprotokolle:Characteristics of the SQL Server-Datenbank-EngineSQL Server Database Engine transaction log:

  • Das Transaktionsprotokoll wird als eine separate oder mehrere Dateien in der Datenbank implementiert.The transaction log is implemented as a separate file or set of files in the database. Der Protokollcache wird getrennt vom Puffercache für Datenseiten verwaltet, woraus sich ein einfacher, schneller und zuverlässiger Code innerhalb des SQL Server-Datenbank-EngineSQL Server Database Engines ergibt.The log cache is managed separately from the buffer cache for data pages, which results in simple, fast, and robust code within the SQL Server-Datenbank-EngineSQL Server Database Engine. Weitere Informationen finden Sie unter Physische Architektur des Transaktionsprotokolls.For more information, see Transaction Log Physical Architecture.
  • Das Format der Protokolldatensätze und -seiten muss nicht dem Format von Datenseiten entsprechen.The format of log records and pages is not constrained to follow the format of data pages.
  • Das Transaktionsprotokoll kann in Form mehrerer Dateien implementiert werden.The transaction log can be implemented in several files. Für die Dateien kann eine automatische Erweiterung durch Festlegen des FILEGROWTH-Werts für das Protokoll definiert werden.The files can be defined to expand automatically by setting the FILEGROWTH value for the log. Auf diese Weise nimmt die Wahrscheinlichkeit ab, dass im Transaktionsprotokoll kein Speicherplatz mehr verfügbar ist. Zudem wird der Verwaltungsaufwand verringert.This reduces the potential of running out of space in the transaction log, while at the same time reducing administrative overhead. Weitere Informationen finden Sie unter ALTER DATABASE-Optionen FILE und FILEGROUP (Transact-SQL).For more information, see ALTER DATABASE (Transact-SQL) File and Filegroup Options.
  • Der Mechanismus zum erneuten Verwenden des freien Speicherplatzes in den Protokolldateien ist schnell und wirkt sich nur minimal auf den Transaktionsdurchsatz aus.The mechanism to reuse the space within the log files is quick and has minimal effect on transaction throughput.

Informationen zur Transaktionsprotokollarchitektur und den internen Gegebenheiten finden Sie im Handbuch zur Architektur und Verwaltung von Transaktionsprotokollen in SQL Server.For information about the transaction log architecture and internals, see the SQL Server Transaction Log Architecture and Management Guide.

Kürzung des TransaktionsprotokollsTransaction log truncation

Durch das Kürzen des Protokolls wird in der Protokolldatei Speicherplatz freigegeben, der vom Transaktionsprotokoll erneut verwendet werden kann.Log truncation frees space in the log file for reuse by the transaction log. Sie müssen regelmäßig das Transaktionsprotokoll abschneiden, damit es nicht den vorgesehenen Speicherplatz belegt.You must regularly truncate your transaction log to keep it from filling the alotted space. Verschiedene Faktoren können die Protokollkürzung verzögern, daher ist die Überwachung der Protokollgröße wichtig.Several factors can delay log truncation, so monitoring log size matters. Einige Vorgänge lassen sich minimal protokollieren, um deren Auswirkung auf die Größe des Transaktionsprotokolls zu reduzieren.Some operations can be minimally logged to reduce their impact on transaction log size.

Durch die Protokollkürzung werden inaktive virtuelle Protokolldateien (Virtual Log Files, VLFs) aus dem logischen Transaktionsprotokoll einer SQL ServerSQL Server-Datenbank gelöscht, wodurch Speicherplatz im logischen Protokoll zur Wiederverwendung durch das physische Transaktionsprotokoll freigegeben wird.Log truncation deletes inactive virtual log files (VLFs) from the logical transaction log of a SQL ServerSQL Server database, freeing space in the logical log for reuse by the Physical transaction log. Wird ein Transaktionsprotokoll nicht gekürzt, füllt sich dadurch der gesamte Speicherplatz des Datenträgers auf, der den zugehörigen physischen Protokolldateien zugeordnet ist.If a transaction log is never truncated, it will eventually fill all the disk space allocated to physical log files.

Um zu vermeiden, dass nur noch wenig Speicherplatz vorhanden ist, erfolgt die Kürzung automatisch nach den folgenden Ereignissen, sofern die Protokollkürzung nicht aus bestimmten Gründen verzögert wird:To avoid running out of space, unless log truncation is delayed for some reason, truncation occurs automatically after the following events:

  • Unter dem einfachen Wiederherstellungsmodell, nach einem Prüfpunkt.Under the simple recovery model, after a checkpoint.
  • Unter dem vollständigen oder massenprotokollierten Wiederherstellungsmodell, wenn ein Prüfpunkt seit der vorherigen Sicherung ausgelöst wurde, erfolgt die Kürzung nach einer Protokollsicherung (sofern es sich nicht um eine Kopiesicherung handelt).Under the full recovery model or bulk-logged recovery model, if a checkpoint has occurred since the previous backup, truncation occurs after a log backup (unless it is a copy-only log backup).

Weitere Informationen finden Sie unter Faktoren, die die Protokollkürzung verzögern können weiter unten in diesem Thema.For more information, see Factors that can delay log truncation, later in this topic.

Hinweis

Die Protokollkürzung verringert nicht die Größe einer physischen Protokolldatei.Log truncation does not reduce the size of the physical log file. Sie müssen zum Reduzieren der physischen Größe einer physischen Protokolldatei die Protokolldatei verkleinern.To reduce the physical size of a physical log file, you must shrink the log file. Informationen zum Verkleinern der Größe der physischen Protokolldatei finden Sie unter Verwalten der Größe der Transaktionsprotokolldatei.For information about shrinking the size of the physical log file, see Manage the Size of the Transaction Log File.
Berücksichtigen Sie jedoch die Faktoren, die die Protokollkürzung verzögern können.However, keep in mind Factors that can delay log truncation. Wenn der Speicherplatz nach einer Protokollverkleinerung wieder benötigt wird, vergrößert sich das Transaktionsprotokoll wieder und führt bei der Protokollvergrößerung infolgedessen zu einem Leistungsoverhead.If the storage space is required again after a log shrink, the transaction log will grow again and by doing that, introduce performance overhead during log grow operations.

Factors that can delay log truncationFactors that can delay log truncation

Bleiben Protokolldatensätze lange aktiv, verzögert sich die Transaktionsprotokollkürzung. Dabei kann sich das Transaktionsprotokoll auffüllen, wie bereits oben erwähnt wurde.When log records remain active for a long time, transaction log truncation is delayed, and the transaction log can fill up, as we mentioned earlier in this long topic.

Wichtig

Informationen zum Umgang mit einem voll aufgefüllten Transaktionsprotokoll finden Sie unter Troubleshoot a Full Transaction Log (SQL Server Error 9002).For information about how to respond to a full transaction log, see Troubleshoot a Full Transaction Log (SQL Server Error 9002).

Die Protokollkürzung kann tatsächlich aus verschiedenen Gründen verzögert werden.Really, Log truncation can be delayed by a variety of reasons. Sie können ermitteln, wodurch die Protokollkürzung verhindert wird, indem Sie die Spalten log_reuse_wait und log_reuse_wait_desc der Katalogsicht sys.databases abfragen.Learn what, if anything, is preventing your log truncation by querying the log_reuse_wait and log_reuse_wait_desc columns of the sys.databases catalog view. In der folgenden Tabelle werden die Werte dieser Spalten beschrieben.The following table describes the values of these columns.

log_reuse_wait valuelog_reuse_wait value log_reuse_wait_desc valuelog_reuse_wait_desc value BeschreibungDescription
00 NOTHINGNOTHING Derzeit ist mindestens eine wiederverwendbare virtuelle Protokolldatei (Virtual Log File, VLF) vorhanden.Currently there are one or more reusable virtual log files (VLFs).
11 CHECKPOINTCHECKPOINT Seit der letzten Protokollkürzung ist kein Prüfpunkt aufgetreten, oder der Kopf des Protokolls wurde noch nicht über eine virtuelle Protokolldatei (Virtual Log File, VLF) hinaus verschoben.No checkpoint has occurred since the last log truncation, or the head of the log has not yet moved beyond a virtual log file (VLF). (Alle Wiederherstellungsmodelle)(All recovery models)

Dies ist ein häufiger Grund für das verzögerte Kürzen von Protokollen.This is a routine reason for delaying log truncation. Weitere Informationen finden Sie unter Database Checkpoints (SQL Server).For more information, see Database Checkpoints (SQL Server).
22 LOG_BACKUPLOG_BACKUP Eine Protokollsicherung ist erforderlich, bevor das Transaktionsprotokoll gekürzt werden kann.A log backup is required before the transaction log can be truncated. (nur vollständiges bzw. massenprotokolliertes Wiederherstellungsmodell)(Full or bulk-logged recovery models only)

Bei Abschluss der nächsten Protokollsicherung wird möglicherweise ein Teil des Protokollspeicherplatzes zur Wiederverwendung freigegeben.When the next log backup is completed, some log space might become reusable.
33 ACTIVE_BACKUP_OR_RESTOREACTIVE_BACKUP_OR_RESTORE Es findet gerade eine Datensicherung oder eine Wiederherstellung statt (alle Wiederherstellungsmodelle).A data backup or a restore is in progress (all recovery models).

Verhindert eine Datensicherung die Protokollkürzung, kann das unmittelbare Problem u. U. durch Abbrechen des Sicherungsvorgangs behoben werden.If a data backup is preventing log truncation, canceling the backup operation might help the immediate problem.
44 ACTIVE_TRANSACTIONACTIVE_TRANSACTION Eine Transaktion ist aktiv (alle Wiederherstellungsmodelle):A transaction is active (all recovery models):

Möglicherweise ist beim Starten der Protokollsicherung eine Transaktion mit langer Ausführungszeit vorhanden.A long-running transaction might exist at the start of the log backup. In diesem Fall ist zum Freigeben von Speicherplatz möglicherweise eine weitere Protokollsicherung erforderlich.In this case, freeing the space might require another log backup. Hinweis: Transaktionen mit langer Laufzeit verhindern die Protokollkürzung unter allen Wiederherstellungsmodellen, einschließlich des einfachen Wiederherstellungsmodells, unter dem im Allgemeinen das Transaktionsprotokoll an jedem automatischen Prüfpunkt gekürzt wird.Note that long-running transactions prevent log truncation under all recovery models, including the simple recovery model, under which the transaction log is generally truncated on each automatic checkpoint.

Eine Transaktion wird verzögert.A transaction is deferred. Eine verzögerte Transaktion ist tatsächlich eine aktive Transaktion, deren Rollback aufgrund einer nicht verfügbaren Ressource blockiert ist.A deferred transaction is effectively an active transaction whose rollback is blocked because of some unavailable resource. Weitere Informationen zu den Ursachen für verzögerte Transaktionen und zum Auflösen ihres verzögerten Zustands finden Sie unter Verzögerte Transaktionen (SQL Server).For information about the causes of deferred transactions and how to move them out of the deferred state, see Deferred Transactions (SQL Server).

Lang andauernde Transaktionen können auch das Transaktionsprotokoll von „tempdb“ füllen.Long-running transactions might also fill up tempdb's transaction log. „tempdb“ wird implizit von Benutzertransaktionen für interne Objekte wie z.B. Arbeitstabellen zum Sortieren, Arbeitsdateien für Hashverfahren, Cursorarbeitstabellen und Zeilenversionsverwaltung verwendet.Tempdb is used implicitly by user transactions for internal objects such as work tables for sorting, work files for hashing, cursor work tables, and row versioning. Selbst wenn die Benutzertransaktion nur das Lesen von Daten umfasst (SELECT-Abfragen), werden möglicherweise interne Objekte erstellt und unter Benutzertransaktionen verwendet.Even if the user transaction includes only reading data (SELECT queries), internal objects may be created and used under user transactions. Anschließend kann das tempdb-Transaktionsprotokoll gefüllt werden.Then the tempdb transaction log can be filled.
55 DATABASE_MIRRORINGDATABASE_MIRRORING Die Datenbankspiegelung wurde angehalten, oder im Modus für hohe Leistung befindet sich die Spiegeldatenbank deutlich hinter der Prinzipaldatenbank.Database mirroring is paused, or under high-performance mode, the mirror database is significantly behind the principal database. (nur vollständiges Wiederherstellungsmodell)(Full recovery model only)

Weitere Informationen finden Sie unter Datenbankspiegelung (SQL Server).For more information, see Database Mirroring (SQL Server).
66 REPLICATIONREPLICATION Während der Transaktionsreplikationen wurden für die Veröffentlichungen relevante Transaktionen noch immer nicht für die Verteilungsdatenbank bereitgestellt.During transactional replications, transactions relevant to the publications are still undelivered to the distribution database. (nur vollständiges Wiederherstellungsmodell)(Full recovery model only)

Weitere Informationen zur Transaktionsreplikation finden Sie unter SQL Server Replication.For information about transactional replication, see SQL Server Replication.
77 DATABASE_SNAPSHOT_CREATIONDATABASE_SNAPSHOT_CREATION Eine Datenbank-Momentaufnahme wird erstellt.A database snapshot is being created. (Alle Wiederherstellungsmodelle)(All recovery models)

Dies ist ein häufiger, im Allgemeinen jedoch nur kurz andauernder Grund für ein verzögertes Kürzen eines Protokolls.This is a routine, and typically brief, cause of delayed log truncation.
88 LOG_SCANLOG_SCAN Ein Protokollscan wird ausgelöst.A log scan is occurring. (Alle Wiederherstellungsmodelle)(All recovery models)

Dies ist ein häufiger, im Allgemeinen jedoch nur kurz andauernder Grund für ein verzögertes Kürzen eines Protokolls.This is a routine, and typically brief, cause of delayed log truncation.
99 AVAILABILITY_REPLICAAVAILABILITY_REPLICA Ein sekundäres Replikat einer Verfügbarkeitsgruppe wendet Transaktionsprotokoll-Datensätze dieser Datenbank auf eine zugehörige sekundäre Datenbank an.A secondary replica of an availability group is applying transaction log records of this database to a corresponding secondary database. (vollständiges Wiederherstellungsmodell)(Full recovery model)

Weitere Informationen finden Sie unter Übersicht über Always On-Verfügbarkeitsgruppen (SQL Server).For more information, see Overview of Always On Availability Groups (SQL Server).
1010 - Nur interne VerwendungFor internal use only
1111 - Nur interne VerwendungFor internal use only
1212 - Nur interne VerwendungFor internal use only
1313 OLDEST_PAGEOLDEST_PAGE Ist eine Datenbank zur Verwendung von indirekten Prüfpunkten konfiguriert, ist die älteste Seite in der Datenbank u.U. älter als die Protokollfolgenummer (Log Sequence Number, LSN).If a database is configured to use indirect checkpoints, the oldest page on the database might be older than the checkpoint log sequence number (LSN). In diesem Fall kann die älteste Seite die Protokollkürzung verzögern.In this case, the oldest page can delay log truncation. (Alle Wiederherstellungsmodelle)(All recovery models)

Weitere Informationen zu indirekten Prüfpunkten finden Sie unter Database Checkpoints (SQL Server).For information about indirect checkpoints, see Database Checkpoints (SQL Server).
1414 OTHER_TRANSIENTOTHER_TRANSIENT Dieser Wert wird derzeit nicht verwendet.This value is currently not used.

Vorgänge, für die eine minimale Protokollierung verfügbar istOperations that can be minimally logged

Bei derminimalen Protokollierung werden nur die Informationen protokolliert, die zum Wiederherstellen der Transaktion ohne Unterstützung der Zeitpunktwiederherstellung erforderlich sind.Minimal logging involves logging only the information that is required to recover the transaction without supporting point-in-time recovery. In diesem Thema werden die Vorgänge aufgeführt, die unter dem massenprotokollierten Wiederherstellungsmodell minimal protokolliert werden (sowie unter dem einfachen Wiederherstellungsmodell, es sei denn, es wird eine Sicherung ausgeführt).This topic identifies the operations that are minimally logged under the bulk-logged recovery model (as well as under the simple recovery model, except when a backup is running).

Hinweis

Die minimale Protokollierung wird für speicheroptimierte Tabellen nicht unterstützt.Minimal logging is not supported for memory-optimized tables.

Hinweis

Unter dem vollständigen Wiederherstellungsmodellwerden alle Massenvorgänge vollständig protokolliert.Under the full recovery model, all bulk operations are fully logged. Sie können die Protokollierung für eine Reihe von Massenvorgängen jedoch verringern, indem Sie die Datenbank bei Massenvorgängen vorübergehend in das massenprotokollierte Wiederherstellungsmodell schalten.However, you can minimize logging for a set of bulk operations by switching the database to the bulk-logged recovery model temporarily for bulk operations. Die minimale Protokollierung ist effizienter als die vollständige Protokollierung und senkt die Wahrscheinlichkeit, dass ein umfangreicher Massenvorgang den verfügbaren Transaktionsprotokoll-Speicherplatz während einer Massentransaktion auffüllt.Minimal logging is more efficient than full logging, and it reduces the possibility of a large-scale bulk operation filling the available transaction log space during a bulk transaction. Wenn die Datenbank bei Aktivierung der minimalen Protokollierung jedoch beschädigt wird oder verloren geht, können Sie die Datenbank nicht bis zu dem Punkt wiederherstellen, an dem der Fehler aufgetreten ist.However, if the database is damaged or lost when minimal logging is in effect, you cannot recover the database to the point of failure.

Die folgenden Vorgänge, die unter dem vollständigen Wiederherstellungsmodell vollständig protokolliert werden, werden unter dem einfachen und massenprotokollierten Wiederherstellungsmodell minimal protokolliert:The following operations, which are fully logged under the full recovery model, are minimally logged under the simple and bulk-logged recovery model:

Wenn die Transaktionsreplikation aktiviert ist, werden BULK INSERT-Vorgänge auch unter dem massenprotokollierten Wiederherstellungsmodell vollständig protokolliert.When transactional replication is enabled, BULK INSERT operations are fully logged even under the Bulk Logged recovery model.

Wenn die Transaktionsreplikation aktiviert ist, werden SELECT INTO-Vorgänge auch unter dem massenprotokollierten Wiederherstellungsmodell vollständig protokolliert.When transactional replication is enabled, SELECT INTO operations are fully logged even under the Bulk Logged recovery model.

  • Teilupdates von Datentypen für hohe Werte mithilfe der .WRITE-Klausel in der UPDATE-Anweisung beim Einfügen oder Anfügen neuer Daten.Partial updates to large value data types, using the .WRITE clause in the UPDATE statement when inserting or appending new data. Beachten Sie, dass die minimale Protokollierung nicht verwendet wird, wenn vorhandene Werte aktualisiert werden.Note that minimal logging is not used when existing values are updated. Weitere Informationen zu Datentypen für hohe Werte finden Sie unter Datentypen (Transact-SQL).For more information about large value data types, see Data Types (Transact-SQL).

  • WRITETEXT -Anweisung und UPDATETEXT -Anweisung beim Einfügen oder Anfügen neuer Daten an die Datentypspalten text, ntextund image .WRITETEXT and UPDATETEXT statements when inserting or appending new data into the text, ntext, and image data type columns. Beachten Sie, dass die minimale Protokollierung nicht verwendet wird, wenn vorhandene Werte aktualisiert werden.Note that minimal logging is not used when existing values are updated.

    Warnung

    Die WRITETEXT- und die UPDATETEXT-Anweisung sind veraltet, sollten also in neuen Anwendungen nicht mehr verwendet werden.The WRITETEXT and UPDATETEXT statements are deprecated; avoid using them in new applications.

  • Wenn für die Datenbank das einfache oder massenprotokollierte Wiederherstellungsmodell festgelegt ist, werden einige Index-DDL-Vorgänge minimal protokolliert, unabhängig davon, ob der Vorgang offline oder online ausgeführt wird.If the database is set to the simple or bulk-logged recovery model, some index DDL operations are minimally logged whether the operation is executed offline or online. Die minimal protokollierten Indexvorgänge sind nachfolgend aufgeführt:The minimally logged index operations are as follows:

    • CREATE INDEX -Vorgänge (einschließlich indizierter Sichten).CREATE INDEX operations (including indexed views).

    • ALTER INDEX REBUILD- oder DBCC DBREINDEX-Vorgänge.ALTER INDEX REBUILD or DBCC DBREINDEX operations.

      Warnung

      Die DBCC DBREINDEX-Anweisung ist veraltet und sollte daher in neuen Anwendungen nicht verwendet werden.The DBCC DBREINDEX statement is deprecated; Do not use it in new applications.

    • Neuerstellungen neuer Heaps mit DROP INDEX (falls zutreffend).DROP INDEX new heap rebuild (if applicable). Aufhebungen von Indexseitenzuordnungen während eines DROP INDEX-Vorgangs werden immer vollständig protokolliert.Index page deallocation during a DROP INDEX operation is always fully logged.

Related tasksRelated tasks

Verwalten des TransaktionsprotokollsManaging the transaction log

Sichern des Transaktionsprotokolls (vollständiges Wiederherstellungsmodell)Backing Up the Transaction Log (Full Recovery Model)

Wiederherstellen des Transaktionsprotokolls (vollständiges Wiederherstellungsmodell)Restoring the Transaction Log (Full Recovery Model)

Siehe auchSee also

Handbuch zur Architektur und Verwaltung von Transaktionsprotokollen in SQL Server SQL Server Transaction Log Architecture and Management Guide
Steuern der Transaktionsdauerhaftigkeit Control Transaction Durability
Voraussetzungen für die minimale Protokollierung beim Massenimport Prerequisites for Minimal Logging in Bulk Import
Sichern und Wiederherstellen von SQL Server-Datenbanken Back Up and Restore of SQL Server Databases
Datenbankprüfpunkte (SQL Server) Database Checkpoints (SQL Server)
Anzeigen oder Ändern der Eigenschaften einer Datenbank View or Change the Properties of a Database
Wiederherstellungsmodelle (SQL Server)Recovery Models (SQL Server)
Transaktionsprotokollsicherungen (SQL Server) Transaction Log Backups (SQL Server)
sys.dm_db_log_info (Transact-SQL)sys.dm_db_log_info (Transact-SQL)
sys.dm_db_log_space_usage (Transact-SQL)sys.dm_db_log_space_usage (Transact-SQL)