Sicherungsstrategien für SQL Server Live-Datenbanken

7

Ich versuche, eine Sicherungsstrategie für SQL Server 2005 zu entwickeln. Ich denke daran, einmal pro Woche eine vollständige Sicherung, einmal täglich eine differenzielle Sicherung und alle 15 Minuten eine Transaktionsprotokollsicherung durchzuführen. Die Datenbank ist ungefähr 50 GB groß. Die Sache ist, dass die Datenbank jede Sekunde des Tages aktiv ist. Wird die vollständige Sicherung den Betrieb stören? Muss ich etwas Besonderes tun, damit Backups reibungslos verlaufen, ohne dass Datenbankvorgänge angehalten werden müssen?

dstr
quelle

Antworten:

4

Backups funktionieren einwandfrei. Keine Unterbrechung der Datenbank. Was Sie sehen werden, ist offensichtlich eine höhere E / A-Last, da die Leistung der Sicherungs-E / A über der E / A der Disc liegt.

Darüber hinaus ist der Speicherbedarf offensichtlich höher als ohne Backups.

TomTom
quelle
Sie meinen, es gibt kein Sperren von Tabellen, während der Speicherauszug erstellt wird? Für vollständige Backups halte ich es für notwendig, die Tabellen zu sperren. Für jede große Tabelle würde der Effekt auf eine Webanwendung sein, dass "nichts passiert".
3molo
Keine Verriegelung. SQL Server ist eine Unternehmensdatenbank. Es bringt die Datenbankdatei in einen konsistenten Zustand und unterbricht alle Schreibvorgänge (daher eine höhere Speicherlast) während einer Sicherung. Anschließend wird die Sicherung im Hintergrund durchgeführt. Sperren werden nur im Speicher gehalten. Natürlich nur, wenn Sie die Backup-API verwenden.
TomTom
Richtig, Sicherungen werden nicht blockiert, solange Sie tatsächliche SQL-Sicherungen (oder ein SQL-Sicherungsprodukt eines Drittanbieters wie Quest Litespeed) verwenden und nicht versuchen, die MDF- und LDF-Dateien manuell aus dem Dateisystem zu sichern.
BradC
5

Zusammen mit dem, was bereits erwähnt wurde, ist mein Vorschlag, dass Sie bestimmen sollten, welche geschäftlichen Anforderungen hinsichtlich der Toleranz für Datenverlust und Ausfallzeiten bestehen. Die Tatsache, dass Sie darüber nachdenken, wie die Datenbank gesichert werden soll, zeigt mir, dass Sie erraten, welche Methode und welcher Zeitpunkt für die Sicherung geeignet ist, anstatt zu wissen, was erforderlich ist, um Ihr Geschäftsziel in Bezug auf Datenverlust und Datenverlust zu erreichen Ausfallzeit.

Joeqwerty
quelle
4

Ich kann nur Joeqwerty wiederholen. Für eine ernsthafte Linie von Business - app , wo Verfügbarkeit und Ausfallzeiten wirklich wichtig, Sie müssen beginnen mit „Was ist die Geschäftsanforderungen um Verfügbarkeit und Datenintegrität“ und Arbeit nach vorne aus , dass.

Denken Sie nicht nur an Backups , sondern auch an Wiederherstellungen .

Wie lange würde es dauern, bis die Datenbank mit Ihrem vorgeschlagenen Schema den letzten bekannten guten Zustand wiederhergestellt hat? Wissen Sie? Ist diese Zeitspanne für das Unternehmen akzeptabel?

Was kann sich das Unternehmen in diesem Bereich leisten und können Sie so liefern, was es benötigt?

Ich weiß, dass es möglicherweise nicht intuitiv zu sein scheint, über eine Wiederherstellung nachzudenken, bevor Sie herausgefunden haben, wie die Dinge gesichert werden sollen, aber falls etwas Schlimmes passiert, wird dieser Ansatz auf lange Sicht viel weniger schaden.

Rob Moir
quelle
Nicht unbedingt. Ernsthaft. Ich führe eine Datenbank aus - 800 GB, sobald sie vollständig gefüllt ist -, die regelmäßig gesichert wird. Mein Wiederherstellungsszenario ist eine Woche frei. Kein so großes Problem. Aber das Verlieren der Daten hat mich in die Hölle gebracht;)
TomTom
Oh, ich verstehe Ihren Standpunkt, TomTom, aber Ihr Unternehmen berücksichtigt dies vermutlich. Wenn die CEO sagt : „Im Fall einer Katastrophe, diese db muss wieder an seinen innerhalb von 24 Stunden“ Sie Ihren Backup - Plan ändern würden die Anforderungen zu erfüllen, nicht wahr?
Rob Moir
1
Ja. Ich würde eine Woche brauchen - aber ich hätte ein Replikationssystem online und würde Spiegelung verwenden;) Failover in Sekunden, selbst wenn Hardware brennt. Backups sollten niemals verwendet werden (dh sie sind die letzte Verteidigungslinie).
TomTom
4

Bei einer SQL Server-Sicherung wird der Datenbankbetrieb nicht unterbrochen, dies bedeutet jedoch nicht, dass die Leistung nicht beeinträchtigt wird. Die beste Vorgehensweise für dieses IMHO besteht darin, eine separate Festplatte nur für die Sicherung einzurichten, die von Ihrer Daten- und Protokolldiskette getrennt ist.

Nick Kavadias
quelle