Utilizzare il recupero point-in-time (PITR)

Questa pagina descrive come utilizzare il recupero point-in-time (PITR) per ripristinare l'istanza Cloud SQL principale.

Per scoprire di più su PITR, consulta la sezione Recupero point-in-time (PITR).

Se crei un'istanza Cloud SQL Enterprise Plus, il PITR è abilitato per impostazione predefinita, indipendentemente dal metodo utilizzato per la creazione. Se vuoi disattivare la funzionalità, devi farlo manualmente.

Se crei un'istanza Cloud SQL Enterprise, il PITR è disattivato per impostazione predefinita, indipendentemente dal metodo utilizzato per la creazione. In questo caso, se vuoi attivare la funzionalità, devi farlo manualmente.

Archiviazione dei log per PITR

Il 31 maggio 2024 abbiamo lanciato l'archiviazione dei log delle transazioni per PITR in Cloud Storage. A seguito di questo lancio, si applicano le seguenti condizioni:

  • Le istanze Cloud SQL abilitate al PITR create prima di questa data memorizzavano i log delle transazioni PITR su disco. I log delle transazioni PITR per la maggior parte di queste istanze sono stati migrati a Cloud Storage. Per verificare la posizione del log per un'istanza specifica, vedi Controllare la posizione di archiviazione dei log delle transazioni utilizzati per il PITR.

  • Tutte le istanze Cloud SQL create con il PITR abilitato a partire da questa data archiviano questi log in Cloud Storage.

I log delle transazioni vengono aggiornati regolarmente e utilizzano spazio di archiviazione. Cloud SQL elimina automaticamente i log delle transazioni con i backup automatici associati. Ciò avviene dopo che è stato raggiunto il valore impostato per il parametrotransactionLogRetentionDays. Per saperne di più su questo parametro, vedi Log e utilizzo del disco.

Per le istanze che archiviano i log delle transazioni solo su disco, puoi configurare Cloud SQL per archiviare i log su Cloud Storage disattivando prima e poi riattivando il PITR. Non puoi spostare i log da Cloud Storage di nuovo sul disco.

Per assicurarti che i log della tua istanza vengano archiviati in Cloud Storage anziché su disco, completa le seguenti azioni:

Log e utilizzo del disco

Per le istanze con log delle transazioni archiviati in Cloud Storage, i log vengono archiviati nella stessa regione dell'istanza primaria. Questo spazio di archiviazione dei log (fino a 35 giorni per la versione Cloud SQL Enterprise Plus e 7 giorni per la versione Cloud SQL Enterprise, la durata massima per il PITR) non genera costi aggiuntivi per istanza.

Cloud SQL genera regolarmente log delle transazioni e questi log utilizzano spazio di archiviazione. Cloud SQL elimina automaticamente i log delle transazioni con i backup automatici associati. Ciò si verifica dopo che viene raggiunto il valore impostato per il parametro transactionLogRetentionDays. Questo parametro specifica il numero di giorni per cui Cloud SQL conserva i log delle transazioni. Per Cloud SQL Enterprise Plus, puoi impostare il numero di giorni di conservazione dei log delle transazioni da 1 a 35, mentre per Cloud SQL Enterprise puoi impostare questo valore da 1 a 7.

Se non viene impostato un valore per questo parametro, viene impostato il periodo di conservazione predefinito dei log delle transazioni di 14 giorni per le istanze Cloud SQL Enterprise Plus e di 7 giorni per le istanze Cloud SQL Enterprise. Per ulteriori informazioni su come applicare questa impostazione, vedi Impostare la conservazione del log delle transazioni.

Per scoprire quanto spazio su disco utilizzano i log delle transazioni, controlla la metrica bytes_used_by_data_type per l'istanza. Il valore per il tipo di dati restituisce le dimensioni dei log delle transazioni sul disco. Per le istanze che archiviano i log delle transazioni utilizzati per il recupero point-in-time sul disco, Cloud SQL elimina i dati dal disco ogni giorno per soddisfare l'impostazione PITR transactionLogRetentionDays. Per saperne di più, vedi Conservazione dei backup automatici.

Limitazioni

Le seguenti limitazioni sono associate all'istanza con PITR abilitato e alla dimensione dei log delle transazioni su disco che causa un problema per l'istanza:

  • Puoi disattivare il PITR e riattivarlo per assicurarti che Cloud SQL memorizzi i log in Cloud Storage nella stessa regione dell'istanza. Tuttavia, Cloud SQL elimina tutti i log esistenti, quindi non puoi eseguire un'operazione PITR prima del momento in cui hai riattivato PITR.
  • Puoi aumentare le dimensioni dello spazio di archiviazione dell'istanza, ma l'aumento delle dimensioni del log delle transazioni nell'utilizzo del disco potrebbe essere temporaneo.
  • Per evitare problemi di spazio di archiviazione imprevisti, ti consigliamo di attivare gli aumenti automatici dello spazio di archiviazione. Questo suggerimento si applica solo se PITR è abilitato per l'istanza e i log sono archiviati su disco.
  • Se vuoi eliminare i log e recuperare spazio di archiviazione, puoi disattivare PITR senza riattivarla. Tuttavia, la riduzione dello spazio di archiviazione utilizzato non riduce le dimensioni del disco di cui è stato eseguito il provisioning per l'istanza.
  • I log vengono eliminati una volta al giorno, non in modo continuo. Se imposti la conservazione dei log su due giorni, significa che vengono conservati almeno due giorni di log e al massimo tre giorni di log. Ti consigliamo di impostare il numero di backup su un valore superiore di un'unità rispetto ai giorni di conservazione dei log.

    Ad esempio, se specifichi 7 per il valore del parametro transactionLogRetentionDays, per il parametro backupRetentionSettings imposta il numero di retainedBackups su 8.

Per saperne di più sul recupero point-in-time, consulta la sezione Recupero point-in-time (PITR).

Modello di recupero del database per PITR

Se abiliti il PITR su un'istanza, Cloud SQL imposta automaticamente il modello di recupero dei database esistenti e successivi sul modello di recupero completo.

Per saperne di più sui modelli di recupero di SQL Server, consulta la documentazione di Microsoft.

Abilita PITR

Quando crei una nuova istanza nella console Google Cloud , l'impostazione Backup automatici viene attivata automaticamente.

La seguente procedura abilita il PITR su un'istanza primaria esistente.

Console

  1. Nella console Google Cloud , vai alla pagina Istanze Cloud SQL.

    Vai a Istanze Cloud SQL

  2. Apri il menu Altre azioni Icona Altre azioni. per l'istanza su cui vuoi attivare il PITR e fai clic su Modifica.
  3. In Personalizza la tua istanza, espandi la sezione Protezione dei dati.
  4. Seleziona la casella di controllo Abilita recupero point-in-time.
  5. Nel campo Giorni di log, inserisci il numero di giorni per conservare i log, da 1 a 35 per la versione Cloud SQL Enterprise Plus o da 1 a 7 per la versione Cloud SQL Enterprise.
  6. Fai clic su Salva.

gcloud

  1. Visualizza la panoramica dell'istanza:
    gcloud sql instances describe INSTANCE_NAME
  2. Se visualizzi enabled: false nella sezione backupConfiguration, attiva i backup pianificati:
    gcloud sql instances patch INSTANCE_NAME \
    --backup-start-time=HH:MM

    Specifica il parametro backup-start-time utilizzando l'ora in formato 24 ore nel fuso orario UTC±00.

  3. Abilita PITR:
    gcloud sql instances patch INSTANCE_NAME \
    --enable-point-in-time-recovery

    Se abiliti il PITR su un'istanza primaria, puoi anche configurare il numero di giorni per i quali vuoi conservare i log delle transazioni aggiungendo il seguente parametro:

    --retained-transaction-log-days=RETAINED_TRANSACTION_LOG_DAYS
  4. Conferma la modifica:
    gcloud sql instances describe INSTANCE_NAME

    Nella sezione backupConfiguration, vedrai pointInTimeRecoveryEnabled: true se la modifica è stata eseguita correttamente.

Terraform

Per attivare il PITR, utilizza una risorsa Terraform.

Abilitare il PITR per la versione Cloud SQL Enterprise Plus

Utilizza il seguente esempio di codice Terraform per creare un'istanza Cloud SQL Enterprise Plus con PITR abilitato:
# Creates a SQL SERVER Enterprise Plus edition instance. Unless specified otherwise, PITR is enabled by default.
resource "google_sql_database_instance" "enterprise_plus" {
  name             = "sqlserver-enterprise-plus-instance-pitr"
  region           = "asia-northeast1"
  database_version = "SQLSERVER_2019_ENTERPRISE"
  root_password    = "INSERT-PASSWORD-HERE"
  settings {
    tier    = "db-perf-optimized-N-2"
    edition = "ENTERPRISE_PLUS"
    backup_configuration {
      enabled = true
    }
  }
  # Setting the `deletion_protection` flag to true ensures you can't accidentally delete the instance
  # using Terraform. Setting the `deletion_protection_enabled` flag to true protects the instance at the
  # Google Cloud level.
  deletion_protection = false
}

Abilita il PITR per Cloud SQL Enterprise

Utilizza il seguente esempio di codice Terraform per creare un'istanza Cloud SQL Enterprise con PITR abilitato:
# Creates a SQL SERVER Enterprise edition instance with PITR enabled. Unless specified otherwise,
# PITR is disabled by default.
resource "google_sql_database_instance" "enterprise" {
  name             = "sqlserver-enterprise-instance-pitr"
  region           = "asia-northeast1"
  database_version = "SQLSERVER_2019_ENTERPRISE"
  root_password    = "INSERT-PASSWORD-HERE"
  settings {
    tier    = "db-custom-4-26624"
    edition = "ENTERPRISE"
    backup_configuration {
      enabled                        = true
      point_in_time_recovery_enabled = true
    }
  }
  # Setting the `deletion_protection` flag to true ensures you can't accidentally delete the instance
  # using Terraform. Setting the `deletion_protection_enabled` flag to true protects the instance at the
  # Google Cloud level.
  deletion_protection = false
}

Applica le modifiche

Per applicare la configurazione di Terraform in un progetto Google Cloud , completa i passaggi nelle sezioni seguenti.

Prepara Cloud Shell

  1. Avvia Cloud Shell.
  2. Imposta il progetto Google Cloud predefinito in cui vuoi applicare le configurazioni Terraform.

    Devi eseguire questo comando una sola volta per progetto e puoi eseguirlo in qualsiasi directory.

    export GOOGLE_CLOUD_PROJECT=PROJECT_ID

    Le variabili di ambiente vengono sostituite se imposti valori espliciti nel file di configurazione Terraform.

Prepara la directory

Ogni file di configurazione di Terraform deve avere la propria directory (chiamata anche modulo radice).

  1. In Cloud Shell, crea una directory e un nuovo file al suo interno. Il nome file deve avere l'estensione .tf, ad esempio main.tf. In questo tutorial, il file viene denominato main.tf.
    mkdir DIRECTORY && cd DIRECTORY && touch main.tf
  2. Se stai seguendo un tutorial, puoi copiare il codice campione in ogni sezione o passaggio.

    Copia il codice campione nel file main.tf appena creato.

    (Facoltativo) Copia il codice da GitHub. Questa operazione è consigliata quando lo snippet Terraform fa parte di una soluzione end-to-end.

  3. Rivedi e modifica i parametri di esempio da applicare al tuo ambiente.
  4. Salva le modifiche.
  5. Inizializza Terraform. Devi effettuare questa operazione una sola volta per directory.
    terraform init

    (Facoltativo) Per utilizzare l'ultima versione del provider Google, includi l'opzione -upgrade:

    terraform init -upgrade

Applica le modifiche

  1. Rivedi la configurazione e verifica che le risorse che Terraform creerà o aggiornerà corrispondano alle tue aspettative:
    terraform plan

    Apporta le correzioni necessarie alla configurazione.

  2. Applica la configurazione di Terraform eseguendo il comando seguente e inserendo yes al prompt:
    terraform apply

    Attendi che Terraform visualizzi il messaggio "Apply complete!" (Applicazione completata).

  3. Apri il tuo Google Cloud progetto per visualizzare i risultati. Nella console Google Cloud , vai alle risorse nell'interfaccia utente per assicurarti che Terraform le abbia create o aggiornate.

Elimina le modifiche

Per eliminare le modifiche:

  1. Per disattivare la protezione dall'eliminazione, imposta l'argomento deletion_protection su false nel file di configurazione Terraform.
    deletion_protection =  "false"
  2. Applica la configurazione Terraform aggiornata eseguendo il comando seguente e inserendo yes al prompt:
    terraform apply
  1. Rimuovi le risorse applicate in precedenza con la configurazione Terraform eseguendo il seguente comando e inserendo yes al prompt:

    terraform destroy

REST v1

Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:

  • PROJECT_ID: l'ID o il numero di progetto del progetto Google Cloud che contiene l'istanza
  • INSTANCE_NAME: il nome dell'istanza primaria o di replica di lettura che stai configurando per l'alta disponibilità
  • START_TIME: l'ora (in ore e minuti)

Metodo HTTP e URL:

PATCH https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_NAME

Corpo JSON della richiesta:

{
  "settings":
  {
    "backupConfiguration":
    {
      "startTime": "START_TIME",
      "enabled": true,
      "pointInTimeRecoveryEnabled": true
    }
  }
}

Per inviare la richiesta, espandi una di queste opzioni:

Dovresti ricevere una risposta JSON simile alla seguente:

REST v1beta4

Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:

  • PROJECT_ID: l'ID o il numero di progetto del progetto Google Cloud che contiene l'istanza
  • INSTANCE_NAME: il nome dell'istanza primaria o di replica di lettura che stai configurando per l'alta disponibilità
  • START_TIME: l'ora (in ore e minuti)

Metodo HTTP e URL:

PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_NAME

Corpo JSON della richiesta:

{
  "settings":
  {
    "backupConfiguration":
    {
      "startTime": "START_TIME",
      "enabled": true,
      "pointInTimeRecoveryEnabled": true
    }
  }
}

Per inviare la richiesta, espandi una di queste opzioni:

Dovresti ricevere una risposta JSON simile alla seguente:

Visualizzare l'ultimo tempo di recupero

Per un'istanza disponibile, puoi eseguire il PITR fino all'ultimo momento. Se l'istanza non è disponibile e i log dell'istanza sono archiviati in Cloud Storage, puoi recuperare l'ultimo orario di recupero ed eseguire il PITR fino a quell'ora. In entrambi i casi, puoi ripristinare l'istanza in una zona primaria o secondaria diversa fornendo i valori per le zone preferite.

gcloud

Recupera l'ultimo momento in cui puoi recuperare un'istanza Cloud SQL non disponibile.

Sostituisci INSTANCE_NAME con il nome dell'istanza su cui stai eseguendo la query.

gcloud sql instances get-latest-recovery-time INSTANCE_NAME

REST v1

Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:

  • PROJECT_ID: l'ID progetto
  • INSTANCE_NAME: il nome dell'istanza per cui stai eseguendo una query per l'ultimo tempo di ripristino

Metodo HTTP e URL:

GET https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_NAME/getLatestRecoveryTime

Per inviare la richiesta, espandi una di queste opzioni:

Dovresti ricevere una risposta JSON simile alla seguente:

{
  "kind": "sql#getLatestRecoveryTime",
  "latestRecoveryTime": "2023-06-20T17:23:59.648821586Z"
}

REST v1beta4

Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:

  • PROJECT_ID: l'ID progetto
  • INSTANCE_NAME: il nome dell'istanza per cui stai eseguendo una query per l'ultimo tempo di ripristino

Metodo HTTP e URL:

GET https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_NAME/getLatestRecoveryTime

Per inviare la richiesta, espandi una di queste opzioni:

Dovresti ricevere una risposta JSON simile alla seguente:

{
  "kind": "sql#getLatestRecoveryTime",
  "latestRecoveryTime": "2023-06-20T17:23:59.648821586Z"
}

Esegui PITR

Console

  1. Nella console Google Cloud , vai alla pagina Istanze Cloud SQL.

    Vai a Istanze Cloud SQL

  2. Apri il menu Altre azioni Icona Altre azioni. per l'istanza che vuoi recuperare e fai clic su Crea clone.
  3. (Facoltativo) Nella pagina Crea un clone, aggiorna l'ID del nuovo clone.
  4. Seleziona Clona da un momento specifico precedente.
  5. Inserisci un orario PITR.
  6. Seleziona Tutti i database o specifica un nome di database.
    Se specifichi un nome di database, puoi selezionarne solo uno. Per impostazione predefinita, PITR è per tutti i database.
  7. Fai clic su Crea clone.

gcloud

Crea un clone utilizzando PITR.

Sostituisci quanto segue:

  • SOURCE_INSTANCE_NAME - Nome dell'istanza da cui esegui il ripristino.
  • NEW_INSTANCE_NAME: il nome del clone.
  • TIMESTAMP - Fuso orario UTC per l'istanza di origine in formato RFC 3339. Ad esempio, 2012-11-15T16:19:00.094Z.
gcloud sql instances clone SOURCE_INSTANCE_NAME \
NEW_INSTANCE_NAME \
--point-in-time 'TIMESTAMP'

REST v1

Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:

  • project-id: l'ID progetto
  • target-instance-id: l'ID dell'istanza di destinazione
  • source-instance-id: l'ID dell'istanza di origine
  • restore-timestamp Il point-in-time da ripristinare fino a

Nella richiesta JSON, puoi specificare facoltativamente fino a un nome di database specifico come segue: "databaseNames": "my-database"

Metodo HTTP e URL:

POST https://sqladmin.googleapis.com/v1/projects/project-id/instances/source-instance-id/clone

Corpo JSON della richiesta:

{
  "cloneContext":
  {
    "kind": "sql#cloneContext",
    "destinationInstanceName": "target-instance-id",
    "pointInTime": "restore-timestamp"
  }
}

Per inviare la richiesta, espandi una di queste opzioni:

Dovresti ricevere una risposta JSON simile alla seguente:

REST v1beta4

Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:

  • project-id: l'ID progetto
  • target-instance-id: l'ID dell'istanza di destinazione
  • source-instance-id: l'ID dell'istanza di origine
  • restore-timestamp Il point-in-time da ripristinare fino a

Nella richiesta JSON, puoi specificare facoltativamente fino a un nome di database specifico come segue: "databaseNames": "my-database"

Metodo HTTP e URL:

POST https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/source-instance-id/clone

Corpo JSON della richiesta:

{
  "cloneContext":
  {
    "kind": "sql#cloneContext",
    "destinationInstanceName": "target-instance-id",
    "pointInTime": "restore-timestamp"
  }
}

Per inviare la richiesta, espandi una di queste opzioni:

Dovresti ricevere una risposta JSON simile alla seguente:

Disattiva PITR

Console

  1. Nella console Google Cloud , vai alla pagina Istanze Cloud SQL.

    Vai a Istanze Cloud SQL

  2. Apri il menu Altre azioni Icona Altre azioni. per l'istanza che vuoi disattivare e seleziona Modifica.
  3. In Personalizza la tua istanza, espandi la sezione Protezione dei dati.
  4. Deseleziona Abilita recupero point-in-time.
  5. Fai clic su Salva.

gcloud

  1. Disattiva il recupero point-in-time:
    gcloud sql instances patch INSTANCE_NAME \
    --no-enable-point-in-time-recovery
  2. Conferma la modifica:
    gcloud sql instances describe INSTANCE_NAME

    Nella sezione backupConfiguration, vedrai pointInTimeRecoveryEnabled: false se la modifica è stata eseguita correttamente.

REST v1

Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:

  • project-id: l'ID progetto
  • instance-id: l'ID istanza

Metodo HTTP e URL:

PATCH https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id

Corpo JSON della richiesta:

{
  "settings":
  {
    "backupConfiguration":
    {
      "enabled": false,
      "pointInTimeRecoveryEnabled": false
    }
  }
}

Per inviare la richiesta, espandi una di queste opzioni:

Dovresti ricevere una risposta JSON simile alla seguente:

REST v1beta4

Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:

  • project-id: l'ID progetto
  • instance-id: l'ID istanza

Metodo HTTP e URL:

PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id

Corpo JSON della richiesta:

{
  "settings":
  {
    "backupConfiguration":
    {
      "enabled": false,
      "pointInTimeRecoveryEnabled": false
    }
  }
}

Per inviare la richiesta, espandi una di queste opzioni:

Dovresti ricevere una risposta JSON simile alla seguente:

Controlla la posizione di archiviazione dei log delle transazioni utilizzati per il PITR

Puoi controllare dove l'istanza Cloud SQL archivia i log delle transazioni utilizzati per il PITR.

gcloud

Per determinare se l'istanza archivia i log per il recupero temporaneo su disco o Cloud Storage, utilizza il seguente comando:

   gcloud sql instances describe INSTANCE_NAME
   

Sostituisci INSTANCE_NAME con il nome dell'istanza.

Per più istanze nello stesso progetto, puoi anche controllare la posizione di archiviazione dei log delle transazioni. Per determinare la posizione di più istanze, utilizza il comando seguente:

   gcloud sql instances list --show-transactional-log-storage-state
   

Esempio di risposta:

NAME  DATABASE_VERSION         LOCATION       TRANSACTIONAL_LOG_STORAGE_STATE
my_01 SQLSERVER_2019_STANDARD  us-central-1   DISK
my_02 SQLSERVER_2019_STANDARD  us-central-1   CLOUD_STORAGE
...
   

Nell'output del comando, il campo transactionalLogStorageState o la colonna TRANSACTIONAL_LOG_STORAGE_STATE forniscono informazioni su dove vengono archiviati i log delle transazioni per il recupero point-in-time per l'istanza. I possibili stati di archiviazione del log delle transazioni sono i seguenti:

  • DISK: l'istanza memorizza i log delle transazioni utilizzati per il PITR sul disco.
  • CLOUD_STORAGE: l'istanza memorizza i log delle transazioni utilizzati per il PITR in Cloud Storage.

Imposta la conservazione dei log delle transazioni

Per impostare il numero di giorni di conservazione dei log delle transazioni:

Console

  1. Nella console Google Cloud , vai alla pagina Istanze Cloud SQL.

    Vai a Istanze Cloud SQL

  2. Apri il menu Altre azioni Icona Altre azioni. per l'istanza su cui vuoi impostare il log delle transazioni e seleziona Modifica.
  3. In Personalizza la tua istanza, espandi la sezione Protezione dei dati.
  4. Nella sezione Abilita recupero point-in-time, espandi Opzioni avanzate.
  5. Inserisci il numero di giorni per la conservazione dei log, da 1 a 35 per la versione Cloud SQL Enterprise Plus o da 1 a 7 per la versione Cloud SQL Enterprise.
  6. Fai clic su Salva.

gcloud

Modifica l'istanza per impostare il numero di giorni per conservare i log delle transazioni.

Sostituisci quanto segue:

  • INSTANCE_NAME: il nome dell'istanza su cui vuoi impostare il log delle transazioni.
  • DAYS_TO_RETAIN: il numero di giorni di log delle transazioni da conservare. Per la versione Cloud SQL Enterprise Plus, l'intervallo valido è compreso tra 1 e 35 giorni, con un valore predefinito di 14 giorni. Per la versione Cloud SQL Enterprise, l'intervallo valido è tra 1 e 7 giorni, con un valore predefinito di 7 giorni.

    Se non specifichi un valore, Cloud SQL utilizza il valore predefinito. È valido solo quando il PITR è abilitato. Conservare i log delle transazioni per più giorni richiede uno spazio di archiviazione più grande.

  gcloud sql instances patch INSTANCE_NAME 
--retained-transaction-log-days=DAYS_TO_RETAIN

REST v1

Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:

  • PROJECT_ID: l'ID progetto
  • INSTANCE_ID: l'ID istanza
  • DAYS_TO_RETAIN: il numero di giorni per conservare i log delle transazioni. Per la versione Cloud SQL Enterprise Plus, l'intervallo valido è compreso tra 1 e 35 giorni, con un valore predefinito di 14 giorni. Per la versione Cloud SQL Enterprise, l'intervallo valido è compreso tra 1 e 7 giorni, con un valore predefinito di 7 giorni.

    Se non viene specificato alcun valore, viene utilizzato il valore predefinito. È valido solo quando il PITR è abilitato. Conservare i log delle transazioni per più giorni richiede uno spazio di archiviazione maggiore.

Metodo HTTP e URL:

PATCH https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID

Corpo JSON della richiesta:

{
  "settings":
  {
    "backupConfiguration":
    {
      "transactionLogRetentionDays": "DAYS_TO_RETAIN"
    }
  }
}

Per inviare la richiesta, espandi una di queste opzioni:

Dovresti ricevere una risposta JSON simile alla seguente:

REST v1beta4

Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:

  • PROJECT_ID: l'ID progetto
  • INSTANCE_ID: l'ID istanza
  • DAYS_TO_RETAIN: il numero di giorni per conservare i log delle transazioni. Per la versione Cloud SQL Enterprise Plus, l'intervallo valido è compreso tra 1 e 35 giorni, con un valore predefinito di 14 giorni. Per la versione Cloud SQL Enterprise, l'intervallo valido è compreso tra 1 e 7 giorni, con un valore predefinito di 7 giorni.

    Se non viene specificato alcun valore, viene utilizzato il valore predefinito. È valido solo quando il PITR è abilitato. Conservare i log delle transazioni per più giorni richiede uno spazio di archiviazione maggiore.

Metodo HTTP e URL:

PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID

Corpo JSON della richiesta:

{
  "settings":
  {
    "backupConfiguration":
    {
      "transactionLogRetentionDays": "DAYS_TO_RETAIN"
    }
  }
}

Per inviare la richiesta, espandi una di queste opzioni:

Dovresti ricevere una risposta JSON simile alla seguente:

Risoluzione dei problemi

Problema Risoluzione dei problemi

argument --point-in-time: Failed to parse date/time:
Unknown string format: 2021-0928T30:54:03.094;
received: 2021-0928T30:54:03.094Z

OPPURE

Invalid value at 'body.clone_context.point_in_time'
(type.googleapis.com/google.protobuf.Timestamp), Field 'pointInTime',
Invalid time format: Failed to parse input,

Il timestamp che hai fornito non è valido.

HTTP Error 400: Successful backup required for carrying out the operation was not found.

OPPURE

Successful backup required for carrying out the operation was not found. or Time where no backups can be found.

Il timestamp che hai fornito si riferisce a un momento in cui non è stato possibile trovare i backup o le coordinate binlog.

Passaggi successivi