Freigeben über


Minimieren von Ausfallzeiten für gespiegelte Datenbanken beim Upgrade von Serverinstanzen

Beim Upgrade von Serverinstanzen auf SQL Server 2014 können Sie ausfallzeiten für jede gespiegelte Datenbank auf ein einzelnes manuelles Failover reduzieren, indem Sie ein sequenzielles Upgrade ausführen, das als rollierendes Upgrade bezeichnet wird. Bei einem Rollupgrade handelt es sich um einen mehrstufigen Prozess. In der einfachsten Form umfasst dieser das Upgrade der Serverinstanz, die derzeit als Spiegelserver in einer Spiegelungssitzung fungiert. Danach wird manuell ein Failover über die gespiegelte Datenbank ausgeführt, gefolgt vom Upgrade des ehemaligen Prinzipalservers und der anschließenden Fortsetzung der Spiegelung. In der Praxis hängt der genaue Prozess vom Betriebsmodus und der Anzahl und dem Layout der Spiegelungssitzung ab, die auf den Serverinstanzen ausgeführt wird, die Sie aktualisieren.

Hinweis

Informationen zum Ausführen eines rollierenden Upgrades zum Installieren eines Service Packs oder Hotfixes finden Sie unter Installieren eines Service Pack auf einem System mit minimaler Ausfallzeit für gespiegelte Datenbanken.

Empfohlene Vorbereitung (bewährte Methoden)

Bevor Sie ein rollierendes Upgrade starten, empfehlen wir Folgendes:

  1. Führen Sie ein manuelles Failover für mindestens eine Ihrer Spiegelungssitzungen durch:

    Hinweis

    Informationen zur Funktionsweise eines manuellen Failovers finden Sie unter Rollenwechsel während einer Datenbankspiegelungssitzung (SQL Server).

  2. Schützen Sie Ihre Daten:

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

      Erstellen Sie eine vollständige Datenbanksicherung (SQL Server).

    2. Führen Sie den Befehl DBCC CHECKDB auf jeder primären Datenbank aus.

Phasen eines rollierenden Upgrades

Die spezifischen Schritte eines rollierenden Upgrades hängen vom Betriebsmodus der Spiegelungskonfiguration ab. Die grundlegenden Phasen sind jedoch identisch.

Hinweis

Informationen zu den Betriebsmodi finden Sie unter Betriebsmodi für die Datenbankspiegelung.

Die folgende Abbildung ist ein Flussdiagramm, das die grundlegenden Phasen eines rollierenden Upgrades für jeden Betriebsmodus zeigt. Die entsprechenden Verfahren werden nach der Abbildung beschrieben.

Flussdiagramm mit Schritten eines rollierenden Upgrades

Von Bedeutung

Eine Serverinstanz kann unterschiedliche Spiegelungsrollen (Prinzipalserver, Spiegelserver oder Zeugen) in gleichzeitigen Spiegelungssitzungen ausführen. In diesem Fall müssen Sie den grundlegenden Prozess des rollierenden Upgrades entsprechend anpassen. Weitere Informationen finden Sie unter Rollenwechsel während einer Datenbankspiegelungssitzung (SQL Server).

So ändern Sie eine Sitzung vom Hochleistungsmodus in den Hochsicherheitsmodus

  1. Wenn eine Spiegelungssitzung im Hochleistungsmodus ausgeführt wird, bevor Sie ein rollierendes Upgrade durchführen, ändern Sie den Betriebsmodus auf hohe Sicherheit ohne automatisches Failover.

    Von Bedeutung

    Wenn der Spiegelserver geografisch vom Prinzipalserver entfernt ist, ist ein rollierendes Upgrade möglicherweise unangemessen.

So entfernen Sie einen Zeugen aus einer Sitzung

  1. Wenn eine Spiegelungssitzung einen Zeugen umfasst, wird empfohlen, den Zeugen zu entfernen, bevor Sie ein schrittweises Upgrade durchführen. Andernfalls hängt die Verfügbarkeit der Datenbank beim Upgrade der Spiegelserverinstanz vom Zeugen ab, der mit der Prinzipalserverinstanz verbunden bleibt. Nachdem Sie einen Zeugen entfernt haben, können Sie es während des rollierenden Upgradevorgangs jederzeit aktualisieren, ohne dass Datenbankausfall riskiert wird.

So führen Sie das rollierende Upgrade aus

  1. Um Ausfallzeiten zu minimieren, empfehlen wir Folgendes: Starten Sie das schrittweise Upgrade, indem Sie jeden Spiegelungspartner aktualisieren, der derzeit als Spiegelserver fungiert. Möglicherweise müssen Sie an diesem Punkt mehrere Serverinstanzen aktualisieren.

    Hinweis

    Ein Zeuge kann jederzeit im rollierenden Upgradeprozess aktualisiert werden. Wenn beispielsweise eine Serverinstanz ein Spiegelserver in Sitzung 1 ist und ein Zeuge in Sitzung 2 ist, können Sie die Serverinstanz jetzt aktualisieren.

    Die Serverinstanz, die zuerst aktualisiert werden soll, hängt von der aktuellen Konfiguration Ihrer Spiegelsitzungen wie folgt ab:

    • Wenn eine Serverinstanz bereits der Spiegelserver in allen Spiegelsitzungen ist, aktualisieren Sie die Serverinstanz auf die neue Version.

    • Wenn alle Serverinstanzen derzeit der Hauptserver in allen Spiegelsitzungen sind, wählen Sie eine Serverinstanz aus, die als erste aktualisiert werden soll. Führen Sie dann manuell einen Failover für die einzelnen Prinzipaldatenbanken durch, und führen Sie ein Upgrade dieser Serverinstanz durch.

    Nachdem es aktualisiert wurde, tritt eine Serverinstanz automatisch wieder jeder ihrer Spiegelungssitzungen bei.

  2. Warten Sie für jede Spiegelungssitzung, deren Spiegelserverinstanz gerade aktualisiert wurde, auf die Synchronisierung der Sitzung. Stellen Sie dann eine Verbindung mit der Prinzipalserverinstanz her, und schlagen Sie die Sitzung manuell fehl. Beim Failover wird die aktualisierte Serverinstanz zum Prinzipalserver für diese Sitzung, und der frühere Prinzipalserver wird zum Spiegelserver.

    Ziel dieses Schritts ist es, dass eine andere Serverinstanz in jeder Spiegelungssitzung, in der es sich um einen Partner handelt, zum Spiegelserver wird.

    Einschränkungen nach dem Failover auf eine aktualisierte Serverinstanz.

    Nach einem Failover von einer vorherigen Serverinstanz zu einer SQL Server 2014-Serverinstanz wird die Datenbanksitzung unterbrochen. Sie kann erst fortgesetzt werden, wenn der andere Partner aktualisiert wurde. Der Prinzipalserver akzeptiert jedoch weiterhin Verbindungen und lässt Datenzugriff und Änderungen an der Prinzipaldatenbank zu.

    Hinweis

    Für die Einrichtung einer neuen Spiegelungssitzung müssen die Serverinstanzen alle dieselbe Version von SQL Server ausführen.

  3. Nach dem Failover wird empfohlen, den DBCC CHECKDB auf der Hauptdatenbank auszuführen.

  4. Aktualisieren Sie jede Serverinstanz, die jetzt der Spiegelserver bei allen Spiegelungssitzungen ist, in denen sie ein Partner ist. Möglicherweise müssen Sie an diesem Punkt mehrere Server aktualisieren.

    Von Bedeutung

    In einer komplexen Spiegelungskonfiguration kann es sich bei einigen Serverinstanzen um den ursprünglichen Prinzipalserver in einer oder mehreren Spiegelungssitzungen handeln. Wiederholen Sie die Schritte 2 bis 4 für diese Serverinstanzen, bis alle beteiligten Instanzen aktualisiert werden.

  5. Fortsetzen der Spiegelungssitzung.

    Hinweis

    Automatisches Failover funktioniert erst, wenn der Zeuge aktualisiert und wieder in die Mirrorsitzung integriert wurde.

  6. Aktualisieren Sie die verbleibende Serverinstanz, die in allen ihren Spiegelungssitzungen als Zeuge fungiert. Nachdem ein aufgerüsteter Zeuge wieder an einer Spiegelungssitzung teilnimmt, wird das automatische Failover erneut möglich. Möglicherweise müssen Sie an diesem Punkt mehrere Server aktualisieren.

Stellen Sie eine Sitzung auf den Hochleistungsmodus zurück

  1. Optional können Sie mithilfe einer der folgenden Methoden zum Hochleistungsmodus zurückkehren:

    • In SQL Server Management Studio: Ändern Sie die Option "Betriebsmodus" mithilfe der Spiegelungsseite des Dialogfelds "Datenbankeigenschaften" in "Hohe Leistung(asynchron)".

    • In Transact-SQL: Verwenden Sie ALTER DATABASE, um die Transaktionssicherheit auf OFF festzulegen.

Fügen Sie einen Zeugen wieder zu einer Spiegelungssitzung hinzu

  1. Optional können Sie im Hochsicherheitsmodus den Zeugen für jede Spiegelungssitzung erneut wiederherstellen.

    So geben Sie einen Zeugen zurück

Siehe auch

ALTER DATABASE Database Mirroring (Transact-SQL)
BACKUP (Transact-SQL)
Anzeigen des Status einer gespiegelten Datenbank (SQL Server Management Studio)
Datenbankspiegelung (SQL Server)
Installieren eines Service Packs auf einem System mit minimaler Ausfallzeit für gespiegelte Datenbanken
Rollenwechsel während einer Datenbank-Spiegelungssitzung (SQL Server)
Erzwingen des Diensts in einer Datenbank-Spiegelungssitzung (Transact-SQL)
Starten des Datenbankspiegelungs-Monitors (SQL Server Management Studio)
Betriebsmodi für Datenbankspiegelung