2009-07-31 5 views
0

Ich habe einen nächtlichen Job, der eine Reihe von Einsätzen tut. Da ich ein vollständiges Wiederherstellungsmodell habe, erhöht dies die Größe meines Transaktionsprotokolls.SQL Server nächtliche Job-Protokoll-Management-Strategie

Derzeit habe ich meine Protokolldatei groß genug, um diese Transaktionen unterzubringen, aber das Problem ist, dass das Transaktionslog im Laufe des Tages meist leer ist.

Ist es (abgesehen von Speicherplatz) ein Problem, ein großes (meist leeres) Transaktionslog zu haben?

Ich denke darüber nach, die Datenbank auf einfache Wiederherstellung vor dem Job zu wechseln, den Job auszuführen und dann wieder auf vollständige Wiederherstellung umzustellen. Ich kann die Transaktionsprotokolle einfach nicht sichern lassen, bis unsere nächtliche differenzielle Sicherung verfügbar ist, und dann kann ich die Transaktionsprotokollsicherung erneut starten.

Vorschläge?

Antwort

2

Ich würde nichts tun. Oder SIMPLE dauerhaft haben.

Wenn das Wiederherstellungsmodell wieder auf "voll" gesetzt wird, ist eine vollständige Sicherung erforderlich, um die Integrität zu erhalten. Sie haben sonst eine Lücke in Ihren LSN-Ketten.

Sie haben differenzielle Sicherung erwähnt, also nehme ich an, dass Ihr voll ist nicht jede Nacht.

Wenn Sie dies zusammensetzen, bedeutet dies, dass Sie mehr Speicherplatz für Ihre vollständige Sicherung benötigen als für die LDF-Datei.

+0

Das war irgendwie meine Schlussfolgerung ... es scheint nur albern, dieses riesige Transaktionslog für einen einzigen Job zu haben. Ich dachte darüber nach, es zu verkleinern, aber zu wissen, dass es fragmentiert wurde, gefällt mir auch nicht. – Rob

0

Ich würde es voll halten und, wenn es hart auf hart kommt, erzwinge Log-Backups während des nächtlichen Jobs, um die Protokollgröße klein zu halten. Auch ist es OK, das Protokoll zu verkleinern, wenn Sie wirklich müssen, dh. Es wuchs einmal aufgrund einer einmaligen Operation und es wird nicht wieder wachsen. Die Fragmentierungsprobleme gelten für Datendateien, Protokolldateien haben eine völlig andere Struktur und Zuordnungsmuster. Nur nicht die Angewohnheit des ständigen Schrumpfens.

Ich sage das, weil wenn Sie tun haben eine Backup-Wiederherstellungsstrategie bereits an Ort und Stelle scheint es albern zu mir, um das Fenster von Datenverlust von 'letzten Log-Backup' zu 'letzten differenziellen Backup' zu erhöhen. Wir sprechen von einer Änderung von 10-30 Minuten (typische Protokoll-Backup-Frequenz) auf 3-24 Stunden (typische Differenzfrequenz). Sie werden nicht in der Lage sein, Differentials so oft wie Log-Backups zu machen, da Differentiale in der Größe wachsen (beginnend mit dem zweiten Differential nach dem vollen jedes Differentials ist mindestens so groß wie vorheriges Differenzial). Protokollsicherungen sichern nur das Protokoll seit der letzten Sicherung, sodass sie in der Größe relativ konstant bleiben. Auch mit einem SIMPLE-Modus können Sie keinen Log-Tail-Backup-Versuch durchführen und alle Daten im Falle eines Absturzes wiederherstellen.

Es scheint nur, Sie handeln von einem Los mehr, die Sie mit der Verringerung der Größe der Protokolldatei gewinnen.

+0

Ich meinte, ich würde es die ganze Zeit voll machen und grundsätzlich nichts mit den Log-Größen machen. I haben den Speicherplatz für diese großen Dateien, es scheint nur, es ist nicht das Richtige zu tun (mit großen Protokolldateien, die nicht verwendet werden) ... – Rob

Verwandte Themen