Failover von Datenbanken über mehrere Konten

Unter diesem Thema werden die Schritte beschrieben, die für ein Failover Ihrer replizierten Datenbanken über mehrere Konten in verschiedenen Regionen für die Notfallwiederherstellung erforderlich sind.

Bemerkung

Unter diesem Thema:

Weboberfläche für Datenbankreplikation und Failover/Failback

Achtung

Das Verwalten und Überwachen von Replikation und Failover/Failback in Snowsight und Classic Console ist nur bei Konten verfügbar, die private Konnektivität nutzen.

Informationen zu allen anderen Konten finden Sie unter Replikation mit Snowsight überwachen und Replizieren von Kontoobjekten und Datenbanken.

Kontoadministratoren (Benutzer mit der Rolle ACCOUNTADMIN) können Replikations- und Failover/Failback-Aktionen entweder über Snowsight oder die klassischen Weboberfläche verwalten.

Snowsight

Eine Anleitung zum Heraufstufen einer lokalen Datenbank zur primären Datenbank finden Sie unter Weboberfläche für Datenbankreplikation und Failover/Failback.

Classic Console

Die meisten Aktionen zum Konfigurieren und Verwalten der Datenbankreplikation können Sie auf der klassischen Weboberfläche über den Bereich Replication der Registerkarte Databases Databases tab ausführen, einschließlich der folgenden Aktionen:

  • Heraufstufen einer lokalen Datenbank zur Primärdatenbank

  • Aktivieren des Failover für eine Primärdatenbank (Business Critical Edition-Konten oder höher)

  • Aktualisieren einer Sekundärdatenbank entweder einmal (manuell) oder wiederholt (nach Zeitplan unter Verwendung einer Aufgabe)

  • Heraufstufen einer sekundären Datenbanken als primäre Datenbank (Business Critical Edition-Konten oder höher)

  • Deaktivieren der Replikation und/oder des Failover einer Primärdatenbank

Kontobezeichner für SQL-Befehle zu Replikation und Failover

Die SQL-Beispielanweisungen in der folgenden Anleitung verwenden einen Kontobezeichner im Format organization_name.account_name. Es werden aber auch Kontobezeichner im Format snowflake_region.account_locator unterstützt.

Weitere Details dazu finden Sie unter Kontobezeichner für Replikation und Failover.

Voraussetzungen

  1. Aktivieren Sie die Replikation für eine Primärdatenbank in den entsprechenden Konten.

  2. Erstellen Sie mindestens eine sekundäre Datenbank (d. h. ein Replikat) der primären Datenbank in einem oder mehreren der in Schritt 1 angegebenen Konten, und aktualisieren Sie das Replikat regelmäßig (d. h. synchronisieren Sie es mit den neuesten Aktualisierungen der primären Datenbank).

Eine Anleitung dazu finden Sie unter Replizieren von Datenbanken über mehrere Konten.

Schritt 1: Anzeigen aller für die Replikation aktivierten Konten

Fragen Sie SHOW REPLICATION ACCOUNTS ab, um die Liste der Konten in Ihrer Organisation anzuzeigen, für die die Replikation aktiviert wurde.

SHOW REPLICATION ACCOUNTS;

+------------------+---------------------------------+---------------+------------------+---------+-------------------+
| snowflake_region | created_on                      | account_name  | account_locator  | comment | organization_name |
|------------------+---------------------------------+---------------+------------------+---------+-------------------|
| AWS_US_WEST_2    | 2018-11-19 16:11:12.720 -0700   | ACCOUNT1      | MYACCOUNT1       |         | MYORG             |
| AWS_US_EAST_1    | 2019-06-02 14:12:23.192 -0700   | ACCOUNT2      | MYACCOUNT2       |         | MYORG             |
+------------------+---------------------------------+---------------+------------------+---------+-------------------+
Copy

Verwenden Sie auch die vollständige Liste der Regions-IDs.

Schritt 2: Aktivieren des Failovers für eine Primärdatenbank

Bemerkung

Überspringen Sie diesen Schritt, wenn Sie das Failover für diese Primärdatenbank in Replizieren von Datenbanken über mehrere Konten aktiviert haben.

Aktivieren Sie das Failover einer Primärdatenbank für ein oder mehrere Konten Ihrer Organisation mithilfe einer Anweisung ALTER DATABASE … ENABLE FAILOVER TO ACCOUNTS. Das Replikat dieser Primärdatenbank in einem der Konten (d. h. eine Sekundärdatenbank) kann heraufgestuft werden, um als Primärdatenbank zu dienen.

Beachten Sie, dass das Aktivieren des Failovers für eine Primärdatenbank entweder vor oder nach dem Erstellen des Replikats der Primärdatenbank in einem angegebenen Konto erfolgen kann.

Beispiel

Aktivieren Sie das Failover der Primärdatenbank mydb1 in die Konten myaccount2 und myaccount3. In diesem Beispiel wird angenommen, dass die Primärdatenbank im Konto myaccount1 gespeichert ist und alle drei Konten zur Organisation myorg gehören. Der Befehl ALTER DATABASE muss von myaccount1 aus ausgeführt werden.

ALTER DATABASE mydb1 ENABLE FAILOVER TO ACCOUNTS myorg.myaccount2, myorg.myaccount3;
Copy

Schritt 3: Heraufstufen einer Replikatdatenbank als Primärdatenbank

Jedes Replikat einer Primärdatenbank kann zur Primärdatenbank heraufgestuft werden, indem die Anweisung ALTER DATABASE … PRIMARY ausgeführt wird. Beim Heraufstufen wird die Datenbank beschreibbar. Gleichzeitig wird die vorherige Primärdatenbank zu einer schreibgeschützten Replikatdatenbank.

Führen Sie die Anweisung ALTER DATABASE in dem Konto aus, das die sekundäre Datenbank enthält, die Sie heraufstufen möchten.

Bemerkung

Zum Heraufstufen einer sekundären Datenbank muss die zum Ausführen der Operation verwendete Rolle über die Berechtigung OWNERSHIP für die Datenbank verfügen.

Beispiel

-- Promote a secondary database to serve as the primary database.
ALTER DATABASE mydb1 PRIMARY;

-- Verify that the former secondary database was promoted successfully.
SHOW REPLICATION DATABASES;
Copy