Gewusst wie: Installieren eines Service Packs auf einem System mit minimaler Ausfallzeit der gespiegelten Datenbanken
In diesem Thema wird beschrieben, wie beim Installieren von Service Packs und Hotfixes die Ausfallzeit von gespiegelten Datenbanken minimiert werden kann. Dieser Prozess umfasst eine sequenzielle Aktualisierung der Instanzen von SQL Server 2008 R2, die von der Datenbankspiegelung betroffen sind. Diese Form der Aktualisierung, die als Rolling Upgrade (Aktualisierung im Wechsel) bezeichnet wird, führt zu einer Minimierung der Ausfallzeit auf nur einen Failover. Unter Umständen ist die Aktualisierung im Wechsel nicht für Sitzungen im Modus für hohe Leistung geeignet, bei denen sich der Spiegelserver und der Prinzipalserver an unterschiedlichen geografischen Orten befinden.
Die Aktualisierung im Wechsel ist ein mehrstufiger Prozess, der aus den folgenden Phasen besteht:
Schützen Sie die Daten.
Wenn an der Sitzung ein Zeuge beteiligt ist, sollten Sie den Zeugen entfernen. Andernfalls hängt die Datenbankverfügbarkeit bei der Aktualisierung der Spiegelserverinstanz von dem Zeugen ab, der weiterhin mit der Prinzipalserverinstanz verbunden bleibt. Nachdem Sie den Zeugen entfernt haben, ist eine Aktualisierung jederzeit während des Rolling Upgrades ohne Gefahr eines Datenbankausfalls möglich.
Hinweis Weitere Informationen finden Sie unter Quorum: Auswirkungen eines Zeugen auf die Datenbankverfügbarkeit.
Ändern Sie den Betriebsmodus in den Modus für hohe Sicherheit, wenn eine Sitzung im Modus für hohe Leistung ausgeführt wird.
Aktualisieren Sie jede Serverinstanz, die von der Datenbankspiegelung betroffen ist. Bei der Aktualisierung im Wechsel wird auch die Serverinstanz aktualisiert, die derzeit als Spiegelserver fungiert. Dabei wird manuell ein Failover der gespiegelten Datenbanken ausgeführt und die Serverinstanz aktualisiert, die zunächst als Prinzipalserver fungiert hat (und nun als neuer Spiegelserver fungiert). Zu diesem Zeitpunkt müssen Sie die Spiegelung fortsetzen.
Hinweis Vor der Ausführung eines Rolling Upgrades sollten Sie zur Übung manuell ein Failover bei mindestens einer Spiegelungssitzung ausführen.
Kehren Sie ggf. in den Modus für hohe Leistung zurück.
Fügen Sie ggf. den Zeugen wieder der Spiegelungssitzung hinzu.
Die Vorgehensweisen für die einzelnen Phasen werden hier beschrieben.
Wichtig |
---|
Eine Serverinstanz kann bei gleichzeitigen Spiegelungssitzungen verschiedene Spiegelungsrollen (Prinzipalserver, Spiegelserver oder Zeuge) ausführen. In diesem Fall müssen Sie den grundlegenden Prozess für die Aktualisierung im Wechsel entsprechend anpassen. Weitere Informationen finden Sie unter Datenbank-Spiegelungssitzungen. |
So schützen Sie Ihre Daten vor einem Update (bewährte Methode)
Führen Sie für jede Prinzipaldatenbank eine vollständige Datenbanksicherung aus.
So sichern Sie eine Datenbank
Führen Sie den DBCC CHECKDB-Befehl für jede Prinzipaldatenbank aus.
So entfernen Sie einen Zeugen aus einer Sitzung
Wenn ein Zeuge an einer Spiegelungssitzung beteiligt ist, sollte der Zeuge vor der Ausführung eines Rolling Upgrades entfernt werden.
So entfernen Sie den Zeugen
So ändern Sie den Modus einer Sitzung vom Modus für hohe Leistung in den Modus für hohe Sicherheit
Ändern Sie den Betriebsmodus in den Modus für hohe Sicherheit ohne automatisches Failover, wenn sich eine Spiegelungssitzung vor der Ausführung eines Rolling Upgrades im Modus für hohe Leistung befindet. Verwenden Sie eine der folgenden Methoden:
In SQL Server Management Studio: Ändern Sie im Dialogfeld Datenbankeigenschaften auf der Seite Spiegelung die Option Betriebsmodus in Hohe Sicherheit ohne automatisches Failover (synchron). Informationen zum Zugriff auf diese Seite finden Sie unter Vorgehensweise: Starten des Assistenten zum Konfigurieren der Sicherheit für die Datenbankspiegelung (SQL Server Management Studio).
In Transact-SQL: Legen Sie die Transaktionssicherheit auf FULL fest. Weitere Informationen finden Sie unter Vorgehensweise: Ändern der Transaktionssicherheit in einer Datenbank-Spiegelungssitzung (Transact-SQL).
Hinweis Weitere Informationen finden Sie unter Transact-SQL-Einstellungen und Datenbankspiegelungs-Betriebsmodi.
So führen Sie die Aktualisierung im Wechsel aus
Zur Minimierung der Ausfallzeit wird Folgendes empfohlen: Starten Sie das Rolling Upgrade mit dem Aktualisieren aller Spiegelungspartner, die aktuell als Spiegelserver in allen Spiegelungssitzungen fungieren. Möglicherweise müssen an dieser Stelle mehrere Serverinstanzen aktualisiert werden.
Hinweis Ein Zeuge kann jederzeit während der Ausführung des Rolling Upgrades aktualisiert werden. Wenn beispielsweise eine Serverinstanz in Sitzung 1 als Spiegelserver und in Sitzung 2 als Zeuge fungiert, können Sie die Serverinstanz nun aktualisieren.
Welche Serverinstanz zuerst aktualisiert wird, hängt von der aktuellen Konfiguration der Spiegelungssitzungen ab, und zwar wie folgt:
Wenn bereits eine Serverinstanz als Spiegelserver in allen Spiegelungssitzungen fungiert, installieren Sie das Service Pack bzw. den Hotfix auf dieser Serverinstanz.
Wenn alle Serverinstanzen derzeit als Prinzipalserver in allen Spiegelungssitzungen fungieren, wählen Sie eine Serverinstanz aus, die zuerst aktualisiert werden soll. Führen Sie dann ein manuelles Failover für alle Prinzipaldatenbanken aus, und aktualisieren Sie die Serverinstanz, indem Sie das Service Pack bzw. den Hotfix installieren.
Nach der Aktualisierung schließt sich eine Serverinstanz automatisch wieder den zugehörigen Spiegelungssitzungen an.
So führen Sie ein manuelles Failover aus
Vorgehensweise: Ausführen des manuellen Failovers einer Datenbank-Spiegelungssitzung (Transact-SQL).
Informationen zur Funktionsweise eines manuellen Failovers finden Sie unter Manuelles Failover.
Warten Sie bei jeder Spiegelungssitzung, deren Serverinstanz gerade aktualisiert wurde, ab, bis die Sitzung synchronisiert ist. Stellen Sie dann eine Verbindung mit der Prinzipalserverinstanz her, und führen Sie manuell ein Failover zur Sitzung aus. Beim Failover wird die aktualisierte Serverinstanz zum Prinzipalserver dieser Sitzung, und der frühere Prinzipalserver wird zum Spiegelserver.
Ziel dieses Schritts ist es, dass eine andere Serverinstanz zum Spiegelserver in jeder Spiegelungssitzung wird, an der sie als Partner beteiligt ist.
Nach dem Failover sollten Sie den DBCC CHECKDB-Befehl für die Prinzipaldatenbank ausführen.
Installieren Sie das Service Pack bzw. den Hotfix auf allen Serverinstanzen, die nun als Spiegelserver in allen Spiegelungssitzungen fungieren, an denen sie als Partner beteiligt sind. Möglicherweise müssen an dieser Stelle mehrere Server aktualisiert werden.
Wichtig Es ist möglich, dass in einer komplexen Spiegelungskonfiguration manche Serverinstanz nach wie vor der ursprüngliche Prinzipalserver in mindestens einer Spiegelungssitzung ist. Wiederholen Sie die Schritte 2 bis 4 für diese Serverinstanzen, bis alle beteiligten Instanzen aktualisiert sind.
Setzen Sie die Spiegelungssitzung fort.
Hinweis Ein automatisches Failover kann erst funktionieren, wenn der Zeuge aktualisiert wurde.
Installieren Sie die Service Packs bzw. Hotfixes auf allen übrigen Serverinstanzen, die als Zeuge in allen Spiegelungssitzungen fungieren. Nachdem sich ein aktualisierter Zeuge wieder einer Spiegelungssitzung angeschlossen hat, ist das Ausführen eines automatischen Failovers wieder möglich. Möglicherweise müssen an dieser Stelle mehrere Server aktualisiert werden.
So ändern Sie den Modus einer Sitzung wieder in den Modus für hohe Leistung
Sie haben die folgenden Möglichkeiten, um den Modus einer Sitzung wieder in den Modus für hohe Leistung zu ändern:
In SQL Server Management Studio: Ändern Sie im Dialogfeld Datenbankeigenschaften auf der Seite Spiegelung die Option Betriebsmodus in Hohe Leistung (asynchron).
In Transact-SQL: Verwenden Sie ALTER DATABASE, um die Transaktionssicherheit auf OFF zu setzen.
So fügen Sie einen Zeugen wieder einer Spiegelungssitzung hinzu
Im Modus für hohe Sicherheit können Sie den Zeugen in jeder Spiegelungssitzung wiederherstellen.
So fügen Sie einen Zeugen wieder hinzu
Siehe auch