2012-04-10 14 views
4

Was wird Transaktionsreplikation verwendet? Ich schien Transaktionsreplikation nach diesem Tutorial zu erstellen:Wofür wird die Transaktionsreplikation verwendet?

http://www.sql-server-performance.com/2010/transactional-replication-2008-r2/

Und ich weiß, wenn ich einige Objekte d.h jede DML oder DDL-Anweisung zu ändern, werden diese Änderungen auf den anderen Server reflektiert werden, wo ich die Replikation tat. Aber mir ist nicht klar, warum wir Transaktionsreplikation verwenden sollten. Wird der zweite Server, auf dem die Replikation ausgeführt wurde, automatisch vom SQL Server gestartet, wenn die Hauptinstanz fehlschlägt? Oder müssen wir die Datenbank manuell von dem Server wiederherstellen, auf dem die Replikation bei einem Ausfall der ersten Instanz durchgeführt wurde?

Vielen Dank im Voraus :)

Antwort

5

Sie Transaktionsreplikation verwenden, um einen Warm-Standby-SQL-Server zu erhalten. Die Transaktionsreplikation repliziert die Daten auf einem Server (dem Herausgeber) auf einen anderen Server (den Abonnenten) mit einer geringeren Latenz als der Protokollversand.

Sie können die Transaktionsreplikation auf der Datenbankobjektebene wie der Tabellenebene implementieren. Microsoft empfiehlt daher, Transaktionsreplikation zu verwenden, wenn weniger Daten zu schützen sind und Sie einen schnellen Datenwiederherstellungsplan haben müssen.

Diese Lösung ist anfällig für den Fehler des Herausgebers und des Abonnenten gleichzeitig. In einem solchen Szenario können Sie Ihre Daten nicht schützen. In allen anderen Szenarien, wie dem Ausfall eines Distributors oder eines Abonnenten, ist es am besten, die Daten im Abonnenten mit den Daten im Publisher neu zu synchronisieren.

Sie sollten Transaktionsreplikation verwenden, um einen Warm-Standby-SQL-Server nur zu warten, wenn Sie keine Schemaänderungen implementieren oder andere Änderungen an Ihrer Datenbank wie Sicherheitsänderungen, die die Replikation nicht unterstützt, implementieren.

Hinweis Die Replikation ist nicht für die Wartung von Warm-Standby-Servern vorgesehen. Bei der Replikation können Sie replizierte Daten beim Abonnenten zum Generieren von Berichten verwenden. Sie können die Replikation auch für andere allgemeine Zwecke verwenden, ohne die Verarbeitung auf Ihrem relativ ausgelasteten Publisher durchführen zu müssen.

Nachteile

  1. Schemaänderungen oder Sicherheitsänderungen, die nach Gründung der Replikation am Verlag durchgeführt werden, werden nicht an der Teilnehmer zur Verfügung. Der Verteiler in der Transaktionsreplikation verwendet eine ODBC-Verbindung (Open Database Connectivity) oder eine OLE-Datenbankverbindung (OLEDB), um Daten zu verteilen. Der Protokollversand verwendet jedoch die RESTORE TRANSACTION Low-Level-Transact-SQL-Anweisung zu verteilen die Transaktionsprotokolle. Eine RESTORE TRANSACTION-Anweisung ist viel schneller als eine ODBC-Verbindung oder eine OLEDB-Verbindung.

  2. In der Regel löscht das Switching von Servern Replikationskonfigurationen. Daher müssen Sie die Replikation zweimal konfigurieren:
    a. Wenn Sie zum Abonnenten wechseln.
    b. Wenn Sie zurück zum Publisher wechseln.

  3. Wenn ein Notfall eintritt, müssen Sie die Server manuell um umleiten, um alle Anwendungen an den Abonnenten umzuleiten.

mehr hier http://sqlserverdatarecovery.com/transactional_replication.html

+0

Dank lesen, aber meine Frage ist: wenn der Hauptserver ausfällt, wird die Anfrage dann an den replizierten Server automatisch bedient? Ist Replikation dafür gedacht? – Jack

+0

Nein, es wird nicht auf dem Replikationsserver bereitgestellt. Lesen Sie den Link oder die bearbeitete Antwort – Thakur

+0

ohh ok. Aha. Vielen Dank. – Jack