SQL Server-änderungsnachverfolgung vs Replikation vs Differenzielle Sicherung
Ok, wir haben wichtige Transaktions-Datenbank und seiner in voller recovery-Modus in SQL Server 2008. Wir haben zwei unterschiedliche Server in zwei verschiedenen Rechenzentren auf zwei verschiedene Zeitzonen. Und ich bin versucht, setup-beste Weg, um Datenbank als upto date wie möglich mit verschiedenen Optionen. Die Datenbank ist derzeit nur 1,5 GB, voraussichtlich wachsen, 1GB alle 6 Monate.
Wir haben eine einfache Lösung mit SMO erstellen VOLL-Backup auf Mitternacht und 1 Uhr, und dann nehmen Sie die differenzielle Sicherung alle 15 Minuten. Und wir übertragen diese Daten zu anderen Servern, die arbeiten als Sklaven und wir wieder Daten auf die slaves. Also alle Sklaven laufen 15 Minuten alt im Vergleich zu aktuellen DB, also im Fall der crash-wir haben Daten, die bis zu den letzten 15 Minuten.
Möchte ich nun vergleichen Sie diese Lösung mit Hinblick auf die Replikation und die änderungsnachverfolgung.
Sowohl die Replikation und die änderungsnachverfolgung setzt einige zusätzliche Metadaten in DB zu tun alles, was Sie tun und nutzen die cpu-Auslastung ein wenig mehr. Sie werden allerdings nicht mehr Last auf der CPU (soweit mein Verständnis) im Vergleich zu den Diff-Backup. Ich gehe davon aus, dass Diff-Backup halten einige Transaktionen warten oder erhöhen einige ausstehende Warteschlangen und möglicherweise Verzögerung oder Verlust von Informationen während der Nutzer es verwenden.
Muss ich wissen, wird die Diff-Backup alle 15 Minuten weitere Last auf dem server? Oder es ist wirklich nicht adviceable, um mit Diff-Backups alle 15 Minuten, wenn Transaktionen verarbeiten?
Hinweis: die Transaktionen sind nur auf Primären Server und auf die Sie angewendet werden Sklaven mit backup wiederherstellen.. Protokollversand nicht Schiff-schema-änderungen, und irgendwie, wenn es nicht mehr funktioniert, wir sind nicht in der Lage, um etwaige Fehler Meldungen, in unserem eigenen, individuellen Lösung, die wir bekommen die Protokolle per E-Mail an uns, die uns hilft.
- Für Klarheit, sind beide Seiten (Server A und Server B) updatebar sind oder Transaktionen, die nur geschrieben werden, um Server Ein-und dann subseuently angewendet zu Server B über ein backup/restore? Wenn dies Ihr Szenario klingt-dann klingt er wie melden Versand wäre besser geeignet.
- Der Protokollversand nicht richtig funktioniert, wie Server sind in verschiedenen Rechenzentren, die Microsoft-Lösungen replication/log-shipping/mirroring funktioniert alles nur für die Local-Area-Network-verbindungen, plus Protokollversand nicht-transfer-schema.
- Konfigurieren Sie einen VPN-Tunnel zwischen zwei Standorten zu erreichen, um so eine Implementierung. Auch alle schema-änderungen auf dem Primären Server werden in das Transaktionsprotokoll geschrieben und so werden anschließend angewendet, um die Sekundären Server per Log-Shipping. Haben Lesen Sie die nachstehenden Referenz für eine übersicht, wie Sie den Protokollversand funktioniert. msdn.microsoft.com/en-us/library/ms187103.aspx
- Ehrlich gesagt verbrachten wir in der Nähe von etwa einem Monat versucht, VPN-tunnel, und wir wirklich nicht erreichen, es!!!! und es gibt keine Schritt-für-Schritt Anleitung für zwei entfernten LIVE-Servern.
- Haben Sie gesprochen mit jeder hardware-Hersteller direkt für eine Beratung?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Vergessen Replikation oder ändern von Daten-tracking. Diese nicht replizieren schema und fügen Sie zu einem erheblichen Mehraufwand. Weder ist entwickelt als Hochverfügbarkeit oder Disaster Recoveryfähigkeit Lösung. Sie kann als solche verwendet werden, aber blass im Vergleich zu dedizierten Lösungen wie log shipping, Datenbank-spiegelung und hardware-spiegelung.
Protokollversand transfers alles in der Datenbank, einschließlich Schemas, sowie Benutzer, Berechtigungen, Indizes, Daten und so weiter und so Fort. Sie nicht angeben, wenn Sie die übertragung der log-sicherungen. Dabei eine differenzielle Sicherung alle 15 Minuten, klingt nach overkill. Die differenziellen sicherungen sind kumulativ, Sie enthalten alle änderungen seit der letzten voll backup, so dass Sie vergrößern sich im Laufe des Tages. 15 Minuten klingt wie ein Zeitraum für die regelmäßige Protokollsicherungen nicht differenziellen.
Log-Versand setzt auf file copy-Vorgänge, die aus einer SQL-Agent-Auftrag. Als solche muss es Zugriff auf Dateifreigaben und das erfordert Authentifizierung. Über unterschiedliche domains benötigen Sie entweder Direkten Zugang oder eine VPN-Art.
Datenbankspiegelung ist auch die Erstellung einer identischen Kopie der Datenbank, aber seine Daten-Verlust-Fenster ist bis zu Sekunden im Gegensatz zu der backup log-Intervall in den Protokollversand. Die Datenbankspiegelung hält eine Besondere Verbindung zwischen den beiden Servern und dem AUFTRAGGEBER Schiffe jeder Transaktion an den Spiegel, wie es geschieht, in Echtzeit. Weil die spiegelung Endgeräte unterstützen Zertifikat-basierte Authentifizierung es kann leicht eingerichtet werden, cross-Domänen und hat nicht benötigen Sie ein VPN. DBM kann synchron (jeder Transaktion auf der Prinzipaldatenbank wartet, bis die Spiegel zu bestätigen, bevor Sie zu Begehen, aka. hohe Sicherheit-Modus) oder asynchron (der AUFTRAGGEBER schreibt vor dem Spiegel und Begehen sofort, aka. high-performance-Modus). Wenn Konnektivität verloren ist der AUFTRAGGEBER läuft 'ausgesetzt', also Sie nicht lose-service, aber Sie setzen sich zu Datenverlust. Sobald die Konnektivität wieder da ist, wird der AUFTRAGGEBER wird feed der Spiegel die pending-queue-Transaktionen (dh. der Teil der LDF-Datei wurde nicht geliefert über noch), bis der Spiegel wieder auf dem neuesten Stand. All dies erfolgt automatisch und es gibt monitoring-tools SSMS eingestellt werden kann Benachrichtigungen senden, wenn eine Verbindung verloren geht, wenn der AUFTRAGGEBER ausgeführt wird ausgesetzt, wenn der nicht gesendeten Warteschlange wächst über eine voreingestellte Größe.
Hardware-spiegelung: Sie sprechen mit einem hardware-Hersteller oder Ihre Daten-center-Betreiber. Es kostet ein Vermögen.
Gesamte Datenbank Spiegelung ist bei weitem die beste option.
Wir finden unsere eigene Lösung wie folgt,
MSDN Sagt Differenziellen Sicherungen sind schneller, wir gewählt differenziellen sicherungen. Ja für 15 min, es sieht wenig übertrieben, aber Sie sind die schnellsten und zuverlässig. Und für die 24 Stunden, die accumalated änderungen sind nur ein paar MBs.
Die backups von benutzerdefinierten windows-Dienst, und Sie sind auch komprimiert zu speichern Netzwerk übertragen. Plus erhalten wir die richtige E-Mail-Benachrichtigungen über einfach alles.
Plus slave-Datenbank kann von überall über das internet. Sicherungen sind sicher die komprimierten und mit Passwort. Und einen kleinen HTTP im integrierten web-server überträgt Daten von einem Computer zu einem anderen, damit weniger projektierungsaufwand erforderlich ist.
Wenn wir viele Server, konfigurieren Sie wird große Schmerzen. Plus jeder Netzwerk-admin kann einen Fehler machen, und erstellen Sie disaster.