ALTER REPLICATION GROUP¶
Ändert die Eigenschaften einer bestehenden Replikationsgruppe.
Vom Quellkonto aus können Sie die folgenden Aktionen ausführen:
Umbenennen der Replikationsgruppe
Zurücksetzen der Liste der angegebenen Objekttypen, die für die Replikation aktiviert sind
Festlegen oder Aktualisieren des Replikationsplans für die automatische Aktualisierung der sekundären Replikationsgruppen
Hinzufügen oder Entfernen von Kontoobjekten der folgenden Typen zu oder aus einer Replikationsgruppe:
Datenbanken
Freigaben
Sicherheitsintegrationen
API-Integrationen
Bestimmte Typen von Benachrichtigungsintegrationen (siehe Integrationsreplikation)
Hinzufügen oder Entfernen von Zielkonten, die für Replikation aktiviert sind
Verschieben von Datenbanken oder Freigaben von einer Replikationsgruppe in eine andere Replikationsgruppe.
Vom Zielkonto aus können Sie die folgenden Aktionen ausführen:
Aktualisieren der Objekte im Zielkonto vom Quellkonto aus
Anhalten einer geplanten Replikation
Fortsetzen einer geplanten Replikation
Syntax¶
Quellkonto
ALTER REPLICATION GROUP [ IF EXISTS ] <name> RENAME TO <new_name>
ALTER REPLICATION GROUP [ IF EXISTS ] <name> SET
[ OBJECT_TYPES = <object_type> [ , <object_type> , ... ] ]
[ REPLICATION_SCHEDULE = '{ <num> MINUTE | USING CRON <expr> <time_zone> }' ]
ALTER REPLICATION GROUP [ IF EXISTS ] <name> SET
OBJECT_TYPES = INTEGRATIONS [ , <object_type> , ... ] ]
ALLOWED_INTEGRATION_TYPES = <integration_type_name> [ , <integration_type_name> ... ] ]
[ REPLICATION_SCHEDULE = '{ <num> MINUTE | USING CRON <expr> <time_zone> }' ]
ALTER REPLICATION GROUP [ IF EXISTS ] <name>
ADD <db_name> [ , <db_name> , ... ] TO ALLOWED_DATABASES
ALTER REPLICATION GROUP [ IF EXISTS ] <name>
MOVE DATABASES <db_name> [ , <db_name> , ... ] TO REPLICATION GROUP <move_to_rg_name>
ALTER REPLICATION GROUP [ IF EXISTS ] <name>
REMOVE <db_name> [ , <db_name> , ... ] FROM ALLOWED_DATABASES
ALTER REPLICATION GROUP [ IF EXISTS ] <name>
ADD <share_name> [ , <share_name> , ... ] TO ALLOWED_SHARES
ALTER REPLICATION GROUP [ IF EXISTS ] <name>
MOVE SHARES <share_name> [ , <share_name> , ... ] TO REPLICATION GROUP <move_to_rg_name>
ALTER REPLICATION GROUP [ IF EXISTS ] <name>
REMOVE <share_name> [ , <share_name> , ... ] FROM ALLOWED_SHARES
ALTER REPLICATION GROUP [ IF EXISTS ] <name>
ADD <org_name>.<target_account_name> [ , <org_name>.<target_account_name> , ... ] TO ALLOWED_ACCOUNTS
[ IGNORE EDITION CHECK ]
ALTER REPLICATION GROUP [ IF EXISTS ] <name>
REMOVE <org_name>.<target_account_name> [ , <org_name>.<target_account_name> , ... ] FROM ALLOWED_ACCOUNTS
Zielkonto
ALTER REPLICATION GROUP [ IF EXISTS ] <secondary_name> REFRESH
ALTER REPLICATION GROUP [ IF EXISTS ] <secondary_name> SUSPEND
ALTER REPLICATION GROUP [ IF EXISTS ] <secondary_name> RESUME
Parameter¶
Quellkonto
name
Gibt den Bezeichner der Replikationsgruppe an.
RENAME TO new_name
new_name
Gibt den neuen Bezeichner der Replikationsgruppe an. Der neue Bezeichner kann nicht verwendet werden, wenn der Bezeichner bereits für ein andere Replikations- oder Failover-Gruppe verwendet wird.
Weitere Details dazu finden Sie unter Anforderungen an Bezeichner.
SET ...
Gibt eine (oder mehrere) Eigenschaften an, die für die Replikationsgruppe festgelegt werden sollen (getrennt durch Leerzeichen, Kommas oder Neue-Zeile-Zeichen): Weitere Informationen zu den Eigenschaften, die Sie festlegen können, finden Sie unter CREATE REPLICATION GROUP.
ADD db_name [ , db_name , ... ] TO ALLOWED_DATABASES
Gibt eine durch Kommas getrennte Liste von Datenbanken an, die zur Liste der für die Replikation aktivierten Datenbanken hinzugefügt werden sollen. Um eine Datenbank hinzuzufügen, muss DATABASES in der Liste der angegebenen Objekttypen enthalten sein. Wenn DATABASES noch nicht in der Liste der Objekttypen enthalten ist, müssen Sie diesen Typ hinzufügen.
db_name
Gibt den Bezeichner der Datenbank an.
MOVE DATABASES db_name [ , db_name , ... ] TO REPLICATION GROUP move_to_rg_name
Gibt eine durch Kommas getrennte Liste von Datenbanken an, die von einer Replikationsgruppe in eine andere Replikationsgruppe verschoben werden sollen. Bei der Replikationsgruppe, in die die Datenbanken verschoben werden, muss DATABASES in der Liste der angegebenen Objekttypen enthalten sein.
db_name
Gibt den Bezeichner der Datenbank an.
move_to_rg_name
Gibt den Bezeichner für die Replikationsgruppe an, in die die Datenbanken verschoben werden sollen.
REMOVE db_name [ , db_name , ... ] FROM ALLOWED_DATABASES
Gibt eine durch Kommas getrennte Liste von Datenbanken an, die aus der Liste der für die Replikation und aktivierten Datenbanken entfernt werden sollen.
ADD share_name [ , share_name , ... ] TO ALLOWED_SHARES
Gibt eine durch Kommas getrennte Liste von Freigaben an, die zur Liste der für die Replikation aktivierten Freigaben hinzugefügt werden sollen. Um eine Freigabe hinzuzufügen, muss SHARES in der Liste der angegebenen Objekttypen enthalten sein. Wenn SHARES noch nicht in der Liste der Objekttypen enthalten ist, müssen Sie diesen Typ hinzufügen.
share_name
Gibt den Bezeichner der Freigabe an.
MOVE SHARES share_name [ , share_name , ... ] TO REPLICATION GROUP move_to_rg_name
Gibt eine durch Kommas getrennte Liste von Freigaben an, die von einer Replikationsgruppe in eine andere Replikationsgruppe verschoben werden sollen. Bei der Replikationsgruppe, in die die Freigaben verschoben werden, muss SHARES in der Liste der angegebenen Objekttypen enthalten sein.
share_name
Gibt den Bezeichner der Freigabe an.
move_to_rg_name
Gibt den Bezeichner für die Replikationsgruppe an, in die die Freigaben verschoben werden sollen.
REMOVE share_name [ , share_name , ... ] FROM ALLOWED_SHARES
Gibt eine durch Kommas getrennte Liste von Freigaben an, die aus der Liste der für die Replikation aktivierten Freigaben entfernt werden sollen.
ADD org_name.target_account_name [ , org_name.target_account_name , ... ] TO ALLOWED_ACCOUNTS
Gibt eine durch Kommas getrennte Liste von Zielkonten an, die der primären Replikationsgruppe hinzugefügt werden sollen, um die Replikation der angegebenen Objekte vom Quellkonto in das Zielkonto zu aktivieren.
org_name
Name Ihrer Snowflake-Organisation.
target_account_name
Zielkonto, für das Sie die Replikation der angegebenen Objekte aktivieren.
REMOVE org_name.target_account_name [ , org_name.target_account_name , ... ] FROM ALLOWED_ACCOUNTS
Gibt eine durch Kommas getrennte Liste von Zielkonten an, die aus der primären Replikationsgruppe entfernt werden sollen, um die Replikation der angegebenen Objekte vom Quellkonto in das Zielkonto zu deaktivieren.
org_name
Name Ihrer Snowflake-Organisation.
target_account_name
Zielkonto, für das Sie die Replikation der angegebenen Objekte deaktivieren.
IGNORE EDITION CHECK
Ermöglicht das Replizieren von Objekten in Konten mit niedrigeren Editionen in einem der folgenden Szenarios:
Eine primäre Replikationsgruppe, die nur Datenbank- und/oder Freigabeobjekte enthält, befindet sich in einem Business Critical-Konto (oder höher), aber eines oder mehrere der zur Replikation genehmigten Konten weisen niedrigere Editionen auf. Die Business Critical Edition ist für Snowflake-Konten mit äußerst sensiblen Daten vorgesehen.
Eine primäre Replikationsgruppe mit einem beliebigen Objekttyp befindet sich in einem Business Critical-Konto (oder höher), und es besteht eine unterzeichnete Geschäftspartner-Vereinbarung zur Speicherung von PHI-Daten in dem Konto gemäß HIPAA- und HITRUST-Vorschriften. Allerdings besteht für eines oder mehrere der zur Replikation genehmigten Konten keine solche Vereinbarung, unabhängig davon, ob es sich um Business Critical-Konten (oder höhere) handelt.
Beide Szenarios sind standardmäßig nicht erlaubt, um zu verhindern, dass Kontoadministratoren von Business Critical-Konten (oder höher) versehentlich vertrauliche Daten in Konten mit niedrigeren Editionen replizieren.
Zielkonto
secondary_name
Gibt den Bezeichner der Replikationsgruppe an.
REFRESH
Aktualisiert die Objekte im (aktuellen) Zielkonto aus dem Quellkonto.
SUSPEND
Anhalten der geplanten Aktualisierung der sekundären Replikationsgruppe (wenn die primäre Replikationsgruppe automatische Aktualisierungen mit der Eigenschaft
REPLICATION_SCHEDULE
geplant hat).Bemerkung
Das Anhalten der geplanten Replikation hat keine Auswirkungen auf eine Aktualisierungsoperation, die gerade ausgeführt wird. Es wird nur der Zeitplan angehalten, sodass nach Abschluss der aktuellen Aktualisierung keine weiteren Aktualisierungen geplant sind.
RESUME
Fortsetzen der geplanten Aktualisierung der sekundären Replikationsgruppe (wenn die primäre Replikationsgruppe automatische Aktualisierungen mit der Eigenschaft
REPLICATION_SCHEDULE
geplant hat).
Nutzungshinweise¶
Folgende Berechtigungen sind mindestens erforderlich:
Zum Aktualisieren einer sekundären Replikationsgruppe mit ALTER REPLICATION GROUP … REFRESH muss eine Rolle entweder die OWNERSHIP- oder die REPLICATE-Berechtigung für die Replikationsgruppe haben.
Um weitere Änderungen an der Replikationsgruppe vorzunehmen, kann nur ein Benutzer mit einer Rolle mit OWNERSHIP-Berechtigung für die Gruppe diesen SQL-Befehl ausführen.
Um eine Datenbank zu einer Replikationsgruppe hinzuzufügen, muss die aktive Rolle über die MONITOR-Berechtigung für die Datenbank verfügen.
Um eine Freigabe zu einer Replikationsgruppe hinzuzufügen, muss die aktive Rolle über die OWNERSHIP-Berechtigung für die Freigabe verfügen.
Bezeichner für Failover-Gruppen und Replikationsgruppen in einem Konto müssen eindeutig sein.
Anders als Datenbanken oder Freigaben müssen sich Objekte in der gleichen Replikationsgruppe befinden.
Eine Datenbank kann nur zu einer einzigen Replikations- oder Failover-Gruppe hinzugefügt werden.
So verschieben Sie Datenbanken oder Freigaben von einer Replikationsgruppe (der „Verschieben von“-Gruppe) in eine andere Replikationsgruppe (die „Verschieben nach“-Gruppe):
Beide Gruppen müssen vom gleichen Typ sein: REPLICATION GROUP.
Wenn die letzte Datenbank der „Verschieben von“-Gruppe in eine andere Gruppe verschoben wurde, wird die Eigenschaft
allowed_databases
für die „Verschieben von“-Gruppe auf NULL gesetzt. Das gleiche Verhalten gilt für Freigaben.Wenn in der
object_types
-Liste der „Verschieben nach“-Gruppe nicht der Objekttyp enthalten ist, der verschoben werden soll (databases
odershares
), muss dieser Typ vor dem Verschieben von Objekten explizit zur „Verschieben nach“-Gruppe hinzugefügt werden.
Um die Liste der Konten in Ihrer Organisation abzurufen, die für die Replikation aktiviert sind, verwenden Sie den Befehl SHOW REPLICATION ACCOUNTS.
Um die Liste der Replikationsgruppe in Ihrer Organisation abzurufen, verwenden Sie den Befehl SHOW REPLICATION GROUPS. In der Spalte
allowed_accounts
werden alle Zielkonten aufgelistet, die für die Replikation von einem Quellkonto aktiviert sind.Hinweis zu Metadaten:
Achtung
Kunden müssen sicherstellen, dass bei der Nutzung des Snowflake-Dienstes keine personenbezogenen Daten (außer für ein Objekt „Benutzer“), sensible Daten, exportkontrollierte Daten oder andere regulierte Daten als Metadaten eingegeben werden. Weitere Informationen dazu finden Sie unter Metadatenfelder in Snowflake.
Beispiele¶
Von Quellkonto ausführen¶
Fügen Sie myorg.myaccount3
zur Liste der Zielkonten hinzu, für die die Replikation der angegebenen Objekte vom Quellkonto aus aktiviert ist.
ALTER REPLICATION GROUP myrg ADD myorg.myaccount3 TO ALLOWED_ACCOUNTS;
Setzen Sie die Objekttypenliste für die Replikation im Quellkonto zurück:
ALTER REPLICATION GROUP myrg SET
OBJECT_TYPES = DATABASES, SHARES;
Fügen Sie Datenbank db1
zur Liste der für die Replikation aktivierten Datenbanken hinzu:
ALTER REPLICATION GROUP myrg
ADD db1 to ALLOWED_DATABASES;
Fügen Sie die Freigabe s2
zur Liste der für die Replikation aktivierten Freigaben hinzu:
ALTER REPLICATION GROUP myrg
ADD s2 TO ALLOWED_SHARES;
Verschieben Sie Datenbank db1
in die Replikationsgruppe myrg2
:
ALTER REPLICATION GROUP myrg
MOVE DATABASES db1 TO REPLICATION GROUP myrg2;
Legen Sie für das geplante Aktualisierungsintervall 15 Minuten fest:
ALTER REPLICATION GROUP myrg SET
REPLICATION_SCHEDULE = '15 MINUTE';
Von Zielkonto ausführen¶
Aktualisieren Sie die Objekte der Replikationsgruppe myrg
im Zielkonto:
ALTER REPLICATION GROUP myrg REFRESH;
Halten Sie die automatischen Aktualisierungen an:
ALTER REPLICATION GROUP myrg SUSPEND;