Vorgehensweise: Minimieren der Ausfallzeit von gespiegelten Datenbanken beim Aktualisieren von Serverinstanzen

Wenn Sie Serverinstanzen vonSQL Server 2005 auf SQL Server 2008 aktualisieren, können Sie die Ausfallzeiten der einzelnen gespiegelten Datenbanken auf nur einen einzelnen manuellen Failover begrenzen, indem Sie eine sequenzielle Aktualisierung ausführen, die auch als paralleles Update bezeichnet wird. Ein paralleles Update bildet einen mehrstufigen Vorgang, bei dem im einfachsten Fall die gegenwärtig als Spiegelserver in einer Spiegelungssitzung verwendete Serverinstanz aktualisiert, dann ein manuelles Failover auf die gespiegelte Datenbank ausgeführt, der vorherige Prinzipalserver aktualisiert und die Spiegelung wiederaufgenommen wird. In der Praxis hängt der genaue Vorgang vom Beriebsmodus und der Anzahl und dem Layout der Spiegelungssitzung auf den zu aktualisierenden Serverinstanzen ab.

HinweisHinweis

Informationen zum Ausführen eines parallelen Updates zum Installieren eines Service Packs oder eines Hotfix finden Sie unter Gewusst wie: Installieren eines Service Packs auf einem System mit minimaler Ausfallzeit der gespiegelten Datenbanken.

Empfehlungen zur Vorbereitung (bewährte Methoden)

Vor dem Start eines parallelen Updates sollten Sie Folgendes ausführen:

  1. Führen Sie zu Übungszwecken ein manuelles Failover für mindestens eine der Spiegelungssitzungen aus:

    HinweisHinweis

    Informationen zur Funktionsweise eines manuellen Failovers finden Sie unter Manuelles Failover.

  2. Schützen Sie Ihre Daten:

    1. Führen Sie für jede Prinzipaldatenbank eine vollständige Datenbanksicherung aus:

      Vorgehensweise: Sichern einer Datenbank (SQL Server Management Studio).

      Vorgehensweise: Erstellen einer vollständigen Datenbanksicherung (Transact-SQL)

    2. Führen Sie den DBCC CHECKDB-Befehl für jede Prinzipaldatenbank aus.

Phasen eines parallelen Updates

Die einzelnen Schritte bei einem parallelen Update hängen vom Betriebsmodus der Spiegelungskonfiguration ab. Die grundlegenden Phasen sind jedoch identisch.

Die folgende Abbildung zeigt ein Flussdiagramm mit den Grundstufen eines parallelen Updates für jeden Betriebsmodus. Die entsprechenden Prozeduren finden Sie nach der Abbildung.

Flussdiagramm mit den Schritten für eine Aktualisierung im Wechsel

Wichtiger HinweisWichtig

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 das parallele Update entsprechend anpassen. Weitere Informationen finden Sie unter Datenbank-Spiegelungssitzungen.

So ändern Sie den Modus einer Sitzung vom Modus für hohe Leistung in den Modus für hohe Sicherheit

So entfernen Sie einen Zeugen aus einer Sitzung

So führen Sie das parallele Update aus

  1. 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 mehrere Serverinstanzen aktualisiert werden.

    HinweisHinweis

    Ein Zeuge kann jederzeit während der Ausführung des parallelen Updates aktualisiert werden. Wenn beispielsweise eine Serverinstanz in Sitzung 1 als Spieglserver 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 eine Serverinstanz bereits als Spiegelserver in allen Spiegelungssitzungen fungiert, aktualisieren Sie die Serverinstanz auf die neue Version.

    • Wenn alle Serverinstanzen aktuell 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.

    Nach der Aktualisierung schließt sich eine Serverinstanz automatisch wieder den zugehörigen Spiegelungssitzungen an.

  2. 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, in der sie als Partner beteiligt ist.

    Einschränkungen nach einem Failover zu einer aktualisierten Serverinstanz

    Nach dem Ausführen eines Failovers von einer SQL Server 2005-Serverinstanz zu einer SQL Server 2008-Serverinstanz wird die Datenbanksitzung angehalten. Sie kann erst dann fortgesetzt werden, wenn der andere Partner aktualisiert wurde. Der Prinzipalserver nimmt jedoch nach wie vor Verbindungen an und lässt den Datenzugriff auf die und Änderungen an der Prinzipaldatenbank zu.

    HinweisHinweis

    Damit eine neue Spiegelungssitzung eingerichtet werden kann, muss auf allen Serverinstanzen dieselbe Version von SQL Server ausgeführt werden.

  3. Nach der Ausführung eines Failovers sollten Sie den DBCC CHECKDB-Befehl für die Prinzipaldatenbank ausführen.

  4. Aktualisieren Sie alle Serverinstanzen, die nun als Spiegelserver in allen Spiegelungssitzungen fungieren, in denen sie als Partner beteiligt sind. Möglicherweise müssen nun mehrere Server aktualisiert werden.

    Wichtiger HinweisWichtig

    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 Schritte 2 bis 4 für diese Serverinstanzen, bis alle beteiligten Instanzen aktualisiert sind.

  5. Setzen Sie die Spiegelungssitzung fort.

    HinweisHinweis

    Ein automatisches Failover ist erst möglich, wenn der Zeuge aktualisiert und der Spiegelungssitzung erneut hinzugefügt wurde.

  6. Aktualisieren Sie die verbleibenden Serverinstanzen, die als Zeuge in allen zugehörigen 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 nun 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 festzulegen.

So fügen Sie einen Zeugen einer Spiegelungssitzung erneut hinzu