In dieser Kategorie werde ich SQL Basics thematisieren. Nicht jeder der mit SQL Server in Kontakt kommt ist ein Profi mit jahrelanger SQL Erfahrung, nicht umsonst gibt es den schönen Begriff „Accidental DBA“. Die Beiträge sollen keine umfangreichen technischen Hintergründe liefern, sondern nur eine kurze Tipps bzw. hilfreiche Entscheidungsgrundlage sein. Im ersten Beitrag möchte ich mich mit den Sicherungsverfahren beschäftigen. Oft bestehen hinsichtlich der Sicherungsverfahren in SQL Server Unklarheiten. Vor allem wird häufig das vollständige Wiederherstellungsmodell ohne zugehörige Transaktionsprotokollsicherung oder mit zu langen Zeitintervallen eingesetzt. Das führt dann zu riesigen .ldf-Dateien und im Endeffekt zu vollgelaufenen Laufwerken.

Als Faustregel für die Auswahl der Sicherungsverfahren gilt im Allgemeinen:

  • Einfaches Modell Vollständiges Backup (.bak)
  • Vollständiges/massenprotokolliertes Modell Vollständiges Backup (.bak) & Transaktionsprotokollsicherungen (.trn)

Die Transaktionslogsicherungen sollten in kurzen Intervallen durchgeführt werden damit die Daten im Fehlerfall bis zu einem möglichst aktuellen Zeitpunkt wiederhergestellt werden können. Das ist abhängig von der Menge an Transaktionen und der gewünschten Wiederherstellbarkeit. Wenn es nicht genauer spezifiziert wird, empfehle ich meist 15 bis 30 Minuten Intervalle.

Wichtig: Ohne die .bak-Datei sind die nachfolgenden .trn-Dateien nicht zu gebrauchen. Es werden alle .trn-Dateien seit der Vollsicherung, bis zu dem Zeitpunkt zu dem ich wiederstellen möchte, benötigt. Fehlt eine kann ich nur bis zur letzten zusammenhängenden Datei wiederherstellen (Stichwort: Log Chain). Wenn also mal wieder die Festplatten des SQL Server volllaufen, prüft die Wiederherstellungsmodelle und die Sicherungsverfahren der Datenbanken. Oft kann man sich damit schon einige Probleme ersparen.