Puoi ripristinare un backup di un database Spanner in un nuovo database. Il database ripristinato conterrà tutti i dati e lo schema del database originale al version_time
del backup, incluse tutte le opzioni del database impostate con il comando ALTER DATABASE SET OPTIONS
. Non avrà autorizzazioni IAM (tranne quelle ereditate dall'istanza contenente il database ripristinato) e dovrai applicare le autorizzazioni IAM appropriate al termine del ripristino.
Non includerà i dati interni di nessuno stream di modifiche. Quando ripristini
da un backup, il backup ripristinato si trova nella stessa istanza, nella stessa regione
progetto come backup di origine. Se devi eseguire il ripristino dal backup in un
in regioni o progetti diversi per motivi di conformità o continuità aziendale,
puoi copiare il backup su
un'istanza in una regione o un progetto a parte, quindi esegui il ripristino dalla copia
backup.
Puoi utilizzare il ripristino da un backup nei seguenti modi:
- Nella console Google Cloud
- Utilizzo di Google Cloud CLI
- Utilizzare le librerie client
- Utilizzo delle API REST o RPC
Come funziona il ripristino del database da un backup
Quando ripristini un database Spanner, devi specificare un'origine
un backup e un nuovo database di destinazione. Non puoi eseguire il ripristino in un database esistente.
Il database appena ripristinato deve trovarsi nello stesso progetto del backup e in un'istanza con la stessa configurazione dell'istanza e la stessa edizione di Spanner (o di livello superiore) del backup. Ad esempio, se un backup si trova in un'istanza configurata us-west3
e utilizza la versione Enterprise, può essere ripristinato in qualsiasi istanza del progetto configurata anche us-west3
e che utilizza la versione Enterprise. Se ripristini un backup in una
Istanza Enterprise in una versione Standard
istanza, il ripristino potrebbe non riuscire se il database utilizza
Funzionalità della versione Enterprise. La potenza di calcolo delle istanze non deve essere necessariamente la stessa.
La procedura di ripristino è progettata per l'alta disponibilità. Il database può essere ripristinato a condizione che il quorum di maggioranza delle regioni e delle zone di Cloud Shell è disponibile.
Per ripristinare un backup abilitato per CMEK, sia la chiave sia la versione della chiave devono essere disponibili per Spanner. Per impostazione predefinita, il database ripristinato utilizza lo stesso configurazioni di crittografia come backup. Puoi ignorare questo comportamento specificando una configurazione di crittografia diversa durante il ripristino del database. Per ulteriori informazioni, consulta Ripristinare da un backup abilitato per CMEK.
Ripristinare un backup in una regione o un progetto diverso
Se devi ripristinare il backup in un'altra regione o in un altro progetto, copia prima il backup nella regione o nel progetto scelto. I backup copiati possono essere ripristinati non appena la copia è completata. Puoi ripristinare il backup nell'istanza di destinazione (a condizione che poiché utilizza la versione come istanza di backup di origine) o in qualsiasi istanza che ha la stessa configurazione dell'istanza e la stessa versione (o di livello superiore) di destinazione. Prima del ripristino, assicurati che l'istanza di destinazione disponga di un numero sufficiente di nodi o unità di elaborazione per supportare la dimensione del database in base al limite di 10 TB di spazio di archiviazione per nodo (ovvero, sono necessari nodi per ripristinare un backup di 20 TB). Se hai copiato il backup in un altro progetto e vuoi ripristinarlo lì, assicurati che il progetto di destinazione disponga di quote di nodi sufficienti per il ripristino. Il ripristino di un backup copiato avviene come per un normale ripristino.
Stati di ripristino
Un database ripristinato passa attraverso tre stati, monitorati da due operazioni di lunga durata.
CREATING
: Spanner avvia il ripristino creando una nuova il database e montare file dal backup. Durante questo stato inizialeCREATING
, il database ripristinato non è ancora pronto per l'uso. Questo stato in genere viene completata entro un'ora. Una volta completato lo statoCREATING
, il database è pronto per l'uso.Per monitorare l'avanzamento di questo stato, puoi eseguire una query sull'operazione di ripristino a lunga esecuzione che Spanner rende disponibile durante questa procedura. Restituisce un valore
RestoreDatabaseMetadata
.Tieni presenti le seguenti avvertenze relative allo stato
CREATING
:- Se esegui il ripristino in un'altra istanza, l'operazione di ripristino appartiene all'istanza contenente il database ripristinato, non all'istanza contenente il backup.
- Spanner non ti consentirà di eliminare il backup mentre è
in fase di ripristino. Puoi eliminarlo al termine del ripristino e dopo
entra nello stato
READY
. - Un'istanza può avere al massimo dieci database nello stato
CREATING
a causa di eseguire il ripristino dai backup. Non potrai ripristinare un altro backup all'istanza fino a quando uno dei dieci database ripristinati non passa lo statoREADY_OPTIMIZING
oREADY
.
READY_OPTIMIZING
: dopo aver montato il backup, Spanner inizia a copiare i dati del backup nel nuovo database ottimizzandone le dimensioni archiviate. Il database è pronto per essere utilizzato durante questa procedura. Questa fase del recupero in genere richiede alcune ore per i database di dimensioni inferiori a 100 TB.Anche se puoi utilizzare il database come di consueto durante
READY_OPTIMIZING
, si applicano i seguenti accorgimenti:- Le latenze di lettura potrebbero essere leggermente superiori al solito.
- Le metriche dello spazio di archiviazione mostrano le dimensioni del nuovo database, non del backup. Pertanto, con il trasferimento dei dati ancora in corso, le metriche di archiviazione di Spanner potrebbero mostrare risultati che non riflettono le dimensioni totali di tutti i dati.
- Come per lo stato
CREATING
, Spanner non ti consentirà di per eliminare il backup montato.
In questo stato, Spanner rende disponibile un'altra operazione di ripristino di lunga durata, che restituisce un oggetto metadati
OptimizeRestoredDatabaseMetadata
.READY
: al termine dell'operazione di copia e ottimizzazione, il database passa allo statoREADY
. Il database è completamente ripristinato e non o richiedono una copia di backup.
Controllo degli accessi (IAM)
Il ruolo spanner.restoreAdmin
ti concede l'autorizzazione per eseguire il ripristino da un backup.
Per ulteriori informazioni, consulta Controllo dell'accesso con IAM.
I ruoli seguenti hanno anche accesso alle operazioni di ripristino di Spanner:
spanner.admin
: ha accesso completo al ripristino. Questo ruolo ha accesso completo a tutte le risorse Spanner.owner
: ha accesso completo al ripristino.editor
: ha accesso completo al ripristino.viewer
: ha accesso alla visualizzazione delle operazioni di ripristino. Questo ruolo non può creare, aggiornare, eliminare o copiare un backup.
Prezzi
Non è previsto alcun costo per il ripristino da un backup.
Passaggi successivi
- Per ripristinare un database da un backup, consulta Ripristinare da un backup.