Eine Tabelle aus dem Backup zu einem bestimmten Zeitpunkt in Amazon Keyspaces wiederherstellen - Amazon Keyspaces (für Apache Cassandra)

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Eine Tabelle aus dem Backup zu einem bestimmten Zeitpunkt in Amazon Keyspaces wiederherstellen

Der folgende Abschnitt zeigt, wie Sie eine bestehende Amazon Keyspaces-Tabelle zu einem bestimmten Zeitpunkt wiederherstellen.

Anmerkung

Bei diesem Verfahren wird davon ausgegangen, dass die von Ihnen verwendete Tabelle mit point-in-time Wiederherstellung konfiguriert wurde. Informationen zur Aktivierung PITR für eine Tabelle finden Sie unterPITRFür eine Tabelle in Amazon Keyspaces konfigurieren.

Wichtig

Während einer Wiederherstellung dürfen Sie die Datei nicht ändern oder löschen AWS Identity and Access Management (IAM) Richtlinien, die dem IAM Prinzipal (z. B. einem Benutzer, einer Gruppe oder einer Rolle) die Berechtigung zur Durchführung der Wiederherstellung gewähren. Dies könnte andernfalls zu unerwartetem Verhalten führen. Wenn Sie beispielsweise Schreibberechtigungen für eine Tabelle entfernen, während diese Tabelle wiederhergestellt wird, kann der zugrunde liegende RestoreTableToPointInTime Vorgang keine der wiederhergestellten Daten in die Tabelle schreiben.

Sie können Berechtigungen erst ändern oder löschen, nachdem der Wiederherstellungsvorgang abgeschlossen ist.

Console
Stellen Sie eine Tabelle mithilfe der Konsole auf einen bestimmten Zeitpunkt wieder her
  1. Melden Sie sich an bei AWS Management Console, und öffnen Sie die Amazon Keyspaces-Konsole zu https://console.aws.amazon.com/keyspaces/Hause.

  2. Klicken Sie im Navigationsbereich auf der linken Seite der Konsole auf Tables (Tabellen).

  3. Wählen Sie in der Tabellenliste die Tabelle aus, die Sie wiederherstellen möchten.

  4. Wählen Sie auf der Registerkarte Backups der Tabelle im Abschnitt oint-in-time P-Wiederherstellung die Option Wiederherstellen aus.

  5. Geben Sie für den neuen Tabellennamen beispielsweise einen neuen Namen für die wiederhergestellte Tabelle einmytable_restored.

  6. Um den Zeitpunkt für den Wiederherstellungsvorgang zu definieren, können Sie zwischen zwei Optionen wählen:

    • Wählen Sie den vorkonfigurierten frühesten Zeitpunkt aus.

    • Wählen Sie Datum und Uhrzeit angeben und geben Sie das Datum und die Uhrzeit ein, zu dem Sie die neue Tabelle wiederherstellen möchten.

    Anmerkung

    Sie können zu jedem beliebigen Zeitpunkt innerhalb der frühesten Zeit und der aktuellen Uhrzeit wiederherstellen. Amazon Keyspaces stellt Ihre Tabellendaten auf den Status zurück, der auf dem ausgewählten Datum und der ausgewählten Uhrzeit (Tag:Stunde:Minute:Sekunde) basiert.

  7. Wählen Sie Wiederherstellen, um den Wiederherstellungsvorgang zu starten.

    Die Tabelle, die wiederhergestellt wird, erhält den Status Restoring. Nach Abschluss des Wiederherstellungsvorgangs ändert sich der Status der wiederhergestellten Tabelle in Aktiv.

Cassandra Query Language (CQL)
Stellen Sie eine Tabelle auf einen bestimmten Zeitpunkt wieder her mit CQL
  1. Sie können eine aktive Tabelle auf einen Zeitraum point-in-time zwischen earliest_restorable_timestamp und der aktuellen Uhrzeit zurücksetzen. Die aktuelle Uhrzeit ist die Standardeinstellung.

    Um zu überprüfen, ob die point-in-time Wiederherstellung für die Tabelle aktiviert ist, fragen Sie die system_schema_mcs.tables ab, wie in diesem Beispiel gezeigt.

    SELECT custom_properties FROM system_schema_mcs.tables WHERE keyspace_name = 'mykeyspace' AND table_name = 'mytable';

    Die oint-in-time P-Wiederherstellung ist aktiviert, wie in der folgenden Beispielausgabe gezeigt.

    custom_properties ----------------- { ..., "point_in_time_recovery": { "earliest_restorable_timestamp":"2020-06-30T19:19:21.175Z" "status":"enabled" } }
    • Stellt die aktuelle Uhrzeit der Tabelle wieder her. Wenn Sie die WITH restore_timestamp = ... Klausel weglassen, wird der aktuelle Zeitstempel verwendet.

      RESTORE TABLE mykeyspace.mytable_restored FROM TABLE mykeyspace.mytable;
    • Sie können auch zu einem bestimmten Zeitpunkt wiederherstellen, der durch ein restore_timestamp im Format ISO 8601 definiert ist. Sie können einen beliebigen Zeitpunkt innerhalb der vergangenen 35 Tage angeben. Beispielsweise wird mit dem folgendem Befehl die Tabelle auf den Zeitpunkt EarliestRestorableDateTime widerhergestellt.

      RESTORE TABLE mykeyspace.mytable_restored FROM TABLE mykeyspace.mytable WITH restore_timestamp = '2020-06-30T19:19:21.175Z';

      Eine vollständige Syntaxbeschreibung finden Sie RESTORE TABLE in der Sprachreferenz.

  2. Um zu überprüfen, ob die Wiederherstellung der Tabelle erfolgreich war, fragen system_schema_mcs.tables Sie den Status der Tabelle ab.

    SELECT status FROM system_schema_mcs.tables WHERE keyspace_name = 'mykeyspace' AND table_name = 'mytable_restored'

    Die Abfrage zeigt die folgende Ausgabe.

    status ------ RESTORING

    Die Tabelle, die wiederhergestellt wird, erhält den Status Restoring. Nach Abschluss des Wiederherstellungsvorgangs ändert sich der Status der Tabelle in Aktiv.

CLI
Stellen Sie eine Tabelle auf einen bestimmten Zeitpunkt wieder her, indem Sie AWS CLI
  1. Erstellen Sie eine einfache Tabelle mit dem Namen myTable that has PITR enabled. Der Befehl wurde aus Gründen der Lesbarkeit in separate Zeilen aufgeteilt.

    aws keyspaces create-table --keyspace-name 'myKeyspace' --table-name 'myTable' --schema-definition 'allColumns=[{name=id,type=int},{name=name,type=text},{name=date,type=timestamp}],partitionKeys=[{name=id}]' --point-in-time-recovery 'status=ENABLED'
  2. Bestätigen Sie die Eigenschaften der neuen Tabelle und überprüfen Sie die earliestRestorableTimestamp fürPITR.

    aws keyspaces get-table --keyspace-name 'myKeyspace' --table-name 'myTable'

    Die Ausgabe dieses Befehls gibt Folgendes zurück.

    { "keyspaceName": "myKeyspace", "tableName": "myTable", "resourceArn": "arn:aws:cassandra:us-east-1:111222333444:/keyspace/myKeyspace/table/myTable", "creationTimestamp": "2022-06-20T14:34:57.049000-07:00", "status": "ACTIVE", "schemaDefinition": { "allColumns": [ { "name": "id", "type": "int" }, { "name": "date", "type": "timestamp" }, { "name": "name", "type": "text" } ], "partitionKeys": [ { "name": "id" } ], "clusteringKeys": [], "staticColumns": [] }, "capacitySpecification": { "throughputMode": "PAY_PER_REQUEST", "lastUpdateToPayPerRequestTimestamp": "2022-06-20T14:34:57.049000-07:00" }, "encryptionSpecification": { "type": "AWS_OWNED_KMS_KEY" }, "pointInTimeRecovery": { "status": "ENABLED", "earliestRestorableTimestamp": "2022-06-20T14:35:13.693000-07:00" }, "defaultTimeToLive": 0, "comment": { "message": "" } }
    • Um eine Tabelle auf einen bestimmten Zeitpunkt zurückzusetzen, geben Sie a restore_timestamp im Format ISO 8601 an. Sie können einen beliebigen Zeitpunkt der letzten 35 Tage in Intervallen von einer Sekunde wählen. Beispielsweise wird mit dem folgendem Befehl die Tabelle auf den Zeitpunkt EarliestRestorableDateTime widerhergestellt.

      aws keyspaces restore-table --source-keyspace-name 'myKeyspace' --source-table-name 'myTable' --target-keyspace-name 'myKeyspace' --target-table-name 'myTable_restored' --restore-timestamp "2022-06-20 21:35:14.693"

      Die Ausgabe dieses Befehls gibt die ARN der wiederhergestellten Tabelle zurück.

      { "restoredTableARN": "arn:aws:cassandra:us-east-1:111222333444:/keyspace/myKeyspace/table/myTable_restored" }
    • Um die Tabelle auf die aktuelle Uhrzeit zurückzusetzen, können Sie den restore-timestamp Parameter weglassen.

      aws keyspaces restore-table --source-keyspace-name 'myKeyspace' --source-table-name 'myTable' --target-keyspace-name 'myKeyspace' --target-table-name 'myTable_restored1'"