Option "Protokoll am Prüfpunkt abschneiden" in SQL Server

11

Lange Geschichte, aber unsere langjährigen Berater (ehemalige Mitarbeiter) haben vor Jahren (etwa 2006) ein benutzerdefiniertes Skript für die Schnittstelle mit Tivoli Storage Manager geschrieben, und es scheint nach einer SQL Server DB-Option mit dem Namen zu suchen truncate log on checkpoint. Sie behaupten, dass dadurch verhindert wird, dass die Skripte funktionieren und Sicherungen für die Instanz SQL 2012 durchgeführt werden.

Ich bin der Meinung, dass dies eine vollständige BS ist, da ich keine solche Option über finden kann sp_configureund Backups überall außer in einer Instanz funktionieren. Ich möchte jedoch eine Landmine entfernen, wenn dies der Fall ist, und andere veraltete Elemente entfernen. Ich habe sie beim Verkäufer, aber ich habe kein hohes Maß an Vertrauen in irgendetwas, was sie sagen.

Die Recherchen, die ich durchgeführt habe, haben kaum mehr zurückgegeben, als es vielleicht eine Option für SQL 2000 oder eine Sybase-Option war. Eine weitere Behauptung war, dass es in späteren Versionen (2008 und höher) implizit aufgerufen / verwendet wird, wenn das Wiederherstellungsmodell aktiviert ist SIMPLEund es keine explizite Option zum Ein- oder Ausschalten gibt.

Da der TRUNCATE LOGBefehl aufgrund der heutigen Funktionsweise von Transaktionsprotokollen veraltet ist, ist er meiner Meinung nach keine Option, die an dieser Stelle überhaupt abgefragt werden kann.

Da ich keine SQL Server 2000-Instanzen habe, hatte ich gehofft, jemand könnte sich daran erinnern oder es an einer überprüfen, die er herumliegen hat. Ich habe ihnen gesagt, dass ich nichts empfehlen kann. Ich hatte auch gehofft, dass jemand bestätigen kann, dass dies veraltet ist.

user3885315
quelle

Antworten:

9

Sie können sehen , noch (mindestens in SQL Server 2008R2) trunc. log on chkpt.verwenden sp_dboption, und Sie können die Datenbankoption eingestellt und

Geben Sie hier die Bildbeschreibung ein

Geben Sie hier die Bildbeschreibung ein

In SQL Server 2012 und höher wird ein netter Fehler angezeigt

Meldung 2812, Ebene 16, Status 62, Zeile 1 Gespeicherte Prozedur 'sp_dboption' konnte nicht gefunden werden.

Es liegt NUR aus Gründen der Abwärtskompatibilität da. In SQL Server 2000 und höher verfügt SQL Server über ein Konzept des Wiederherstellungsmodells, das definiert, wie die Protokollkürzung berücksichtigt wird. Bei einer einfachen Wiederherstellung wird beispielsweise nur ein Prüfpunkt das Protokoll abschneiden, während wie im vollständigen Wiederherstellungsmodus nur eine Protokollsicherung das Protokoll abschneidet .

Wenn Sie mehr über die Transaktionsprotokollverwaltung erfahren möchten, lesen Sie Treppen zur Transaktionsprotokollverwaltung

Nebenbei bemerkt, SybaseASE hat auch in der neueren Version Sybase 15.7 diese Option (tatsächlich hat es Duplikate trunc log on chkptund trunc. log on chkpt.die spätere ist die, die SQL Server in SQL 7.0 über SQL Server 2008R2 erhalten hat - siehe sp_dboption):

Geben Sie hier die Bildbeschreibung ein

Geben Sie hier die Bildbeschreibung ein

Kin Shah
quelle
So ziemlich wie ich dachte. Ich habe sp_dboption 2012 nicht gesehen, daher gehe ich davon aus, dass es entfernt wurde. Ich habe den SP im Jahr 2008 gefunden und tatsächlich ist die Option im Jahr 2008 vorhanden. Ich nehme gerne Ihr Wort, dass es nicht geändert werden kann. Ich möchte es nicht ändern, auch wenn es nicht veraltet ist. Vielen Dank für die Bestätigung und die Erklärung der Konzepte.
user3885315