Zunächst muss ich zugeben, dass ich mit dem Konzept des Transaktionsprotokolls zu kämpfen habe. Ich meine - ich verstehe, dass es das Protokoll aller Transaktionen ist, die in der Datenbank stattfinden, aber wenn es darum geht, es innerhalb einer Aufgabe richtig in den Kontext zu setzen, fehlt mir offensichtlich etwas. Für alle, die die Frage beantworten werden, können Sie die Theorie hinter dem Transaktionsprotokoll erweitern.
Hauptfrage ist - Ich habe SQL Server 2008 und eine 2-GB-Datenbank, die gespiegelt werden muss (hat ein 12-GB-Transaktionsprotokoll). Wenn ich diese Datenbank nicht spiegeln würde, könnte ich vermutlich entweder in den einfachen Modus wechseln oder das Protokoll nach der Sicherung abschneiden. Aber in diesem Fall - was soll ich tun, wenn ich das Transaktionsprotokoll unter Kontrolle halten möchte? Soweit ich weiß, muss ich das gesamte Transaktionsprotokoll führen, wenn ich die Datenbank problemlos spiegeln möchte (führen Sie einfach eine vollständige Sicherung durch).
Gibt es einen Weg daran vorbei? Idealerweise wäre es möglich, eine Sicherung durchzuführen, bei der MDF und LDF jedes Mal in einer Datei gespeichert werden und nach Abschluss der Sicherung das Transaktionsprotokoll (LDF) in der Datenbank auf 0 reduziert wird. Das Problem bei diesem Szenario sind inkrementelle Sicherungen - wenn meine erste Sicherung erfolgt abgeschnittenes Protokoll, ich gehe davon aus, dass die zweite Sicherung auf die erste verweisen muss, wenn ich später spiegeln möchte (dh ich würde nicht nur eine, sondern mehrere Dateien behalten).
Also - kann mich jemand über dieses Thema aufklären? Ich verstehe, dass ich hier versuche, viele Lücken zu schließen, und dass meine vorgeschlagenen "Lösungen" möglicherweise nicht die besten sind, aber ich würde es aufrichtig begrüßen, wenn mich jemand in Transaktionsprotokollen in die richtige Richtung treiben kann, wie sie sich auf die Spiegelung auswirken und am besten übt mit diesen beiden.
quelle
Um die Spiegelung nutzen zu können, muss sich die Datenbank im vollständigen Wiederherstellungsmodus befinden und Transaktionsprotokollsicherungen durchführen, damit die Protokolldatei nicht wächst. Wenn Sie die Protokollsicherungen nicht benötigen, löschen Sie sie nach x Stunden mit einem Wartungsplan. Sie müssen jedoch erstellt werden.
Um die Umgebung zu bereinigen, sollten Sie die Spiegelung entfernen, den Wiederherstellungsmodus auf einfach umschalten, die Größe der Protokolldatei über den empfohlenen Paul Randal Way verringern , in den vollständigen Wiederherstellungsmodus zurückkehren, vollständige und Protokollsicherungen einrichten und dann Ihre neu initialisieren Spiegel. Sie können versuchen, die Protokollgröße zu verringern, während die Spiegelung vorhanden ist, aber es ist viel einfacher, sie zuerst zu entfernen. 1 GB sollte keine schlechte Datenbank sein, um sie neu zu initialisieren.
quelle