|
Protokollversand
Beim Protokollversand werden Transaktionsprotokollsicherungen von einer Datenbank
auf einer anderen Datenbankinstanz wiederhergestellt. SQL Server Agent Aufträge
sorgen für die laufende Durchführung von Sicherungen, das Kopieren der Sicherungen
auf die beteiligten Instanzen und die Wiederherstellung der Protokollsicherungen.
Dadurch erhalten weitere Instanzen wenn auch mit einer zeitlichen Verzögerung
ein Abbild der Originaldatenbank.
Die Beteiligten
Beim Protokollversand fungiert eine Datenbank als primäre
Datenbank; diese Datenbank wird auf einer oder mehreren sekundären Instanzen als
sogenannte sekundäre Datenbank wiederhergestellt.
Dabei bestimmt die Häufigkeit von Transaktionsprotokollsicherungen auf dem primären
Server, wie aktuell der Datenstand auf den sekundären Servern ist.
Neben primärer und sekundärer Instanz kann zusätzlich auch noch ein Überwachungsserver
definiert werden. Dieser Server kann alle Informationen über den Transaktionsprotokollversand
zwischen Instanzen sammeln und im Fehlerfall Fehlerinformationen an einen Operator
übermitteln.
Ablauf des Protokollversands
Beim Protokollversand werden die folgenden Schritte wiederholt ausgeführt:
- Sichern des Transaktionsprotokolls auf dem primären Server auf eine Netzwerkfreigabe
- Kopieren der Sicherungsdatei von der Netzwerkfreigabe in ein Verzeichnis auf dem
sekundären Server
- Wiederherstellen der Sicherungsdatei auf dem sekundären Server
Damit diese Schritte problemlos ausgeführt werden, sollten Sie die folgenden Vorbereitungen
treffen, bevor Sie den Protokollversand konfigurieren:
-
Prüfen Sie, ob die Datenbanken, die mithilfe des Protokollversands kopiert werden
sollen, im Wiederherstellungsmodell Vollständig
oder Massenprotokolliert betrieben werden.
Datenbanken, die unter dem einfachen Wiederherstellungsmodell laufen, können nicht
am Protokollversand teilnehmen.
-
Prüfen Sie, unter welchen Konten der SQL Server Dienst und der SQL Server Agent
Dienst auf dem primären und den sekundären Servern laufen.
-
Erstellen Sie eine Netzwerkfreigabe (nach Möglichkeit auf einem dritten Server)
auf dem die Sicherungsdateien abgelegt werden können. Stellen Sie sicher, dass die
Konten für SQL Server und SQL Server Agent auf dem primären Server über Schreib-
und Leseberechtigungen auf dieses Verzeichnis verfügen. Das SQL Server Agent Konto
auf den sekundären Servern benötigt Leseberechtigungen auf diesem Verzeichnis.
-
Erstellen Sie auf dem sekundären Server einen Ordner in den die Sicherungsdateien
kopiert werden können. Das SQL Server Agent Konto auf dem sekundären Server muss
eine Schreibberechtigung auf diesen Ordner besitzen. Anderen Konten sollte kein
Zugriff auf diesen Ordner gewährt werden.
-
Deaktivieren Sie vor dem Konfigurieren des Protokollversands alle Aufträge und Wartungspläne,
die eine Transaktionsprotokollsicherung für die zu versendende Datenbank auf dem
primären Server enthalten.
Einrichten des Protokollversands
Wechseln Sie in den Dialog zur Konfiguration der Datenbankeigenschaften und wechseln
Sie auf die Seite Transaktionsprotokollversand.
Aktivieren Sie die Option Diese Datenbank als primäre Datenbank
in einer Protokollversandkonfiguration aktivieren.
Abbildung: Konfiguration des Protokollversands
Über die Schaltfläche Sicherungseinstellungen im
Bereich Transaktionsprotokollsicherungen legen Sie
fest, wie häufig eine Sicherung des Transaktionsprotokolls erfolgen soll und in
welchem Ordner die Sicherungsdateien abgelegt werden sollen. Verwenden Sie als Zielordner
nach Möglichkeit eine Netzwerkfreigabe auf einem dritten Server. Achten Sie darauf,
dass auf dieser Freigabe genügend Speicherplatz für die Sicherung der Protokolle
verfügbar ist.
Abbildung: Festlegen der Sicherungseinstellungen
des Transaktionsprotokolls für die primäre Datenbank
Anschließend können Sie im Bereich Sekundäre Serverinstanzen
eine oder mehrere sekundäre Datenbanken festlegen. Klicken Sie auf die Schaltfläche
Hinzufügen, um eine neue Serverinstanz zu konfigurieren.
Für jede Instanz müssen die folgenden Einstellungen getroffen werden:
Initialisierung
Sie können die vollständige Sicherung der Datenbank und das Wiederherstellen dieser
Sicherung auf der sekundären Serverinstanz automatisch durchführen lassen. Falls
Sie die Datenbank auf der sekundären Serverinstanz bereits wiederhergestellt haben,
legen Sie die Option Nein, die sekundäre Datenbank ist
initialisiert fest.
Abbildung: Festlegen, auf welche
Art die sekundäre Datenbank initialisiert wird
Kopieren
Legen Sie fest, in welchen Zielordner auf dem sekundären Server die Sicherungsdateien
kopiert werden sollen. Zusätzlich können Sie angeben, nach wie vielen Stunden diese
Sicherungsdateien automatisch gelöscht werden können. Der Zeitplan für den Kopierauftrag
sollte in etwa das gleiche Intervall wie die anderen Zeitpläne verwenden.
Abbildung: Festlegen des Zielordners
auf der sekundären Instanz und Konfigurieren des Kopierauftrags
Wiederherstellen
Anschließend wird festgelegt, wie oft die Sicherungsdateien wiederhergestellt werden
sollen. Dabei können Sie entscheiden, ob die Datenbank nachdem Wiederherstellen
in den schreibgeschützten Modus versetzt wird, oder ob die Datenbank offline bleibt.
Im schreibgeschützten Modus (Standby) können Anwender
lesend auf die Daten zugreifen. Allerdings können keine weiteren Sicherungen eingespielt
werden, solange Benutzer mit der Datenbank verbunden sind.
Abbildung: Festlegen der Optionen
für die Wiederherstellung auf der sekundären Instanz und Konfiguration des Wiederherstellungsauftrags
Wenn Sie die Einstellungen mit OK bestätigen
werden die entsprechenden Aufträge auf der primären und sekundären Datenbankinstanz
erstellt. Auf der primären Datenbankinstanz werden der Auftrag zum Sichern des Transaktionsprotokolls
und falls kein Überwachungsserver angegeben wurde auch der Auftrag zur Überwachung
des Protokollversands eingerichtet.
Die eingerichteten Aufträge führen die folgenden Schritte wiederholt aus:
- Der SQL Server Agent auf der primären Instanz initiiert Transaktionsprotokollsicherungen
der Datenbank Westwind. Die Sicherungsdateien werden
in der Netzwerkfreigabe SQLBackup$ gespeichert.
- Der SQL Server Agent auf der sekundären Instanz kopiert die vorhandenen
Dateien von der Netzwerkfreigabe SQLBackup$ in den lokalen Ordner E:\Empfang
auf dem sekundären Server.
- Der SQL Server Agent auf der sekundären Instanz startet die Wiederherstellung
der kopierten Sicherungsdateien in der sekundären Datenbank Westwind. Die sekundäre
Datenbank verbleibt im Status wird wiederhergestellt.
Abbildung: Beteiligte Komponenten
am Protokollversand
Auf den sekundären Datenbankinstanzen werden die Aufträge zum Kopieren der Sicherungsdateien
von der Sicherungsfreigabe zum sekundären Server und für das Wiederherstellen der
gespeicherten Transaktionsprotokolle aus diesen Dateien erstellt.
Der aktuelle Status des Protokollversands kann in SQL Server Management Studio über
den Bericht Transaktionsprotokoll
Versandstatus auf Server-Ebene abgerufen werden. Einzelheiten zum Verlauf
der Aufträge finden Sie im Management Studio unter dem Ordner Aufträge
des SQL Server Agents.
|