Gestione dei backup di Cloud Databases

Ogni giorno viene eseguito un backup automatico del database. È inoltre possibile avviare backup su richiesta in qualsiasi momento. I backup sono crittografati con una chiave automatica o con la propria chiave se si utilizza la funzione Bring Your Own Key (BYOK). È possibile ripristinare un backup in una nuova istanza di Cloud Databases.

Per accedere ai backup per Cloud Databases, accedere alla Dashboard dell'istanza del database e consultare la scheda Backup e ripristino.

Alcune informazioni generali aggiuntive sui backup:

  • I backup automatici vengono eseguiti quotidianamente e conservati con un semplice programma di conservazione di 30 giorni.
  • I backup non possono essere eliminati.
  • Se si elimina l'istanza, i suoi backup vengono eliminati automaticamente.
  • La pianificazione del backup giornaliero non è configurabile.
  • I backup sono ripristinabili in altre regioni, ad eccezione di eu-de, eu-es e par-01, che possono ripristinare i backup solo tra di loro. Ad esempio, i backup par-01 possono essere ripristinati in e tra eu-de e eu-es.
  • L'archiviazione di backup è crittografata. Per gestire le chiavi di crittografia, vedere Integrazione diKey Protect. Altrimenti, i backup vengono crittografati con una chiave generata automaticamente per l'istanza.
  • I backup sono ripristinabili tra gli account, ma solo attraverso l'API e solo se l'utente che esegue il ripristino ha accesso sia all'account di origine che a quello di destinazione.
  • Cloud Databases i backup non sono scaricabili. Se è necessario un backup locale, utilizzare il software appropriato. Ad esempio, pg_dump è uno strumento efficace per gestire i backup di PostgreSQL. E per MySQL, si può usare mysqldump.

Per informazioni sull'esecuzione di un backup su richiesta, consultare la sezione Esecuzione di un backup su richiesta.

Per informazioni sull'esecuzione di un backup su richiesta, consultare la sezione Esecuzione di un backup su richiesta.

Per informazioni sull'esecuzione di un backup su richiesta, consultare la sezione Esecuzione di un backup su richiesta.

Backup nell'interfaccia utente

Nell'interfaccia utente, passare alla scheda Backup e ripristino, dove viene visualizzata una tabella con tutti i backup disponibili per il database.

I tipi di backup possono essere On-demand o Automatico. Ogni backup è elencato con il suo tipo e la data in cui è stato eseguito.

Fare clic sul backup per visualizzare le informazioni relative a quel backup specifico, compreso l'ID completo. Per le opzioni di ripristino è presente un pulsante di ripristino o un comando CLI preformattato.

Esecuzione di un backup su richiesta nell'interfaccia utente

Se si prevede di apportare modifiche importanti all'istanza, come il ridimensionamento o la rimozione di database, tabelle e raccolte, i backup su richiesta sono utili. Può anche essere utile se si deve eseguire il backup in base a un programma. I backup su richiesta vengono conservati per 30 giorni.

Le istanze vengono fornite gratuitamente con uno spazio di backup pari allo spazio totale su disco. Se l'utilizzo dello spazio di archiviazione di backup è superiore allo spazio totale su disco, ogni gigabyte viene addebitato con un sovrapprezzo di $0.03/month. I backup sono compressi, quindi anche se si utilizzano backup su richiesta, la maggior parte delle istanze non supera il credito assegnato.

Per creare un backup manuale nell'interfaccia utente, accedere alla scheda Backup e ripristino dell'istanza e fare clic su Crea backup. Viene visualizzato un messaggio che indica che è in corso un backup e un backup su richiesta viene aggiunto all'elenco dei backup disponibili.

Backup nella CLI

È possibile accedere all'elenco dei backup e alle informazioni sui singoli backup dal plug-in Cloud Databases CLI e dall'API Cloud Databases API.

Utilizzare il comando cdb deployment-backups-list per visualizzare l'elenco di tutti i backup disponibili per la propria istanza. Per ottenere dettagli su un backup specifico, utilizzare il comando cdb backup-show.

Ad esempio, per visualizzare i backup di un'istanza denominata "example-instance", utilizzare il seguente comando:

ibmcloud cdb deployment-backups-list <INSTANCE_NAME_OR_CRN>

Per visualizzare i dettagli di uno dei backup dell'elenco, prendere l'ID dal campo ID della risposta deployment-backups-list e usarlo con il comando backup-show:

ibmcloud cdb backup-show crn:v1:staging:public:cloud-databases:us-south:a/6284014dd5b487c87a716f48aeeaf99f:3b4537bf-a585-4594-8262-2b1e24e2701e:backup:a3364821-d061-413f-a0df-6ba0e2951566

Esecuzione di un backup su richiesta nella CLI

Se si prevede di apportare modifiche importanti all'istanza, come il ridimensionamento o la rimozione di database, tabelle e raccolte, i backup su richiesta sono utili. Può anche essere utile se si deve eseguire il backup in base a un programma. I backup su richiesta vengono conservati per 30 giorni.

Le istanze vengono fornite gratuitamente con uno spazio di backup pari allo spazio totale su disco. Se l'utilizzo dello spazio di archiviazione di backup è superiore allo spazio totale su disco, ogni gigabyte viene addebitato con un sovrapprezzo di $0.03/month. I backup sono compressi, quindi anche se si utilizzano backup su richiesta, la maggior parte delle istanze non supera il credito assegnato.

Nella CLI, un backup su richiesta viene attivato con il comando cdb deployment-backup-now. Per verificare lo stato del backup, utilizzare il comando ibmcloud cdb backup-show. Ad esempio:

ibmcloud cdb deployment-backup-now <INSTANCE_NAME_OR_CRN>
ibmcloud cdb backup-show <INSTANCE_NAME_OR_CRN>

Backup nel Cloud Databases API

Per le informazioni sui backup nell'API Cloud Databases Utilizzare l'endpoint /deployments/{id}/backups per elencare i backup dell'istanza. Per ottenere informazioni su un backup specifico, utilizzare l'endpoint /backups/{backup_id}.

Esecuzione di un backup su richiesta nell'API

Se si prevede di apportare modifiche importanti all'istanza, come il ridimensionamento o la rimozione di database, tabelle e raccolte, i backup su richiesta sono utili. Può anche essere utile se si deve eseguire il backup in base a un programma. I backup su richiesta vengono conservati per 30 giorni.

Le istanze vengono fornite gratuitamente con uno spazio di backup pari allo spazio totale su disco. Se l'utilizzo dello spazio di archiviazione di backup è superiore allo spazio totale su disco, ogni gigabyte viene addebitato con un sovrapprezzo di $0.03/month. I backup sono compressi, quindi anche se si utilizzano backup su richiesta, la maggior parte delle istanze non supera il credito assegnato.

Nell'API, l'invio di un POST all'endpoint /deployments/{id}/backups attiva un backup su richiesta.

Ripristino di un backup

I backup vengono ripristinati in una nuova istanza. Al termine del provisioning della nuova istanza, i dati contenuti nel file di backup vengono ripristinati nella nuova istanza.

Per impostazione predefinita, la nuova istanza viene dimensionata automaticamente con la stessa allocazione di disco e memoria dell'istanza di origine al momento del backup da cui si sta eseguendo il ripristino. Per regolare le risorse allocate alla nuova istanza, utilizzare i campi opzionali dell'interfaccia utente, della CLI o dell'API per ridimensionare la nuova istanza. Assicurarsi di allocare una quantità sufficiente di dati e di carico di lavoro; se l'istanza non dispone di risorse sufficienti, il ripristino non riesce.

Non eliminare l'istanza di origine durante il ripristino del backup. Prima di eliminare la vecchia istanza, attendere il provisioning della nuova istanza e il ripristino del backup. L'eliminazione di un'istanza cancella anche i suoi backup.

Ripristino di un backup nell'interfaccia utente

Per ripristinare un backup su una nuova istanza del servizio,

  1. Fai clic sulla riga corrispondente per espandere le opzioni relative al backup che desideri ripristinare.
  2. Fare clic su Ripristina.
  3. Nella pagina Provisioning, selezionare una delle opzioni disponibili.
    • La nuova istanza viene automaticamente chiamata <name>-restore-[timestamp], ma è possibile rinominarla.
    • È anche possibile selezionare la regione in cui si trova la nuova istanza. I ripristini interregionali sono supportati, tranne che per il ripristino all'interno o all'esterno della regione eu-de
    • È possibile scegliere l'allocazione iniziale delle risorse, per espandere o ridurre le risorse della nuova istanza. È inoltre possibile attivare o disattivare i core dedicati. Si noti che se si diminuisce la quantità di risorse, è possibile che il provisioning fallisca o che il database non funzioni correttamente.
  4. Fare clic su Ripristina backup. Viene visualizzato il messaggio "ripristino da backup avviato". Facendo clic su La nuova istanza è disponibile, si accede all'elenco delle risorse.

Ripristino di un backup nella CLI

Il Resource Controller supporta il provisioning delle istanze di database e il provisioning e il ripristino sono di competenza della CLI del Resource Controller. Utilizzare il comando resource service-instance-create.

ibmcloud resource service-instance-create <INSTANCE_NAME> <SERVICE-ID> standard <REGION> --service-endpoints <ENDPOINT-TYPE> -p '{"backup_id":"BACKUP_ID"}'
  • Cambiare il valore di instance_name con il nome desiderato per la nuova istanza.
  • service-id è il tipo di istanza, ad esempio database-per-postgresql o messaggi-per-rabbitmq.
  • L'region è la posizione della nuova istanza, che può essere una regione diversa da quella di origine. I ripristini interregionali sono supportati, ad eccezione del ripristino da o verso eu-de utilizzando un'altra regione.
  • backup_id è il backup che si desidera ripristinare.

Il comando precedente ripristina un backup su una macchina con la stessa configurazione e sullo stesso modello di hosting dell'installazione originale.

Parametri facoltativi

I parametri opzionali sono disponibili tramite la CLI. Utilizzarli se è necessario personalizzare le risorse, cambiare il modello di hosting o utilizzare una Key Protect per la crittografia BYOK sulla nuova istanza. Vedi il seguente esempio:

ibmcloud resource service-instance-create <INSTANCE_NAME> <SERVICE-ID> standard <REGION> -p
'{"backup_id":"BACKUP_ID","key_protect_key":"KEY_PROTECT_KEY_CRN", "members_disk_allocation_mb":"DESIRED_DISK_IN_MB", "members_host_flavor": "<VALUE>", "members_memory_allocation_mb":"DESIRED_MEMORY_IN_MB", "members_cpu_allocation_count":"NUMBER_OF_CORES"}'

Il valore 'members_host_flavor può essere "multitenant" o un host di calcolo isolato di dimensioni adeguate (vedere l 'elenco dei valori disponibili). Specificare 'members_memory_allocation_mb o 'members_cpu_allocation_count solo se si utilizza un hosting "multitenant".

Un comando preformattato per un backup specifico è disponibile nella vista dettagliata del backup nella scheda Backup e ripristino della dashboard dell'istanza.

Per impostazione predefinita, il ripristino da un backup crea un'istanza con la versione preferita del tipo di database, non la versione dell'istanza da cui si esegue il ripristino. È possibile specificare una versione aggiungendo la versione nell'oggetto parameters, come nell'esempio seguente.

`ibmcloud resource service-instance-create <INSTANCE_NAME> databases-for-mysql standard us-south -p '{"backup_id":"<BACKUP_ID>", "version": "<VERSION>"}'

Per visualizzare un elenco delle versioni disponibili, eseguire ibmcloud cdb deployables.

Aggiungi async_restore parametro (nuovo)- PostgreSQL solo

È stato aggiunto un nuovo async_restore parametro opzionale, al blocco parameters restore.

async_restore (booleano) — valore predefinito: false. Se impostato su true, il ripristino viene avviato come operazione asincrona, contribuendo a ridurre il tempo di ripristino end-to-end.

`ibmcloud resource service-instance-create <INSTANCE_NAME> databases-for-postgresql standard us-south -p '{"point_in_time_recovery_deployment_id":"<SOURCE_CRN>", "point_in_time_recovery_time":"<PITR_TIME>", version": "<VERSION>", "async_restore": true }'

Esempio:

`ibmcloud resource service-instance-create <INSTANCE_NAME> databases-for-postgresql standard us-south -p '{"point_in_time_recovery_deployment_id":"test_crn", "point_in_time_recovery_time":"2025-12-08T17:08:32Z", version": "17", "async_restore": true }'

Un ripristino asincrono può essere richiesto solo quando il database di origine e PostgreSQL quello di destinazione utilizzano la stessa versione principale. Il ripristino tra versioni principali diverse non è supportato. Se il async_restore parametro non è specificato, il servizio esegue il ripristino in modo sincrono, che è il comportamento attuale.

Ripristino di un backup attraverso l'API

L'API Resource Controller supporta il provisioning e il ripristino delle istanze di database. La richiesta di creazione è una POST all'endpoint /resource_instances.

curl -X POST \
  https://resource-controller.cloud.ibm.com/v2/resource_instances \
  -H 'Authorization: Bearer <>' \
  -H 'Content-Type: application/json' \
    -d '{
    "name": "<INSTANCE_NAME>",
    "target": "<REGION>",
    "resource_group": "<YOUR-RESOURCE-GROUP>",
    "resource_plan_id": "<SERVICE-ID>",
    "parameters":{
      "backup_id": "<BACKUP_ID>"
    }
  }'

I parametri name, target, resource_group e resource_plan_id sono tutti obbligatori e backup_id è il backup che si desidera ripristinare.

  • Cambiare il valore di name con il nome desiderato per la nuova istanza.
  • resource_plan_id è il tipo di istanza, ad esempio database-per-postgresql o messaggi-per-rabbitmq.
  • Il campo target è la regione in cui si desidera che la nuova istanza sia collocata, che può essere una regione diversa da quella di origine. I ripristini interregionali sono supportati, tranne che per il ripristino all'interno o all'esterno della regione eu-de
  • backup_id è il backup che si desidera ripristinare.

Il comando precedente ripristina un backup su una macchina con la stessa configurazione e lo stesso modello di hosting della distribuzione originale.

Parametri facoltativi

I parametri opzionali sono disponibili tramite l'API. Usateli se dovete personalizzare le risorse, cambiare il modello di hosting, distribuire una versione specifica o usare una Key Protect per la crittografia BYOK sulla nuova istanza.

Se è necessario regolare le risorse, aggiungere al corpo della richiesta uno dei parametri opzionali 'key_protect_key, 'members_disk_allocation_mb, 'members_host_flavor, 'members_memory_allocation_mb, 'members_cpu_allocation_count o 'version e i loro valori preferiti. Vedi il seguente esempio:

curl -X POST \
  https://resource-controller.cloud.ibm.com/v2/resource_instances \
  -H 'Authorization: Bearer <>' \
  -H 'Content-Type: application/json' \
    -d '{
    "name": "<INSTANCE_NAME>",
    "target": "<REGION>",
    "resource_group": "<YOUR-RESOURCE-GROUP>",
    "resource_plan_id": "<SERVICE-ID>",
    "parameters":{
      "backup_id": "<BACKUP_ID>",
      "members_host_flavor": "<members_host_flavor_value>",
      "version": "<VERSION_NUMBER>"
    }
  }'

Il valore 'members_host_flavor può essere "multitenant" o un host di calcolo isolato di dimensioni adeguate (vedere l 'elenco dei valori disponibili). Specificare 'members_memory_allocation_mb o 'members_cpu_allocation_count solo se si utilizza un hosting "multitenant".

Per impostazione predefinita, il ripristino da un backup crea un'istanza con la versione preferita del tipo di database, non la versione dell'istanza da cui si esegue il ripristino. È possibile specificare una versione aggiungendo il valore 'version nell'oggetto parameters.

Aggiungi parametro async_restore (nuovo)- PostgreSQL solo

È stato aggiunto un nuovo async_restore parametro opzionale, al blocco parameters restore.

async_restore (booleano) — valore predefinito: false. Se impostato su true, il ripristino viene avviato come operazione asincrona, contribuendo a ridurre il tempo di ripristino end-to-end.

curl -X POST \
  https://resource-controller.cloud.ibm.com/v2/resource_instances \
  -H 'Authorization: Bearer <>' \
  -H 'Content-Type: application/json' \
    -d '{
    "name": "<INSTANCE_NAME>",
    "target": "<REGION>",
    "resource_group": "<YOUR-RESOURCE-GROUP>",
    "resource_plan_id": "<SERVICE-ID>",
    "parameters":{
      "point_in_time_recovery_deployment_id": "<SOURCE_CRN>",
      "point_in_time_recovery_time": "<PITR_TIME>",
      "version": "<VERSION_NUMBER>",
      "async_restore": true
    }
  }'

Un ripristino asincrono può essere richiesto solo quando il database di origine e PostgreSQL quello di destinazione utilizzano la stessa versione principale. Il ripristino tra versioni principali diverse non è supportato. Se il async_restore parametro non è specificato, il servizio esegue il ripristino in modo sincrono, che è il comportamento attuale.

Ripristino di un backup tramite Terraform

Usare Terraform per ripristinare un backup da una versione precedente a una nuova.

  1. Imposta il tuo backup_id. Per ulteriori informazioni, vedere backup_id.
  2. Impostate il vostro version nell'attributo version. Per ulteriori informazioni, vedere version.

Il codice si presenta come:

resource "ibm_database" "<your-instance>" {
  name                                 = "<your_database_name>"
  service                              = "<service>"
  plan                                 = "<plan>"
  location                             = "<region>"
  version                              = "<version>"
  backup_id                            = "<backup_id>"
}

Per ulteriori informazioni, vedere il Cloud Databases Registro di Terraform.

Ripristino veloce del PG (async_restore) tramite Terraform - solo PostgreSQL

  1. Al blocco è stato aggiunto un nuovo parametro opzionale, async_restore.

  2. async_restore (booleano) — valore predefinito: false. Se impostato su true, il ripristino viene avviato come operazione asincrona, contribuendo a ridurre il tempo di ripristino end-to-end.

  3. Questo parametro è applicabile solo quando si ripristina un'istanza di PostgreSQL.

Il codice è il seguente:

data "ibm_resource_group" "group" {
  name = "<your_group>"
}
resource "ibm_database" "<your-instance>" {
  name                                 = "<your_database_name>"
  location                             = "<region>"
  plan                                 = "<plan>"
  service                              = "databases-for-postgresql"
  resource_group_id                    = data.ibm_resource_group.group.id
  service_endpoints                    = "private"
  async_restore                        = true
  point_in_time_recovery_time          = "<PITR_TIME>"
  point_in_time_recovery_deployment_id = "<SOURCE_CRN>"
  version                              = "<VERSION_NUMBER>"
}

Un ripristino asincrono può essere richiesto solo quando il database di origine e PostgreSQL quello di destinazione utilizzano la stessa versione principale. Il ripristino tra versioni principali diverse non è supportato. Se il async_restore parametro non è specificato, il servizio esegue il ripristino in modo sincrono, che è il comportamento attuale.

Backup e ripristino

  • Cloud Databases non sono responsabili del ripristino, della tempestività o della validità di tali backup.
  • Le azioni intraprese dall'utente possono compromettere l'integrità dei backup, ad esempio la sotto-allocazione della memoria e del disco. Gli utenti possono controllare che i backup abbiano successo utilizzando l'API e ripristinare periodicamente un backup per garantirne la validità e l'integrità. Gli utenti possono recuperare i dettagli del backup programmato più recente dal plug-in Cloud Databases CLI e dall'API Cloud Databases API.
  • Come servizio gestito, Cloud Databases monitora lo stato dei vostri backup e può tentare di rimediare quando possibile. Se si verificano problemi da cui non è possibile riprendersi, contattare l'assistenza per ottenere maggiore assistenza.

Posizioni di backup

La posizione del backup varia a seconda della regione del database. Assicurarsi che la posizione dell'area di backup corrisponda ai requisiti della posizione dei dati.

Istanza e regioni di backup
Regione istanza Regione di backup
Dallas Object Storage a livello regionale negli Stati Uniti
Washington D.C. Object Storage a livello regionale negli Stati Uniti
Londra Object Storage a livello regionale dell'UE
Francoforte Object Storage a livello regionale dell'UE
Tokyo AP cross regionale Object Storage
Osaka AP cross regionale Object Storage
Sydney AP cross regionale Object Storage
Toronto Object Storage di Montreal
Chennai Object Storage di Chennai
San Paolo Object Storage San Paolo
Madrid Object Storage a livello regionale dell'UE

Per maggiori dettagli su Cloud Databases Per l Object Storage, consultare la documentazione della posizione.

Continuità operativa e disaster recovery

Cloud Databases fornisce meccanismi per proteggere i dati e ripristinare le funzioni del servizio. Per ulteriori informazioni (comprese le regioni di archiviazione di backup), vedere Comprendere la continuità operativa e il ripristino di emergenza per Cloud Databases.

Recupero Point-in-Time

Con il Point-in-Time Recovery (PITR), l'istanza esegue continuamente backup incrementali e può riprodurre le transazioni per portare una nuova istanza ripristinata da un backup a qualsiasi punto degli ultimi 7 giorni. Cloud Databases offre il Point-In-Time Recovery (PITR) per i seguenti servizi:

FAQ sui backup

Per le domande più frequenti sui backup, consultare le FAQ sui backup.