Informazioni sui backup di Cloud SQL

Questa pagina descrive il funzionamento dei backup dell'istanza Cloud SQL. Puoi eseguire backup sull'istanza principale.

Per istruzioni dettagliate per la pianificazione dei backup o la creazione di un backup on demand, consulta Creazione e gestione di backup on demand e automatici.

Per una panoramica su come ripristinare i dati in un'istanza dal backup, consulta la Panoramica del ripristino di un'istanza.

Funzionalità offerte dai backup

I backup ti aiutano a ripristinare i dati persi nell'istanza Cloud SQL. Inoltre, se un'istanza presenta un problema, puoi ripristinarla a uno stato precedente utilizzando il backup per sovrascriverla. Abilita i backup automatici per qualsiasi istanza contenente i dati necessari. I backup proteggono i dati da perdite o danni.

L'abilitazione dei backup automatici, insieme al logging binario, è richiesta anche per alcune operazioni, come la clonazione e la creazione di repliche.

Costo dei backup

Per impostazione predefinita, Cloud SQL conserva 7 backup automatici per ogni istanza della versione Cloud SQL Enterprise e 15 backup automatici per ogni istanza della versione Cloud SQL Enterprise Plus , oltre ai backup on demand. Puoi configurare il numero di backup automatici da conservare (da 1 a 365). Per l'archiviazione di backup viene addebitata una tariffa inferiore rispetto ad altri tipi di istanze.

Cloud SQL non esegue il backup di un'istanza se la arresti o la elimini. Se elimini un'istanza, i dati vengono conservati solo per 4 giorni. Per recuperare l'istanza e i relativi dati, contatta l'assistenza Google Cloud entro la finestra di 4 giorni con tutte le informazioni richieste sull'istanza.

Per ulteriori informazioni, consulta la pagina dei prezzi.

Confronto tra backup ed esportazioni

I backup sono gestiti da Cloud SQL in base ai criteri di conservazione e sono archiviati separatamente dall'istanza Cloud SQL. I backup di Cloud SQL sono diversi da un'esportazione caricata in Cloud Storage, dove è possibile gestire il ciclo di vita. I backup comprendono l'intero database. Le esportazioni possono selezionare contenuti specifici.

Non è possibile utilizzare le operazioni di backup e ripristino per eseguire l'upgrade di un database a una versione successiva. Puoi eseguire il ripristino solo da un backup su un'istanza con la stessa versione del database.

Per eseguire l'upgrade a una versione successiva, valuta la possibilità di utilizzare Database Migration Service o di esportare e importare il database in una nuova istanza Cloud SQL.

Informazioni sulle dimensioni del backup

I backup di Cloud SQL sono incrementali. Contengono solo dati che sono modificati dopo l'esecuzione del backup precedente. Il backup meno recente ha dimensioni simili a quelle del tuo database, ma le dimensioni dei backup successivi dipendono dalla frequenza di modifica dei dati. Quando viene eliminato il backup meno recente, aumentano le dimensioni di quello meno recente in modo che esista ancora un backup completo.

Tipi di backup

Cloud SQL esegue due tipi di backup:

Backup on demand

Puoi creare un backup in qualsiasi momento. Questo può essere utile se stai per eseguire un'operazione rischiosa sul tuo database o se hai bisogno di un backup e non vuoi attendere la finestra di backup. Puoi creare backup on demand per qualsiasi istanza, indipendentemente dal fatto che i backup automatici siano abilitati o meno per l'istanza.

I backup on demand non vengono eliminati automaticamente come lo sono quelli automatici. Restano finché non li elimini o fino a quando la loro istanza non viene eliminata. Poiché non vengono eliminati automaticamente, i backup on demand possono avere un effetto a lungo termine sui tuoi addebiti di fatturazione.

Backup automatici

I backup automatici vengono eseguiti ogni giorno, entro una finestra di backup di quattro ore. Il backup viene avviato durante la relativa finestra. Se possibile, pianifica i backup quando l'istanza ha l'attività minima.

Ti consigliamo di non eliminare i backup automatici perché sono necessari per supportare il recupero point-in-time.

Durante la finestra di backup, i backup automatici vengono eseguiti ogni giorno di esecuzione dell'istanza. Viene eseguito un backup automatico aggiuntivo dopo l'interruzione dell'istanza per salvaguardare tutte le modifiche prima dell'arresto dell'istanza. Per impostazione predefinita, vengono conservati fino a sette backup più recenti. Puoi configurare il numero di backup automatici da conservare, da 1 a 365. I valori di conservazione dei log per backup e transazioni possono essere modificati rispetto all'impostazione predefinita. Scopri di più.

Dove vengono archiviati i backup

Le località di backup includono:

Percorsi di backup predefiniti

Se non specifichi una località di archiviazione, i backup vengono archiviati nella multiregione più vicina alla località della tua istanza Cloud SQL. Ad esempio, se l'istanza Cloud SQL si trova in us-central1, i backup sono archiviati in us (più regioni) per impostazione predefinita. Tuttavia, una località predefinita come australia-southeast1 si trova al di fuori di una località con più regioni. La località a più regioni più vicina è asia.

Posizioni di backup personalizzate

Cloud SQL ti consente di selezionare una località personalizzata per i dati di backup. Questo è utile se la tua organizzazione deve essere conforme alle normative sulla residenza dei dati che richiedono di mantenere i backup all'interno di un confine geografico specifico. Se la tua organizzazione prevede questo tipo di requisito, probabilmente utilizza un criterio dell'organizzazione per la restrizione sulla località delle risorse. Con questo criterio, quando provi a utilizzare una posizione geografica non conforme al criterio, viene visualizzato un avviso nella pagina Backup. Se vedi questo avviso, devi modificare la località di backup in una località consentita dal criterio.

Quando selezioni una posizione personalizzata per un backup, considera quanto segue:

  • Costo: un cluster nella tua istanza potrebbe trovarsi in una regione con costi inferiori rispetto agli altri.
  • Vicinanza al server delle applicazioni: potresti voler archiviare il backup il più vicino possibile all'applicazione di gestione.
  • Utilizzo dello spazio di archiviazione:ti serve spazio di archiviazione sufficiente per conservare il backup man mano che le dimensioni aumentano. A seconda del carico di lavoro, potresti avere cluster di dimensioni diverse o con utilizzi del disco diversi. Questo potrebbe influire sul cluster che scegli.

Per un elenco completo dei valori regionali validi, consulta Località delle istanze. Per un elenco completo dei valori per più regioni, consulta Località multiregionali.

Per ulteriori informazioni sull'impostazione delle posizioni per i backup e sulla visualizzazione delle posizioni dei backup effettuati per un'istanza, consulta Impostare una posizione personalizzata per i backup e Visualizzare le posizioni dei backup.

Backup automatico e conservazione dei log delle transazioni

I backup automatici vengono utilizzati per ripristinare un'istanza Cloud SQL. Per eseguire un recupero point-in-time viene utilizzata una combinazione di backup automatici e log delle transazioni.

I backup automatici possono essere conservati per un massimo di un anno configurando il periodo di conservazione, mentre i backup on demand vengono conservati fino a quando non elimini i backup o fino all'eliminazione dell'istanza.

Mentre i log delle transazioni vengono conteggiati in giorni, non è garantito che i backup automatici vengano eseguiti in giorni limite. Per queste impostazioni di conservazione vengono usate unità diverse. La conservazione automatica dei backup è un conteggio e può essere impostata da uno a 365 backup.

La conservazione del log delle transazioni è espressa in giorni. Per le istanze della versione Cloud SQL Enterprise Plus, l'intervallo va da 1 a 35 giorni, con un valore predefinito di 14 giorni. Per le istanze della versione Cloud SQL Enterprise, l'intervallo va da 1 a 7 giorni, con un valore predefinito di 7 giorni. Sia per le istanze della versione Cloud SQL Enterprise Plus che per quelle della versione Cloud SQL Enterprise, l'impostazione di conservazione dei log delle transazioni deve essere inferiore all'impostazione di conservazione del backup.

I limiti inferiori sono utili per le istanze di test, perché i log e i backup vengono eliminati più rapidamente. Per i log delle transazioni, la dimensione del disco non aumenta di molto con limiti inferiori. L'uso di valori più alti per la conservazione dei backup automatici ti consente di ripristinare più indietro nel tempo.

I log vengono eliminati definitivamente una volta al giorno, non in modo continuo. Se il numero di giorni di conservazione dei log corrisponde al numero di backup, potrebbe verificarsi una conservazione dei log insufficiente. Ad esempio, impostare la conservazione dei log su sette giorni e la conservazione dei backup su sette backup significa che verranno conservati i log da sei a sette giorni.

Ti consigliamo di impostare il numero di backup su almeno uno in più rispetto ai giorni di conservazione dei log per garantire un minimo di giorni specifici di conservazione dei log.

Un'attività di scrittura elevata sul database può generare un grande volume di log delle transazioni, con un conseguente consumo di spazio su disco significativo e una crescita del disco per le istanze abilitate per l'aumento automatico dello spazio di archiviazione. Consigliamo di dimensionare lo spazio di archiviazione dell'istanza per tenere conto della conservazione dei log delle transazioni.

Vedi Impostare la conservazione automatica dei backup.

Consulta la sezione Impostare la conservazione dei log delle transazioni.

Posso esportare un backup?

No, non puoi esportare un backup. Puoi esportare solo i dati dell'istanza. Vedi Esportazione dei dati da Cloud SQL.

Informazioni sull'utente speciale di backup

Cloud SQL crea un utente speciale del database, cloudsqladmin, per ogni istanza e genera una password univoca specifica per l'istanza. Cloud SQL accede come utente cloudsqladmin per eseguire backup automatici.

In che modo i backup influiscono sulle operazioni delle istanze

Per le istanze MySQL, il flag FLUSH TABLES WITH READ LOCK non viene utilizzato per i backup. Ciò significa che le scritture e altre operazioni non sono interessate dalle operazioni di backup.

In genere, i backup vengono completati entro due minuti, ma se è stata scritta una grande quantità di dati dall'ultimo backup, il completamento del backup richiede più tempo.

Se al momento del tentativo di backup è presente un'operazione in attesa, Cloud SQL di solito effettua diversi tentativi all'interno della finestra temporale per completare il backup. Le operazioni che bloccano il backup sono operazioni a lunga esecuzione dell'istanza Cloud SQL, come importazione, esportazione, aggiornamento (ad esempio una modifica dei metadati dell'istanza) e riavvio dell'istanza. Se operazioni frequenti o a lunga esecuzione bloccano il backup automatico durante la finestra di backup, valuta la possibilità di pianificare il backup a un momento diverso.

Durante un'operazione a lunga esecuzione, come il caricamento dei dati, puoi disabilitare temporaneamente i backup automatici.

Limitazioni alla frequenza di backup

Cloud SQL limita la frequenza delle operazioni di backup sul disco dati. Sono consentite un massimo di cinque operazioni di backup ogni 50 minuti per istanza per progetto. Se un'operazione di backup non va a buon fine, non verrà conteggiata ai fini di questa quota. Se raggiungi il limite, l'operazione non va a buon fine e viene visualizzato un messaggio di errore che indica quando puoi riprovare.

Vediamo come Cloud SQL esegue la limitazione di frequenza per i backup.

Cloud SQL utilizza i token di un bucket per determinare quante operazioni di backup sono disponibili in qualsiasi momento. Ogni istanza ha un bucket. Il bucket contiene un massimo di cinque token che puoi utilizzare per le operazioni di backup. Ogni 10 minuti, viene aggiunto un nuovo token al bucket. Se il bucket è pieno, si verifica un overflow del token.

Ogni volta che esegui un'operazione di backup, viene concesso un token dal bucket. Se l'operazione ha esito positivo, il token viene rimosso dal bucket. In caso di errore, il token viene restituito al bucket. Il seguente diagramma illustra il funzionamento:

Come funzionano i token

Controlli di backup e di integrità dei dati

Cloud SQL esegue automaticamente controlli di integrità del database in background per individuare eventuali problemi. Questi controlli vengono eseguiti come processi offline ripristinando un campionamento di backup o backup di ripristino avviati dal cliente.

Backup di recupero

Dopo l'eliminazione di un'istanza, Cloud SQL elimina tutti i backup. Per impedire l'eliminazione accidentale delle istanze, Cloud SQL conserva i backup delle istanze per quattro giorni. Per recuperare un'istanza eliminata, contatta l'assistenza clienti Google Cloud entro 4 giorni.

Cloud SQL conserva almeno un ultimo backup giornaliero valido per ogni istanza attiva. Di conseguenza, se non sono disponibili backup validi, puoi utilizzare il backup giornaliero per recuperare l'istanza contattando l'assistenza clienti Google Cloud.

Risoluzione dei problemi

Problema Risoluzione dei problemi
Non puoi visualizzare lo stato dell'operazione attuale. La console Google Cloud segnala solo l'esito positivo o negativo solo al termine dell'operazione. Non è progettato per mostrare avvisi o altri aggiornamenti.

Esegui il comando gcloud sql operations list per elencare tutte le operazioni per l'istanza Cloud SQL specificata.

Vuoi sapere chi ha emesso un'operazione di backup on demand. L'interfaccia utente non mostra l'utente che ha avviato un'operazione.

Cerca nei log e filtra in base al testo per trovare l'utente. Per informazioni private, potrebbe essere necessario utilizzare gli audit log. I file di log pertinenti includono:

  • cloudsql.googlapis.com/mysql-general.log
  • cloudsql.googleapis.com/mysql.err
  • Se gli audit log di Cloud sono abilitati e disponi delle autorizzazioni necessarie per visualizzarli, potrebbe essere disponibile anche cloudaudit.googleapis.com/activity.
Dopo aver eliminato un'istanza, non puoi eseguire un backup.

Dopo l'eliminazione definitiva di un'istanza, non è possibile recuperare i dati. Tuttavia, se l'istanza viene ripristinata, verranno ripristinati anche i relativi backup. Per maggiori informazioni sul recupero di un'istanza eliminata, vedi Backup di recupero.

Se hai eseguito un'operazione di esportazione, crea una nuova istanza, quindi esegui un'operazione di importazione per ricreare il database. Le esportazioni vengono scritte in Cloud Storage e le importazioni vengono lette da lì.

Un backup automatico è bloccato per molte ore e non può essere annullato. I backup possono richiedere molto tempo, a seconda delle dimensioni del database.

Se devi davvero annullare l'operazione, puoi contattare l' assistenza clienti per force restart l'istanza.

Un'operazione di ripristino può non riuscire quando uno o più utenti a cui viene fatto riferimento nel file di dump SQL non esistono. Prima di ripristinare un dump SQL, tutti gli utenti del database che sono proprietari degli oggetti o a cui sono state concesse autorizzazioni per gli oggetti nel database di cui è stato eseguito il dump devono esistere nel database di destinazione. In caso contrario, l'operazione di ripristino non riuscirà a ricreare gli oggetti con la proprietà o le autorizzazioni originali.

Crea gli utenti del database prima di ripristinare il dump SQL.

Vuoi aumentare il numero di giorni in cui puoi conservare i backup automatici da 7 a 30 giorni o più. Puoi configurare il numero di backup automatici da conservare, da 1 a 365. I backup automatici vengono eliminati regolarmente in base al valore di conservazione configurato. Purtroppo, ciò significa che i backup attualmente visibili sono gli unici da cui puoi eseguire il ripristino automatici.

Per conservare i backup a tempo indeterminato, puoi creare un backup on demand, poiché non viene eliminato con la stessa modalità dei backup automatici. I backup on demand rimangono a tempo indeterminato. Vale a dire che rimangono fino a quando non vengono eliminati o fino all'eliminazione dell'istanza a cui appartengono. Poiché questo tipo di backup non viene eliminato automaticamente, ciò può influire sulla fatturazione.

Un backup automatico non è riuscito e non hai ricevuto una notifica via email. Per fare in modo che Cloud SQL ti invii una notifica sullo stato del backup, configura un avviso basato su log.

Passaggi successivi