Frage

Wir begannen vor einiger Übersee Mergereplikation 1 Jahr und alles bis jetzt sehr gut läuft. Mein Problem ist, dass wir jetzt so viele Daten in unserem System haben, dass jeder Absturz auf einem der Server des Teilnehmers eine Katastrophe sein wird: Neuinitialisierung ein Abonnement der normale Weg nehmen Tage (unsere Verbindungen sind auf jeden Fall langsam, aber schon sehr, sehr teuer)! Zu den Ideen, die ich verfolgt habe bis sind die folgenden:

  1. eine Kopie des Originals Datenbank, einfrieren, senden Sie die Dateien mit dem Flugzeug zu dem Teilnehmer, und initiieren Replikation ohne Schnappschuss: Das ist etwas, das war getan traditionellen Stil mit älteren Versionen von SQL, aber es klingt ein wenig chaotisch zu mir: Ich hätte mein Verlags Daten setzen in Nur-Lese-Modus und beenden Sie alle Replikationen, bis der Betrieb abgeschlossen.
  2. einen Schnappschuss der Daten machen, Bitte senden Sie die Snapshot-Dateien im Ausland, installieren sie auf dem Teilnehmer und geben Sie den neuen Snapshot Standort als eine alternative Stelle in der Replikationseigenschaften. Dieses klingt für mich (keine Notwendigkeit zu laufenden Replikationen auszusetzen, keine Daten einfrieren) fair, aber auf diesem Punkt, Microsoft Hilfe nicht ... Hilfe.

Ich bin sicher, dass einige von Ihnen bereits eine solche Situation erlebt haben. Was war Ihre Wahl?

EDIT: Natürlich könnte man sagen: „Warum geben Sie nicht nur einen Versuch, um Ihre Ideen“, aber es wird Stunden dauern (mehrere Instanzen von SQL-Servern, virtuellen Maschinen und all das Zeug ...) und ich dachte, dass der Mann, der es nur 2 Minuten tat müssen seine Idee zu erklären. Und ich würde der glücklichste Mann, wenn jemand zu verlieren 2 Minuten seiner Zeit akzeptiert mir Stunden harter Arbeit zu ersparen ...

War es hilfreich?

Lösung

Ich hatte etwas ähnliches wie dies zu tun, wenn Daten aus Los Angeles, CA nach China zu replizieren. Der Schnapp würde 44 Tage eingenommen hat mit normalen Methoden zu laden.

Was ich tat, war die SQL-Replikation konfiguriert, um einen lokalen Pfad auf den Snapshot zu verwenden. Ich habe dann den Transaktions Job (in Ihrem Fall der Einfügejob) deaktiviert. Ich lief dann das Snap. Ich gezippt das Snap und FTPed die Dateien von Kalifornien nach China. Als sie nach China habe ich sie dekomprimiert und legte sie in der gleichen Ordnerpfad, die ich in Kalifornien eingesetzt.

Ich lief dann die Distrib.exe von der Kommandozeile auf dem Server in China. Dies belastet die Daten in die Tabelle in China. Einmal wurde der Spreng die Verteiler I Shutdown auf dem Server in China geladen und begann mit dem normalen Händler auf dem Server in Kalifornien auf.

Dieses Verfahren dauerte nur etwa 28 Stunden statt über einen Monat.

Wenn Ihre Daten mehr als ein paar Tage dauern werden an seinen Bestimmungsort zu bekommen, dann müssen Sie die Publikation bearbeiten und die Datenmenge zu erhöhen, die nach oben oder die Teilnehmer der Warteschlange gestellt werden können, werden abgelaufen und ein neuer Snapshot müssen getroffen werden.

Andere Tipps

Wir gingen gerade durch etwas wie dies, und es ist nicht schön. Auch wenn alle beteiligten Server waren lokale, dauerte es noch eine lange Zeit.

Nur um die Dinge schwieriger, zumindest mit SQL 2000, der Snapshot fehl, wenn die Druckkabine 4 Gig überschreiten würde.

Der beste Rat, den ich anbieten kann, ist sicher zu stellen, dass jeder Standort gute Backups zur Verfügung hat. Damit wäre zumindest die Daten müssen nicht an den Teilnehmer von Hand getragen werden.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top