ALTER SNAPSHOT SET¶
Ändert die Eigenschaften für ein:doc:Snapshot</user-guide/snapshots>
-Set. Diese Operation kann eine der folgenden sein:
Erstellen eines neuen Backups, das Teil des Snapshot-Sets wird.
Entfernen eines alten Backups aus dem Snapshot-Set.
Anhalten oder Fortsetzen der geplanten Backups und der geplanten Löschung von Snapshots, die in der Snapshot-Richtlinie festgelegt sind.
Anwenden einer Snapshot-Richtlinie auf ein Snapshot-Set, das noch keine Richtlinie hat.
Hinzufügen oder Entfernen einer gesetzlichen Aufbewahrungsfrist für einen bestimmten Snapshot innerhalb des Snapshot-Sets.
Angeben oder Entfernen eines Kommentars zum Snapshot-Set.
- Siehe auch:
Syntax¶
ALTER SNAPSHOT SET <name> ADD SNAPSHOT
ALTER SNAPSHOT SET <name> APPLY SNAPSHOT POLICY <policy_name>
ALTER SNAPSHOT SET <name> SUSPEND SNAPSHOT POLICY
ALTER SNAPSHOT SET <name> RESUME SNAPSHOT POLICY
ALTER SNAPSHOT SET <name> DELETE SNAPSHOT IDENTIFIER '<snapshot_id>'
ALTER SNAPSHOT SET <name> MODIFY SNAPSHOT IDENTIFIER '<snapshot_id>' { ADD | REMOVE } LEGAL HOLD
ALTER SNAPSHOT SET <name> SET COMMENT = '<string_literal>'
ALTER SNAPSHOT SET <name> UNSET COMMENT
Parameter¶
name
Gibt den Bezeichner für das Snapshot-Set an.
Wenn der Bezeichner Leerzeichen oder Sonderzeichen enthält, muss die gesamte Zeichenfolge in doppelte Anführungszeichen gesetzt werden. Bei Bezeichnern, die in doppelte Anführungszeichen eingeschlossen sind, ist auch die Groß- und Kleinschreibung zu beachten.
Weitere Informationen dazu finden Sie unter Anforderungen an Bezeichner.
ADD SNAPSHOT
Erstellen Sie manuell einen Snapshot im Set. Wenn die Snapshot-Richtlinie keinen Zeitplan für neue Backups enthält, erstellen Sie auf diese Weise ein neues Backup der Tabelle, des Schemas oder der Datenbank, die im Snapshot-Set enthalten sind. Sie können auch jederzeit neue Backups im Snapshot-Set erstellen, selbst wenn die Backups nach einem regelmäßigen Zeitplan erfolgen.
APPLY SNAPSHOT POLICY policy_name
Gibt die Snapshot-Richtlinie an, die mit dem Snapshot-Set verbunden werden soll.
Wichtig
Das Anwenden einer Snapshot-Richtlinie mit einer Aufbewahrungssperre auf einen Snapshot-Satz ist irreversibel. Aufgrund der starken Garantien, die für die Einhaltung gesetzlicher Vorschriften erforderlich sind, können Sie die Sperre nicht mehr widerrufen, nachdem Sie einem Snapshot-Set eine Aufbewahrungssperre erteilt haben. Der Snowflake-Support kann eine solche Aufbewahrungssperre auch nicht widerrufen. Planen Sie sorgfältig, bevor Sie eine Aufbewahrungssperre für ein Snapshot-Set mit einer langen Ablauffrist festlegen, um unerwartete Speichergebühren für nicht löschbare Snapshot-Sets und die Schemas und Datenbanken, die sie enthalten, zu vermeiden.
Wenn eine Snowflake-Organisation gelöscht wird, ist die Organisation nicht mehr ein Snowflake-Kunde. In diesem Fall löscht Snowflake alle Snapshots, auch solche mit Aufbewahrungssperren. Das Löschen einer Snowflake-Organisation erfordert die Einbeziehung des Snowflake-Supports. Das kann ein Administrator nicht versehentlich tun.
SUSPEND SNAPSHOT POLICY
Setzen Sie eine Snapshot-Richtlinie im Snapshot-Set aus. Weitere Informationen dazu finden Sie unter Eine Snapshot-Richtlinie für ein Snapshot-Set aussetzen.
RESUME SNAPSHOT POLICY
Setzen Sie eine ausgesetzte Snapshot-Richtlinie im Set fort. Weitere Informationen dazu finden Sie unter Eine Snapshot-Richtlinie für ein Snapshot-Set fortsetzen.
DELETE SNAPSHOT IDENTIFIER 'snapshot_id'
Löschen Sie einen Snapshot in dem Snapshot-Set durch ID. Der Snapshot ID ist eine UUID-Wert in dem von der UUID_STRING-Funktion zurückgegebenen Format. Weitere Informationen dazu finden Sie unter Einen Snapshot aus einem Snapshot-Set löschen.
ALTER SNAPSHOT SET name MODIFY SNAPSHOT IDENTIFIER 'snapshot_id' ADD | REMOVE LEGAL HOLD
Fügt einem bestimmten Snapshot innerhalb des Snapshot-Sets eine gesetzliche Aufbewahrungsfrist hinzu oder entfernt sie. Weitere Informationen zu gesetzlichen Aufbewahrungsfristen für WORM-Snapshots finden Sie unter Gesetzliche Aufbewahrungsfrist. Beispiele für die Verwendung dieser Klausel finden Sie unter Gesetzliche Aufbewahrungsfristen hinzufügen und entfernen.
SET COMMENT = 'string_literal'
Verknüpfen Sie Snapshot-Set mit einem Kommentar.
UNSET COMMENT
Entfernen Sie den Kommentar aus dem Snapshot-Set.
Anforderungen an die Zugriffssteuerung¶
Eine Rolle, die zur Ausführung dieser Operation verwendet wird, muss mindestens die folgenden Berechtigungen haben:
Berechtigung |
Beschreibung |
---|---|
OWNERSHIP |
Die Rolle, die zum Bearbeiten eines Snapshot-Sets verwendet wird, muss die OWNERSHIP-Berechtigung für das Snapshot-Set haben. |
APPLY SNAPSHOT RETENTION LOCK |
Wenn die auf ein Snapshot-Set angewendete Snapshot-Richtlinie eine Aufbewahrungssperre enthält, muss die Rolle, mit der die Richtlinie angewendet wird, diese Berechtigung für das Konto haben. |
APPLY LEGAL HOLD |
Diese Kontoberechtigung bietet die Möglichkeit, einem Snapshot eine gesetzliche Aufbewahrungsfrist hinzuzufügen oder zu entziehen. Diese Berechtigung wird nur für ADD LEGAL HOLD und REMOVE LEGAL HOLD-Klauseln benötigt. Standardmäßig verfügt die Rolle ACCOUNTADMIN über diese Berechtigung. |
APPLY |
Nur ein Benutzer mit dieser Berechtigung für die Snapshot-Richtlinie kann den ALTER SNAPSHOT SET-Befehl mit der APPLY SNAPSHOT POLICY-Klausel verwenden, um die Snapshot-Richtlinie zu einem bereits vorhandenen Snapshot-Set hinzuzufügen. |
Diese Berechtigungen sind für die derzeit aktive Primärrolle erforderlich, nicht für eine Sekundärrolle.
Eine Anleitung zum Erstellen einer kundenspezifischen Rolle mit einer bestimmten Gruppe von Berechtigungen finden Sie unter Erstellen von kundenspezifischen Rollen.
Allgemeine Informationen zu Rollen und Berechtigungen zur Durchführung von SQL-Aktionen auf sicherungsfähigen Objekten finden Sie unter Übersicht zur Zugriffssteuerung.
Nutzungshinweise¶
Metadaten:
Achtung
Kunden müssen sicherstellen, dass bei der Nutzung des Snowflake-Dienstes keine personenbezogenen Daten (außer für ein Objekt „User“), sensible Daten, exportkontrollierte Daten oder andere regulierte Daten als Metadaten eingegeben werden. Weitere Informationen dazu finden Sie unter Metadatenfelder in Snowflake.
Wichtig
Wenn auf die Snapshot-Richtlinie eine Aufbewahrungssperre angewendet wurde und noch nicht abgelaufene Snapshots im Snapshot-Satz enthalten sind, können Sie den Snapshot-Satz nicht löschen. In diesem Fall müssen Sie warten, bis alle Snapshots im Satz abgelaufen sind. Diese Einschränkung gilt auch für privilegierte Rollen wie ACCOUNTADMINund für den Snowflake-Support. Aus diesem Grund sollten Sie vorsichtig sein, wenn Sie in einer Snapshot-Richtlinie eine Aufbewahrungssperre und einen langen Ablaufzeitpunkt angeben.
Beispiele¶
Fügen Sie manuell einen Snapshot zum Snapshot-Set t1_snapshots
hinzu:
ALTER SNAPSHOT SET t1_snapshots
ADD SNAPSHOT;
Aktualisieren Sie die Snapshot-Richtlinie für das Snapshot-Set t1_snapshots
:
ALTER SNAPSHOT SET t1_snapshots
APPLY SNAPSHOT POLICY daily_snapshot_policy;
Setzen Sie eine Snapshot-Richtlinie für das Snapshot-Set t1_snapshot
aus:
ALTER SNAPSHOT SET t1_snapshots
SUSPEND SNAPSHOT POLICY;
Setzen Sie eine Snapshot-Richtlinie für das Snapshot-Set t1_snapshots
fort:
ALTER SNAPSHOT SET t1_snapshots
RESUME SNAPSHOT POLICY;
Um den Snapshot-Bezeichner zu finden, der mit den ADD LEGAL HOLD und REMOVE LEGAL HOLD-Klauseln verwendet werden soll, Verwenden Sie normalerweise den SHOW SNAPSHOTS-Befehl, um die geeigneten Snapshots und deren Erstellungszeitpunkte aufzulisten. Das folgende Beispiel zeigt, wie Sie die entsprechenden Snapshots auflisten, einem bestimmten Snapshot eine rechtliche Sperre hinzufügen und diese rechtliche Sperre später entfernen können. Ersetzen Sie Ihren eigenen Rollennamen, den Namen des Snapshot-Sets und den Bezeichner des Snapshots.
USE ROLE my_legal_hold_role; -- use a role that has the APPLY LEGAL HOLD privilege
SHOW SNAPSHOTS IN SNAPSHOT SET my_db_snapshot_set
->> SELECT "created_on", "snapshot_id" FROM $1 WHERE "is_under_legal_hold" = 'N';
ALTER SNAPSHOT SET my_db_snapshot_set
MODIFY SNAPSHOT IDENTIFIER '790d1ee4-88b2-451f-9ccc-eacd1e93a134'
ADD LEGAL HOLD;
USE ROLE my_legal_hold_role; -- use a role that has the APPLY LEGAL HOLD privilege
SHOW SNAPSHOTS IN SNAPSHOT SET my_db_snapshot_set
->> SELECT "created_on", "snapshot_id" FROM $1 WHERE "is_under_legal_hold" = 'Y';
ALTER SNAPSHOT SET my_db_snapshot_set
MODIFY SNAPSHOT IDENTIFIER '790d1ee4-88b2-451f-9ccc-eacd1e93a134'
REMOVE LEGAL HOLD;