Esegui l'upgrade della versione secondaria del database

Questa pagina descrive come eseguire l'upgrade della versione secondaria di un'istanza MySQL. Per le versioni supportate, vedi Versioni del database e criteri di versione.

Con ogni nuova versione secondaria, i provider di database rilasciano nuove funzionalità, patch di sicurezza, correzioni di bug e miglioramenti delle prestazioni. Inoltre, Cloud SQL aggiorna regolarmente la versione secondaria durante la manutenzione.

Tuttavia, MySQL 8.0 non supporta il downgrade. Di conseguenza, gli upgrade delle versioni secondarie non sono incluse automaticamente nella manutenzione di routine. Puoi specificare secondaria per Cloud SQL per MySQL 8.0 durante la creazione di un'istanza in seguito durante un processo di upgrade, entrambi descritti in questa pagina.

Prima di eseguire l'upgrade a una nuova versione secondaria di MySQL 8.0, familiarizza con il modifiche. Vedi le note di rilascio di MySQL 8.0. Se utilizzi Cloud SQL per MySQL 5.6 o 5.7, Cloud SQL esegue automaticamente che gestisce la versione secondaria dell'istanza. Quando esegui il provisioning di una nuova istanza, Cloud SQL configura automaticamente l'istanza con il database più recente completamente gestita. Durante la manutenzione di routine, Cloud SQL esegue l'upgrade dell'istanza all'ultima versione supportata.

Per eseguire l'upgrade della versione secondaria del database dell'istanza MySQL 8.0, devi aggiorna l'istanza con la versione secondaria che preferisci, che deve essere superiore rispetto alla versione secondaria attualmente installata. Impossibile ripristinare un valore non specificato una versione secondaria dopo il provisioning dell'istanza.

Prima di eseguire l'upgrade

Cloud SQL supporta l'upgrade della versione secondaria per le istanze MySQL 8.0. MySQL 8.0 non consente i downgrade. Quindi, prima di eseguire l'upgrade dell'istanza principale, segui questi passaggi per assicurarti che i tuoi dati siano al sicuro.

  1. Scegli la versione secondaria di destinazione del database.

    gcloud

    Per informazioni sull'installazione e su come iniziare a utilizzare gcloud CLI, consulta Installare con gcloud CLI. Per informazioni sull'avvio di Cloud Shell, Utilizzare Cloud Shell.

    Per verificare quali versioni secondarie del database sono disponibili per un upgrade in loco, procedi nel seguente modo:

    1. Esegui questo comando.
    2. gcloud sql instances describe INSTANCE_NAME
         

      Sostituisci INSTANCE_NAME con il nome dell'istanza.

    3. Nell'output del comando, individua la sezione con l'etichetta upgradableDatabaseVersions.
    4. Ogni sottosezione restituisce una versione del database disponibile per l'upgrade. In ogni sottosezione, rivedi il campo seguente.
      • name: la stringa di versione del database che include il parametro versione principale e secondaria del database che puoi scegliere come target per la versione secondaria di Cloud SQL per MySQL l'upgrade in loco.

    REST v1

    Per verificare quali versioni secondarie del database sono disponibili per un upgrade in loco, utilizza Metodo instances.get dell'API Cloud SQL Admin.

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

    • INSTANCE_NAME: il nome dell'istanza.

    Metodo HTTP e URL:

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

    Per inviare la richiesta, espandi una delle seguenti opzioni:

    Dovresti ricevere una risposta JSON simile alla seguente:

    
    upgradableDatabaseVersions:
    
    {
      major_version: "MYSQL_8_0"
      name: "MYSQL_8_0_36"
      display_name: "MySQL 8.0.36"
    }
    
    

    REST v1beta4

    Per verificare quali versioni secondarie del database sono disponibili per un upgrade in loco, utilizza Metodo instances.get dell'API Cloud SQL Admin.

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

    • INSTANCE_NAME: il nome dell'istanza.

    Metodo HTTP e URL:

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

    Per inviare la richiesta, espandi una delle seguenti opzioni:

    Dovresti ricevere una risposta JSON simile alla seguente:

    
    upgradableDatabaseVersions:
    
    {
      major_version: "MYSQL_8_0"
      name: "MYSQL_8_0_36"
      display_name: "MySQL 8.0.36"
    }
    
    

    Per l'elenco completo delle versioni del database supportate da Cloud SQL, consulta Versioni del database e criteri di versione.

  2. Testa l'upgrade in un ambiente di gestione temporanea.

    1. Crea un clone dell'istanza di produzione da utilizzare come istanza temporanea. Questo crea una nuova istanza di database con le stesse versioni principali e secondarie.

    2. Esegui un upgrade della versione secondaria sull'istanza temporanea.

    3. Esegui test dei carichi di lavoro per verificare che l'upgrade sia andato a buon fine e che l'applicazione funzioni come previsto. Se il test ha esito positivo, esegui l'upgrade delle istanze di replica di lettura.

  3. Esegui l'upgrade delle istanze di replica di lettura.

    1. Esegui l'upgrade di tutte le repliche di lettura nel database alla versione secondaria di destinazione.

    2. Verifica che l'applicazione funzioni come previsto.

  4. Esegui il backup dell'istanza principale.

    Come per qualsiasi aggiornamento significativo del database, esegui un backup dell'istanza principale.

Esegui l'upgrade della versione secondaria

Puoi specificare la versione secondaria del database di un'istanza esistente utilizzando gcloud o l'API REST. Esegui upgrade della versione secondaria in un momento in cui il database non è in per gli utilizzi odierni. L'istanza viene riavviata durante l'operazione, causando tempi di inattività. Se la versione attualmente installata è successiva a quella richiesta, la richiesta viene rifiutata.

gcloud

Utilizzare il comando gcloud sql instances patch con il flag --database-version.

Sostituisci le seguenti variabili prima di eseguire il comando:

  • INSTANCE_NAME: il nome dell'istanza.
  • DATABASE_VERSION: la versione del database dell'istanza. Se non specifichi questo flag, viene usata la versione principale predefinita.
gcloud sql instances patch INSTANCE_NAME \
   --database-version=DATABASE_VERSION

REST v1

Utilizza una richiesta PATCH con il metodo instances:patch e il flag databaseVersion.

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

  • PROJECT_ID: l'ID progetto
  • INSTANCE_ID: l'ID istanza
  • DATABASE_VERSION: la versione del database a cui eseguire l'upgrade.

Metodo HTTP e URL:

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

Corpo JSON della richiesta:

{
  "databaseVersion": "DATABASE_VERSION"
}

Per inviare la richiesta, espandi una delle seguenti opzioni:

Dovresti ricevere una risposta JSON simile alla seguente:

{
  "kind": "sql#operation",
  "targetLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID",
  "status": "PENDING",
  "user": "user@example.com",
  "insertTime": "2022-07-17T20:23:15.540Z",
  "operationType": "UPDATE",
  "name": "fa3f7304-ccf6-4d2f-a6f5-24df00000032",
  "targetId": "INSTANCE_ID",
  "selfLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/operations/fa3f7304-ccf6-4d2f-a6f5-24df00000032",
  "targetProject": "PROJECT_ID"
}

REST v1beta4

Utilizza una richiesta PATCH con il metodo instances:patch e il flag databaseVersion.

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

  • PROJECT_ID: l'ID progetto
  • INSTANCE_ID: l'ID istanza
  • DATABASE_VERSION: la versione del database a cui eseguire l'upgrade.

Metodo HTTP e URL:

PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT-ID/instances/INSTANCE_ID

Corpo JSON della richiesta:

{
  "databaseVersion": "DATABASE_VERSION"
}

Per inviare la richiesta, espandi una delle seguenti opzioni:

Dovresti ricevere una risposta JSON simile alla seguente:

{
  "kind": "sql#operation",
  "targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID",
  "status": "PENDING",
  "user": "user@example.com",
  "insertTime": "2022-07-17T20:23:15.540Z",
  "operationType": "UPDATE",
  "name": "fa3f7304-ccf6-4d2f-a6f5-24df00000032",
  "targetId": "INSTANCE-ID",
  "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/operations/fa3f7304-ccf6-4d2f-a6f5-24df00000032",
  "targetProject": "PROJECT_ID"
}

Controlla la versione secondaria installata del database

Quando visualizzi le informazioni di riepilogo dell'istanza, la versione secondaria installata del database è visibile nella sezione Configurazione.

Esegui il rollback di un upgrade

Se noti un problema durante il test di un upgrade, puoi eseguire il rollback il tuo database per recuperare l'istanza di database che esegue la versione secondaria precedente.

Per ripristinare un backup prima dell'upgrade, segui questi passaggi:

  1. Esegui il provisioning di un'istanza di database di recupero sulla versione secondaria precedente.
  2. Configura le impostazioni dell'istanza del database di recupero sullo stato precedente l'upgrade.
  3. Ripristina il backup precedente all'upgrade che hai eseguito nell'istanza di recupero.

In alternativa al ripristino di un backup, esegui un recupero point-in-time e crea una nuova istanza.