Creare istanze

Questa pagina descrive come creare un'istanza Cloud SQL per MySQL.

Per informazioni dettagliate su tutte le impostazioni delle istanze, consulta Impostazioni delle istanze.

Un'istanza appena creata ha quattro database di sistema:

  • information_schema: fornisce l'accesso ai metadati del database, alle informazioni sul server MySQL.
  • mysql: lo schema di sistema. Contiene tabelle che archiviano le informazioni richieste dal server MySQL durante l'esecuzione.
  • performance_schema: una funzionalità per il monitoraggio dell'esecuzione del server MySQL a basso livello.
  • sys: contiene un insieme di oggetti che aiutano i DBA e gli sviluppatori a interpretare i dati raccolti dallo schema sul rendimento.

Prima di iniziare

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Make sure that billing is enabled for your Google Cloud project.

  4. Install the Google Cloud CLI.
  5. To initialize the gcloud CLI, run the following command:

    gcloud init
  6. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  7. Make sure that billing is enabled for your Google Cloud project.

  8. Install the Google Cloud CLI.
  9. To initialize the gcloud CLI, run the following command:

    gcloud init
  10. Assicurati di disporre dei ruoli Amministratore Cloud SQL e Visualizzatore di Compute sul tuo account utente.

    Vai alla pagina IAM

    Scopri di più su ruoli e autorizzazioni.

Creare un'istanza MySQL

Console

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

    Vai a Istanze Cloud SQL

  2. Fai clic su Crea istanza.
  3. Nel riquadro Scegli il tuo motore del database della pagina Crea un'istanza, fai clic su Scegli MySQL.
  4. Nel campo ID istanza del riquadro Informazioni sull'istanza, inserisci un ID per l'istanza.

    Non è necessario includere l'ID progetto nel nome dell'istanza. Questa operazione viene eseguita automaticamente ove opportuno (ad esempio nei file di log).

  5. Imposta una password per l'utente root.

    Anche se è presente un'opzione per impostare Nessuna password, questa opzione non è consigliata per motivi di sicurezza.

  6. Per visualizzare la password in testo normale, fai clic sull'icona Mostra password.

    Puoi inserire la password manualmente o fare clic su Genera per consentire a Cloud SQL di crearla automaticamente.
  7. (Facoltativo) Configura un criterio per le password per l'istanza come segue:

    1. Seleziona la casella di controllo Abilita le policy per le password.
    2. Fai clic sul pulsante Imposta criterio per le password, imposta una o più delle seguenti opzioni e fai clic su Salva.
      • Lunghezza minima: specifica il numero minimo di caratteri che deve avere la password.
      • Complessità della password: verifica se la password è una combinazione di lettere minuscole, maiuscole, numeriche e non alfanumeriche.
      • Limita il riutilizzo della password: specifica il numero di password precedenti che non puoi riutilizzare.

        Supportato solo su Cloud SQL per MySQL 8.0 e versioni successive.

      • Non consentire il nome utente: impedisce l'utilizzo del nome utente nella password.
  8. Seleziona la versione del database per l'istanza: MySQL 8.4, MySQL 8.0 (predefinito), MySQL 5.7 o MySQL 5.6.
  9. (Facoltativo) Seleziona Mostra versioni secondarie. Poi scegli una versione secondaria diversa da quella predefinita.
  10. La versione del database non può essere modificata dopo la creazione dell'istanza.

  11. Seleziona la versione Cloud SQL per l'istanza: Enterprise o Enterprise plus. Per ulteriori informazioni sulle versioni di Cloud SQL, consulta Introduzione alle versioni di Cloud SQL.
  12. Nella sezione Scegli la disponibilità per regione e zona, seleziona la regione e la zona per l'istanza. La disponibilità delle regioni potrebbe variare in base alla versione di Cloud SQL. Per ulteriori informazioni, vedi Informazioni sulle impostazioni delle istanze.

    Posiziona l'istanza nella stessa regione delle risorse che accedono. La regione selezionata non può essere modificata in futuro. Nella maggior parte dei casi, non è necessario specificare una zona.

    Se configuri l'istanza per l'alta disponibilità, puoi selezionare sia una zona principale che una secondaria.

    Quando la zona secondaria viene utilizzata durante la creazione dell'istanza, si applicano le seguenti condizioni:

    • Per impostazione predefinita, le zone sono Any per la zona principale e Any (different from primary) per la zona secondaria.
    • Se sono specificate sia la zona principale che quella secondaria, devono essere zone distinte.
  13. Nella sezione Personalizza la tua istanza, aggiorna le impostazioni per la tua istanza. Per iniziare, fai clic su MOSTRA OPZIONI DI CONFIGURAZIONE per visualizzare i gruppi di impostazioni. Quindi, espandi i gruppi che ti interessano per esaminare e personalizzare le impostazioni. A destra viene visualizzato un riepilogo di tutte le opzioni selezionate. La personalizzazione di queste impostazioni dell'istanza è facoltativa. I valori predefiniti vengono assegnati in tutti i casi in cui non vengono apportate personalizzazioni.

    La tabella seguente è un riferimento rapido alle impostazioni delle istanze. Per maggiori dettagli su ciascuna impostazione, consulta la pagina delle impostazioni dell'istanza.

    Impostazione Note
    Tipo di macchina
    Tipo di macchina Seleziona Nucleo condiviso o Nucleo dedicato. Per i core condivisi, ogni tipo di macchina è classificato in base al numero di CPU (core) e alla quantità di memoria per l'istanza.
    Core Il numero di vCPU per l'istanza. Scopri di più.
    Memoria La quantità di memoria per l'istanza, in GB. Scopri di più.
    Personalizzato Per il tipo di macchina Nucleo dedicato, anziché selezionare una configurazione predefinita, seleziona il pulsante Personalizzata per creare un'istanza con una configurazione personalizzata. Quando selezioni questa opzione, devi selezionare il numero di core e la quantità di memoria per l'istanza. Scopri di più.
    Spazio di archiviazione
    Tipo di archiviazione Determina se l'istanza utilizza lo spazio di archiviazione SSD o HDD. Scopri di più.
    Capacità dello spazio di archiviazione La quantità di spazio di archiviazione di cui è stato eseguito il provisioning per l'istanza. Scopri di più.
    Abilita aumenti automatici dello spazio di archiviazione Determina se Cloud SQL fornisce automaticamente più spazio di archiviazione per la tua istanza quando lo spazio libero è insufficiente. Scopri di più.
    Crittografia
    Crittografia gestita da GoogleL'opzione predefinita.
    Chiave di crittografia gestita dalla chiave del cliente (CMEK)Seleziona per utilizzare la chiave con Google Cloud Key Management Service. Scopri di più.
    Connessioni
    IP privato Aggiunge un indirizzo IP privato per l'istanza. Per consentire la connessione all'istanza, è necessaria un'ulteriore configurazione.
    Se vuoi, puoi specificare un intervallo IP allocato da utilizzare per le connessioni delle tue istanze.
    1. Espandi Mostra opzione intervallo IP allocato.
    2. Seleziona un intervallo IP dal menu a discesa.

    L'istanza può avere sia un indirizzo IP pubblico che uno privato.

    IP pubblico Aggiunge un indirizzo IP pubblico per l'istanza. Puoi quindi aggiungere reti autorizzate per connetterti all'istanza.

    L'istanza può avere sia un indirizzo IP pubblico che uno privato.

    Scopri di più sull'utilizzo dell'IP pubblico.

    Reti autorizzate

    Aggiungi il nome della nuova rete e l'indirizzo di rete. Scopri di più.

    Percorso privato per i servizi Google Cloud

    Se selezioni questa casella di controllo, consenti ad altri servizi Google Cloud, come BigQuery, di accedere ai dati in Cloud SQL ed eseguire query su questi dati tramite una connessione privata.

    Protezione dei dati
    Backup automatici L'intervallo di tempo in cui vuoi che vengano avviati i backup. Scopri di più.
    Scegli dove archiviare i tuoi backupSeleziona Multi-region per la maggior parte dei casi d'uso. Se devi archiviare i backup in una regione specifica, ad esempio per motivi normativi, seleziona Regione e la tua regione dal menu a discesa Posizione.
    Scegli quanti backup automatici archiviareIl numero di backup automatici che vuoi conservare (da 1 a 365 giorni). Scopri di più.
    Abilita recupero point-in-time Consente di attivare il recupero point-in-time e la registrazione write-ahead. Scopri di più.
    Attiva la protezione da eliminazione Determina se proteggere un'istanza dall'eliminazione accidentale. Scopri di più.
    Scegli il numero di giorni di log da conservare Configura la conservazione dei log di scrittura anticipata da 1 a 7 giorni. L'impostazione predefinita è 7 giorni. Scopri di più.
    Manutenzione
    Finestra preferita Determina una finestra di un'ora in cui Cloud SQL può eseguire la manutenzione interattiva della tua istanza. Se non imposti il periodo, la manutenzione interattiva può essere eseguita in qualsiasi momento. Scopri di più.
    Ordine degli aggiornamenti Le tempistiche preferite per gli aggiornamenti delle istanze rispetto ad altre istanze nello stesso progetto. Scopri di più.
    Flag
    AGGIUNGI FLAG Puoi utilizzare i flag del database per controllare le impostazioni e i parametri della tua istanza. Scopri di più.
    Etichette
    AGGIUNGI ETICHETTAAggiungi una chiave e un valore per ogni etichetta aggiunta. Le etichette ti aiutano a organizzare le istanze.
    Cache di dati
    (Facoltativo) Abilita la cache dei dati Attiva la cache dei dati per le istanze Cloud SQL per MySQL nella versione Enterprise Plus. Per ulteriori informazioni sulla cache dei dati, consulta Cache dei dati.
  14. Fai clic su Crea istanza.

    Nota: la creazione dell'istanza potrebbe richiedere alcuni minuti. Tuttavia, puoi visualizzare le informazioni sull'istanza durante la sua creazione.

gcloud

Per informazioni su come installare e iniziare a utilizzare l'interfaccia a riga di comando gcloud, consulta Installazione dell'interfaccia a riga di comando gcloud. Per informazioni su come avviare Cloud Shell, consulta la documentazione di Cloud Shell.

  1. Utilizza il comando gcloud sql instances create per creare l'istanza:
  2. Per le istanze della versione Enterprise Plus di Cloud SQL:

    gcloud sql instances create INSTANCE_NAME \
    --region=REGION \
    --tier=TIER \
    --database-version=DATABASE_VERSION \
    --edition=ENTERPRISE_PLUS

    Per le istanze Cloud SQL Enterprise:

    gcloud sql instances create INSTANCE_NAME \
    --cpu=NUMBER_CPUS \
    --memory=MEMORY_SIZE \
    --region=REGION

    In alternativa, puoi utilizzare il flag --tier se scegli db-f1-micro o db-g1-small come tipo di macchina:
    gcloud sql instances create INSTANCE_NAME \
    --tier=API_TIER_STRING \
    --region=REGION

    Esistono limitazioni per i valori delle vCPU e delle dimensioni della memoria:

    • Le vCPU devono essere 1 o un numero pari compreso tra 2 e 96.
    • La memoria deve essere:
      • Da 0,9 a 6,5 GB per vCPU
      • Un multiplo di 256 MB
      • Almeno 3,75 GB (3840 MB)

    Ad esempio, il seguente comando crea un'istanza Cloud SQL Enterprise Edition con due vCPU e 7680 MB di memoria:

    gcloud sql instances create myinstance \
    --database-version=MYSQL_8_0 \
    --cpu=2 \
    --memory=7680MB \
    --region=us-central1

    Il seguente comando crea un'istanza Cloud SQL Enterprise Plus con quattro core:

    gcloud sql instances create myinstance \
    --database-version=MYSQL_8_0_31 \
    --tier=db-perf-optimized-N-4 \
    --edition=ENTERPRISE_PLUS \
    --region=us-central1

    Il valore predefinito per REGION è us-central1.

    Non includere informazioni sensibili o che consentono l'identificazione personale nel nome dell'istanza, poiché è visibile all'esterno.
    Non è necessario includere l'ID progetto nel nome dell'istanza. Questa operazione viene eseguita automaticamente ove opportuno (ad esempio nei file di log).

    Se stai creando un'istanza per l'alta disponibilità, puoi specificare sia le zone principali che quelle secondarie utilizzando i parametri --zone e --secondary-zone. Quando la zona secondaria viene utilizzata durante la creazione o la modifica dell'istanza, si applicano le seguenti condizioni:

    • Le zone devono essere zone valide.
    • Se è specificata la zona secondaria, deve essere specificata anche quella principale.
    • Se le zone principali e secondarie sono specificate, devono essere zone distinta
    • Se le zone principali e secondarie sono specificate, devono appartenere alla stessa regione.

    Puoi aggiungere altri parametri per determinare altre impostazioni dell'istanza:

    Impostazione Parametro Note
    Parametri obbligatori
    Versione database --database-version La versione del database, che si basa sulla tua versione di Cloud SQL.
    Regione --region Visualizza i valori validi.
    Imposta i criteri relativi alle password
    Abilita la policy delle password --enable-password-policy Attiva il criterio password quando viene utilizzato. Per impostazione predefinita, il criterio per le password è disattivato. Se viene disattivato utilizzando il parametro --clear-password-policy, gli altri parametri dei criteri relativi alle password vengono reimpostati.
    Lunghezza minima --password-policy-min-length Specifica il numero minimo di caratteri che deve avere la password.
    Complessità della password --password-policy-complexity Attiva il controllo della complessità della password per assicurarti che la password contenga uno di ciascuno di questi tipi di caratteri: minuscolo, maiuscolo, numerico e non alfanumerico. Imposta il valore su COMPLEXITY_DEFAULT.
    Limita il riutilizzo della password --password-policy-reuse-interval Specifica il numero di password precedenti che non puoi riutilizzare. Supportato solo su Cloud SQL per MySQL 8.0 e versioni successive.
    Non consentire nome utente --password-policy-disallow-username-substring Impedisce l'utilizzo del nome utente nella password. Utilizza il parametro --no-password-policy-disallow-username-substring per disattivare il controllo.
    Connettività
    IP privato --network

    --no-assign-ip (facoltativo)

    --allocated-ip-range-name (facoltativo)

    --enable-google-private-path (facoltativo)

    --network: specifica il nome della rete VPC che vuoi utilizzare per questa istanza. L'accesso privato ai servizi deve essere già configurato per la rete. Disponibile solo per il comando beta (gcloud beta sql instances create).

    --no-assign-ip: l'istanza avrà solo un indirizzo IP privato.

    --allocated-ip-range-name: se specificato, imposta un nome per un intervallo per il quale viene allocato un intervallo IP. Ad esempio, google-managed-services-default. Il nome dell'intervallo deve essere conforme a RFC-1035 e avere una lunghezza compresa tra 1 e 63 caratteri. (gcloud alpha sql instances create).

    --enable-google-private-path: se utilizzi questo parametro, consenti ad altri servizi Google Cloud, come BigQuery, di accedere ai dati in Cloud SQL ed eseguire query su questi dati tramite una connessione privata.

    Questo parametro è valido solo se:

    • Utilizzi il parametro --no-assign-ip.
    • Utilizza il parametro --network per specificare il nome della rete VPC che vuoi utilizzare per creare una connessione privata.

    IP pubblico --authorized-networks Per le connessioni con IP pubblico, solo le connessioni da reti autorizzate possono collegarsi all'istanza. Scopri di più.
    Applicazione SSL

    --ssl-mode

    --require-ssl

    Il parametro ssl-mode applica l'applicazione di SSL/TLS per le connessioni. Per maggiori informazioni, consulta la sezione Impostazioni per Cloud SQL per MySQL.

    Il parametro require-ssl determina se le connessioni SSL su IP sono obbligatorie o meno. require-ssl è un parametro precedente. Utilizza invece ssl-mode. Per ulteriori informazioni, consulta IpConfiguration.

    Modalità CA del server --server-ca-mode

    Il flag --server-ca-mode configura il tipo di autorità di certificazione (CA) del server per un'istanza. Puoi selezionare una delle seguenti opzioni:

    • GOOGLE_MANAGED_INTERNAL_CA: questo è il valore predefinito. Con questa opzione, una CA interna dedicata a ogni istanza Cloud SQL firma il certificato server per quell'istanza.
    • GOOGLE_MANAGED_CAS_CA: con questa opzione viene utilizzata una gerarchia di CA composta da una CA radice e da CA server subordinate gestite da Cloud SQL e ospitate su Google Cloud Certificate Authority Service (servizio CA). Le CA del server subordinate in una regione firmano i certificati del server e vengono condivise tra le istanze della regione. Questa opzione è supportata solo su MySQL 8.0.30 e versioni successive.

    L'utilizzo del flag --server-ca-mode è in Anteprima.

    Tipo di macchina e archiviazione
    Tipo di macchina --tier Utilizzato per specificare un'istanza con core condiviso (db-f1-micro o db-g1-small). Per una configurazione dell'istanza personalizzata, utilizza i parametri --cpu o --memory. Consulta Configurazione dell'istanza personalizzata.
    Tipo di archiviazione --storage-type Determina se l'istanza utilizza lo spazio di archiviazione SSD o HDD. Scopri di più.
    Capacità dello spazio di archiviazione --storage-size La quantità di spazio di archiviazione di cui è stato eseguito il provisioning per l'istanza, in GB. Scopri di più.
    Aumento automatico dello spazio di archiviazione --storage-auto-increase Determina se Cloud SQL fornisce automaticamente più spazio di archiviazione per la tua istanza quando lo spazio libero è insufficiente. Scopri di più.
    Limite di aumento automatico dello spazio di archiviazione --storage-auto-increase-limit Determina la dimensione dello spazio di archiviazione che Cloud SQL può aumentare automaticamente. Disponibile solo per il comando beta (gcloud beta sql instances create). Scopri di più.
    Cache dei dati (facoltativa) --enable-data-cache Attiva o disattiva la cache dei dati per le istanze. Per ulteriori informazioni, consulta la sezione sulla cache dei dati.
    Backup automatici e alta disponibilità
    Alta disponibilità --availability-type Per un'istanza ad alta disponibilità, imposta il valore su REGIONAL. Scopri di più.
    Zona secondaria --secondary-zone Se stai creando un'istanza per l'alta disponibilità, puoi specificare sia le zone principali che quelle secondarie utilizzando --zone e --secondary-zone parameters. Quando la zona secondaria viene utilizzata durante la creazione o la modifica dell'istanza, si applicano le seguenti limitazioni:
    • Le zone devono essere zone valide.
    • Se è specificata la zona secondaria, deve essere specificata anche quella principale.
    • Se le zone principali e secondarie sono specificate, devono essere zone distinta

      Se le zone principali e secondarie sono specificate, devono appartenere alla stessa regione.

    Backup automatici --backup-start-time L'intervallo di tempo in cui vuoi che vengano avviati i backup. Scopri di più.
    Impostazioni di conservazione per i backup automatici --retained-backups-count Il numero di backup automatici da conservare. Scopri di più.
    Logging binario --enable-bin-log Il logging binario consente la replica e il recupero point-in-time. Scopri di più.
    Impostazioni di conservazione per il logging binario --retained-transaction-log-days Il numero di giorni per conservare i log binari per il recupero point-in-time.Scopri di più.
    Aggiungere flag di database
    Flag di database --database-flags Puoi utilizzare i flag del database per controllare le impostazioni e i parametri della tua istanza. Scopri di più sui flag di database. Scopri di più su come formattare questo parametro.
    Pianificazione della manutenzione
    Periodo di manutenzione --maintenance-window-day,
    --maintenance-window-hour
    Determina una finestra di un'ora in cui Cloud SQL può eseguire manutenzioni interruttive sulla tua istanza. Se non imposti il periodo, la manutenzione interattiva può essere eseguita in qualsiasi momento. Scopri di più.
    Tempistica per manutenzione --maintenance-release-channel Le tempistiche preferite per gli aggiornamenti delle istanze rispetto ad altre istanze nello stesso progetto. Utilizza preview per gli aggiornamenti precedenti e production per quelli successivi. Scopri di più.
  3. Prendi nota dell'indirizzo IP assegnato automaticamente.

    Se non utilizzi il proxy di autenticazione Cloud SQL, utilizzerai questo indirizzo come indirizzo di host utilizzato dalle tue applicazioni o dai tuoi strumenti per connettersi all' istanza.

  4. Imposta la password per l'utente MySQL "root@%":
    gcloud sql users set-password root \
    --host=% \
    --instance INSTANCE_NAME \
    --password PASSWORD

Terraform

Per creare un'istanza, utilizza una risorsa Terraform.

resource "google_sql_database_instance" "mysql_pvp_instance_name" {
  name             = "mysql-pvp-instance-name"
  region           = "asia-northeast1"
  database_version = "MYSQL_8_0"
  root_password    = "abcABC123!"
  settings {
    tier = "db-f1-micro"
    password_validation_policy {
      min_length                  = 6
      complexity                  = "COMPLEXITY_DEFAULT"
      reuse_interval              = 2
      disallow_username_substring = true
      enable_password_policy      = true
    }
  }
  # set `deletion_protection` to true, will ensure that one cannot accidentally delete this instance by
  # use of Terraform whereas `deletion_protection_enabled` flag protects this instance at the GCP level.
  deletion_protection = false
}

Applica le modifiche

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

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 farlo 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 una propria directory (chiamata anche modulo principale).

  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 è 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 main.tf appena creato.

    Se vuoi, copia il codice da GitHub. Questa opzione è consigliata quando lo snippet Terraform fa parte di una soluzione end-to-end.

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

    Se vuoi, per utilizzare la versione più recente del provider Google, includi l'opzione -upgrade:

    terraform init -upgrade

Applica le modifiche

  1. Rivedi la configurazione e verifica che le risorse che Terraform sta per creare o aggiornare corrispondano alle tue aspettative:
    terraform plan

    Apporta le correzioni necessarie alla configurazione.

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

    Attendi che Terraform mostri il messaggio "Applicazione completata".

  3. Apri il tuo progetto Google Cloud 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 dell'eliminazione, imposta l'argomento deletion_protection su false nel file di configurazione Terraform.
    deletion_protection =  "false"
  2. Applica la configurazione Terraform aggiornata eseguendo il seguente comando 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

Crea l'istanza

Questo esempio crea un'istanza. Sono inclusi anche alcuni parametri facoltativi, come i backup e la registrazione binaria. Per un elenco completo dei parametri per questa chiamata, consulta la pagina Instances:insert. Per informazioni sulle impostazioni delle istanze, inclusi i valori validi per la regione, consulta Impostazioni istanza.

Non includere informazioni sensibili o che consentono l'identificazione personale nell'ID istanza, in quanto è visibile all'esterno.
Non è necessario includere l'ID progetto nel nome dell'istanza. Questa operazione viene eseguita automaticamente ove opportuno (ad esempio nei file di log).

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

  • PROJECT_ID: il tuo ID progetto
  • INSTANCE_ID: il tuo ID istanza
  • DATABASE_VERSION: la versione del database. Ad esempio: MYSQL_8_4 o MYSQL_8_0_37. Se non specifichi una versione del database, la versione predefinita è MYSQL_8_0.
  • REGION: la regione
  • MACHINE_TYPE: il tuo tipo di macchina
  • EDITION_TYPE: la tua versione Cloud SQL
  • DATA_CACHE_ENABLED: (facoltativo) impostato su true per attivare la cache dei dati per l'istanza
  • PRIVATE_NETWORK: specifica il nome della rete Virtual Private Cloud (VPC) che vuoi utilizzare per questa istanza. L'accesso privato ai servizi deve essere già configurato per la rete.
  • AUTHORIZED_NETWORKS: per le connessioni con IP pubblico, specifica le connessioni da reti autorizzate che possono connettersi alla tua istanza.
  • CA_MODE: specifica una gerarchia di autorità di certificazione per l'istanza, GOOGLE_MANAGED_INTERNAL_CA o GOOGLE_MANAGED_CAS_CA. Se non specifichi serverCaMode, la configurazione predefinita è GOOGLE_MANAGED_INTERNAL_CA. Questa funzionalità è in Anteprima.

Per impostare un criterio per le password durante la creazione di un'istanza, includi l'oggetto passwordValidationPolicy nella richiesta. Imposta i seguenti parametri, come richiesto:

  • enablePasswordPolicy: attiva il criterio per le password se impostato su true.

    Per rimuovere il criterio per le password, puoi utilizzare una richiesta PATCH con null come valore per enablePasswordPolicy. In questo caso, gli altri parametri dei criteri per le password vengono reimpostati.

  • minLength: specifica il numero minimo di caratteri che deve avere la password.
  • complexity: verifica se la password è una combinazione di caratteri alfanumerici, numerici, minuscoli e maiuscoli. Il valore predefinito è COMPLEXITY_DEFAULT.
  • reuseInterval: specifica il numero di password precedenti che non puoi riutilizzare.

    Supportato solo su Cloud SQL per MySQL 8.0 e versioni successive.

  • disallowUsernameSubstring: impedisce l'utilizzo del nome utente nella password se impostato su true.

Metodo HTTP e URL:

POST https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances

Corpo JSON della richiesta:

{
  "name": "INSTANCE_ID",
  "region": "REGION",
  "databaseVersion": "DATABASE_VERSION",
  "settings": {
    "tier": "MACHINE_TYPE",
    "edition": "EDITION_TYPE",
    "dataCacheConfig" = {
      "dataCacheEnabled": DATA_CACHE_ENABLED
    },
    "backupConfiguration": {
      "binaryLogEnabled": true,
      "enabled": true
    },
    "passwordValidationPolicy": {
      "enablePasswordPolicy": true
      "minLength": "MIN_LENGTH",
      "complexity": COMPLEXITY_DEFAULT,
      "reuseInterval": "REUSE_INTERVAL",
      "disallowUsernameSubstring": "DISALLOW_USERNAME_SUBSTRING",
    }
    "ipConfiguration": {
      "privateNetwork": "PRIVATE_NETWORK",
      "authorizedNetworks": [AUTHORIZED_NETWORKS],
      "ipv4Enabled": false,
      "enablePrivatePathForGoogleCloudServices": true,
      "serverCaMode": "CA_MODE"
    }
  }
}

Per inviare la richiesta, espandi una di queste 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": "2019-09-25T22:19:33.735Z",
  "operationType": "CREATE",
  "name": "OPERATION_ID",
  "targetId": "INSTANCE_ID",
  "selfLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/operations/OPERATION_ID",
  "targetProject": "PROJECT_ID"
}

La risposta è un'operazione di lunga durata che potrebbe richiedere alcuni minuti.

Aggiorna la password di root

Al termine dell'inizializzazione dell'istanza, aggiorna la password di root:

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

  • project-id: il tuo ID progetto
  • instance-id: l'ID istanza creato nel passaggio precedente
  • root-password: password root desiderata

Metodo HTTP e URL:

PUT https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id/users?host=%25&name=root

Corpo JSON della richiesta:

{
  "name": "root",
  "host": "%",
  "password": "root-password"
}

Per inviare la richiesta, espandi una di queste 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": "DONE",
  "user": "user@example.com",
  "insertTime": "2019-09-26T14:32:30.592Z",
  "startTime": "2019-09-26T14:32:30.594Z",
  "endTime": "2019-09-26T14:32:33.518Z",
  "operationType": "UPDATE_USER",
  "name": "operation-id",
  "targetId": "instance-id",
  "selfLink": "https://sqladmin.googleapis.com/v1/projects/project-id/operations/operation-id",
  "targetProject": "project-id"
}

Recupera l'indirizzo IPv4

Recupera l'indirizzo IPv4 assegnato automaticamente per la nuova istanza:

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

  • project-id: il tuo ID progetto
  • instance-id: l'ID istanza creato nel passaggio precedente

Metodo HTTP e URL:

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

Per inviare la richiesta, espandi una di queste opzioni:

Dovresti ricevere una risposta JSON simile alla seguente:

{
  "kind": "sql#instance",
  "state": "RUNNABLE",
  "databaseVersion": "MYSQL_8_0_18",
  "settings": {
    "authorizedGaeApplications": [],
    "tier": "db-f1-micro",
    "kind": "sql#settings",
    "pricingPlan": "PER_USE",
    "replicationType": "SYNCHRONOUS",
    "activationPolicy": "ALWAYS",
    "ipConfiguration": {
      "authorizedNetworks": [],
      "ipv4Enabled": true
    },
    "locationPreference": {
      "zone": "us-west1-a",
      "kind": "sql#locationPreference"
    },
    "dataDiskType": "PD_SSD",
    "backupConfiguration": {
      "startTime": "18:00",
      "kind": "sql#backupConfiguration",
      "enabled": true,
      "binaryLogEnabled": true
    },
    "settingsVersion": "1",
    "storageAutoResizeLimit": "0",
    "storageAutoResize": true,
    "dataDiskSizeGb": "10"
  },
  "etag": "--redacted--",
  "ipAddresses": [
    {
      "type": "PRIMARY",
      "ipAddress": "10.0.0.1"
    }
  ],
  "serverCaCert": {
    ...
  },
  "instanceType": "CLOUD_SQL_INSTANCE",
  "project": "project-id",
  "serviceAccountEmailAddress": "redacted@gcp-sa-cloud-sql.iam.gserviceaccount.com",
  "backendType": "SECOND_GEN",
  "selfLink": "https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id",
  "connectionName": "project-id:region:instance-id",
  "name": "instance-id",
  "region": "us-west1",
  "gceZone": "us-west1-a"
}

Cerca il campo ipAddress nella risposta.

REST v1beta4

Crea l'istanza

Questo esempio crea un'istanza. Sono inclusi anche alcuni parametri facoltativi, come i backup e la registrazione binaria. Per un elenco completo dei parametri per questa chiamata, consulta la pagina instances:insert. Per informazioni sulle impostazioni delle istanze, inclusi i valori validi per la regione, consulta Impostazioni delle istanze.

Non includere informazioni sensibili o che consentono l'identificazione personale nell'ID istanza, in quanto è visibile all'esterno.
Non è necessario includere l'ID progetto nel nome dell'istanza. Questa operazione viene eseguita automaticamente ove opportuno (ad esempio nei file di log).

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

  • PROJECT_ID: il tuo ID progetto
  • INSTANCE_ID: il tuo ID istanza
  • DATABASE_VERSION: la versione del database. Ad esempio: MYSQL_8_4 o MYSQL_8_0_37. Se non specifichi una versione del database, la versione predefinita è MYSQL_8_0.
  • REGION: la regione
  • MACHINE_TYPE: il tuo tipo di macchina
  • EDITION_TYPE: la tua versione Cloud SQL
  • DATA_CACHE_ENABLED: (facoltativo) impostato su true per attivare la cache dei dati per l'istanza
  • PRIVATE_NETWORK: specifica il nome della rete Virtual Private Cloud (VPC) che vuoi utilizzare per questa istanza. L'accesso privato ai servizi deve essere già configurato per la rete.
  • AUTHORIZED_NETWORKS: per le connessioni con IP pubblico, specifica le connessioni da reti autorizzate che possono connettersi alla tua istanza.
  • CA_MODE: specifica una gerarchia di autorità di certificazione per l'istanza, GOOGLE_MANAGED_INTERNAL_CA o GOOGLE_MANAGED_CAS_CA. Se non specifichi serverCaMode, la configurazione predefinita è GOOGLE_MANAGED_INTERNAL_CA. Questa funzionalità è in Anteprima.

Per impostare un criterio per le password durante la creazione di un'istanza, includi l'oggetto passwordValidationPolicy nella richiesta. Imposta i seguenti parametri, come richiesto:

  • enablePasswordPolicy: attiva il criterio per le password se impostato su true.

    Per rimuovere il criterio per le password, puoi utilizzare una richiesta PATCH con null come valore per enablePasswordPolicy. In questo caso, gli altri parametri dei criteri per le password vengono reimpostati.

  • minLength: specifica il numero minimo di caratteri che deve avere la password.
  • complexity: verifica se la password è una combinazione di caratteri alfanumerici, numerici, minuscoli e maiuscoli. Il valore predefinito è COMPLEXITY_DEFAULT.
  • reuseInterval: specifica il numero di password precedenti che non puoi riutilizzare.

    Supportato solo su Cloud SQL per MySQL 8.0 e versioni successive.

  • disallowUsernameSubstring: impedisce l'utilizzo del nome utente nella password se impostato su true.

Metodo HTTP e URL:

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

Corpo JSON della richiesta:

{
  "name": "INSTANCE_ID",
  "region": "REGION",
  "databaseVersion": "DATABASE_VERSION",
  "settings": {
    "tier": "MACHINE_TYPE",
    "edition": "EDITION_TYPE",
    "dataCacheConfig" {
      "dataCacheEnabled": DATA_CACHE_ENABLED
    },
    "backupConfiguration": {
      "binaryLogEnabled": true,
      "enabled": true
    },
    "passwordValidationPolicy": {
      "enablePasswordPolicy": true
      "minLength": "MIN_LENGTH",
      "complexity": COMPLEXITY_DEFAULT,
      "reuseInterval": "REUSE_INTERVAL",
      "disallowUsernameSubstring": "DISALLOW_USERNAME_SUBSTRING",
    }
    "ipConfiguration": {
      "privateNetwork": "PRIVATE_NETWORK",
      "authorizedNetworks": [AUTHORIZED_NETWORKS],
      "ipv4Enabled": false,
      "enablePrivatePathForGoogleCloudServices": true,
      "serverCaMode": "CA_MODE"
  }
}

Per inviare la richiesta, espandi una di queste 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": "2019-09-25T22:19:33.735Z",
  "operationType": "CREATE",
  "name": "OPERATION_ID",
  "targetId": "INSTANCE_ID",
  "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/operations/OPERATION_ID",
  "targetProject": "PROJECT_ID"
}

La risposta è un'operazione di lunga durata che potrebbe richiedere alcuni minuti.

Aggiorna la password di root

Al termine dell'inizializzazione dell'istanza, aggiorna la password di root:

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

  • project-id: il tuo ID progetto
  • instance-id: l'ID istanza creato nel passaggio precedente
  • root-password: password root desiderata

Metodo HTTP e URL:

PUT https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id/users?host=%25&name=root

Corpo JSON della richiesta:

{
  "name": "root",
  "host": "%",
  "password": "root-password"
}

Per inviare la richiesta, espandi una di queste 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": "DONE",
  "user": "user@example.com",
  "insertTime": "2019-09-26T14:32:30.592Z",
  "startTime": "2019-09-26T14:32:30.594Z",
  "endTime": "2019-09-26T14:32:33.518Z",
  "operationType": "UPDATE_USER",
  "name": "operation-id",
  "targetId": "instance-id",
  "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/operations/operation-id",
  "targetProject": "project-id"
}

La risposta è un'operazione di lunga durata che potrebbe richiedere alcuni minuti.

Recupera l'indirizzo IPv4

Recupera l'indirizzo IPv4 assegnato automaticamente per la nuova istanza:

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

  • project-id: il tuo ID progetto
  • instance-id: l'ID istanza creato nel passaggio precedente

Metodo HTTP e URL:

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

Per inviare la richiesta, espandi una di queste opzioni:

Dovresti ricevere una risposta JSON simile alla seguente:

{
  "kind": "sql#instance",
  "state": "RUNNABLE",
  "databaseVersion": "MYSQL_8_0_18",
  "settings": {
    "authorizedGaeApplications": [],
    "tier": "db-f1-micro",
    "kind": "sql#settings",
    "pricingPlan": "PER_USE",
    "replicationType": "SYNCHRONOUS",
    "activationPolicy": "ALWAYS",
    "ipConfiguration": {
      "authorizedNetworks": [],
      "ipv4Enabled": true
    },
    "locationPreference": {
      "zone": "us-west1-a",
      "kind": "sql#locationPreference"
    },
    "dataDiskType": "PD_SSD",
    "backupConfiguration": {
      "startTime": "18:00",
      "kind": "sql#backupConfiguration",
      "enabled": true,
      "binaryLogEnabled": true
    },
    "settingsVersion": "1",
    "storageAutoResizeLimit": "0",
    "storageAutoResize": true,
    "dataDiskSizeGb": "10"
  },
  "etag": "--redacted--",
  "ipAddresses": [
    {
      "type": "PRIMARY",
      "ipAddress": "10.0.0.1"
    }
  ],
  "serverCaCert": {
    ...
  },
  "instanceType": "CLOUD_SQL_INSTANCE",
  "project": "project-id",
  "serviceAccountEmailAddress": "redacted@gcp-sa-cloud-sql.iam.gserviceaccount.com",
  "backendType": "SECOND_GEN",
  "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id",
  "connectionName": "project-id:region:instance-id",
  "name": "instance-id",
  "region": "us-west1",
  "gceZone": "us-west1-a"
}

Cerca il campo ipAddress nella risposta.

Per scoprire come viene costruita la richiesta dell'API REST sottostante per questa attività, consulta API Explorer nella pagina instances:insert.

Genera l'endpoint di scrittura

Se prevedi di creare un'istanza Cloud SQL Enterprise Plus e vuoi che Cloud SQL generi automaticamente un endpoint di scrittura per l'istanza, abilita l'API Cloud DNS per il tuo progetto Google Cloud.

Se hai già un'istanza Cloud SQL Enterprise Plus e vuoi che Cloud SQL generi automaticamente un endpoint di scrittura, crea una replica abilitata per il ripristino di emergenza avanzato.

Un endpoint di scrittura è un nome DNS (Domain Name Service) globale che risolve automaticamente l'indirizzo IP dell'istanza principale corrente. Questo endpoint reindirizza automaticamente le connessioni in arrivo alla nuova istanza principale in caso di operazione di failover o switchover della replica. Puoi utilizzare l'endpoint di scrittura in una stringa di connessione SQL anziché in un indirizzo IP. Utilizzando un endpoint di scrittura, puoi evitare di dover apportare modifiche alla connessione dell'applicazione in caso di interruzione del servizio a livello regionale.

Per ulteriori informazioni su come ottenere l'endpoint di scrittura per l'istanza, consulta Visualizzare le informazioni sull'istanza. Per ulteriori informazioni sull'utilizzo dell'endpoint di scrittura per connettersi all'istanza, consulta Eseguire la connessione utilizzando un endpoint di scrittura.

Specifica la versione secondaria del database per MySQL 8.0

Puoi specificare la versione secondaria di un'istanza MySQL 8.0 esistente utilizzando gcloud o l'API REST.

gcloud

Utilizza il comando gcloud sql instances create con il flag --database-version.

Sostituisci le seguenti variabili prima di eseguire il comando:

  • INSTANCE_NAME: il nome dell'istanza.
  • DATABASE_VERSION: la versione minore del database dell'istanza: MYSQL_8_0_18, MYSQL_8_0_26, MYSQL_8_0_27, MYSQL_8_0_28, MYSQL_8_0_29, MYSQL_8_0_30, MYSQL_8_0_31 (versione minore predefinita per MySQL 8.0), MYSQL_8_0_32, MYSQL_8_0_33, MYSQL_8_0_34, MYSQL_8_0_35, MYSQL_8_0_36, MYSQL_8_0_37, MYSQL_8_0_39 o MYSQL_8_0_40. Se specifichi MYSQL_8_0, viene utilizzata la versione minore predefinita.

    Se non specifichi questo flag, viene utilizzata la versione principale predefinita, MYSQL_8_0.

gcloud sql instances create INSTANCE_NAME \
--database-version=DATABASE_VERSION

Per informazioni dettagliate, consulta la documentazione sulla creazione di un'istanza utilizzando gcloud.

REST v1

Utilizza una richiesta POST con il metodo instances:insert e il flag databaseVersion.

    POST https://sqladmin.googleapis.com/v1/projects/project-id/instances
Prima di utilizzare i dati della richiesta, sostituisci queste variabili:
  • project_id: l'ID del progetto.
  • instance_id: il nome dell'istanza.
  • databaseVersion: la versione del database dell'istanza: MYSQL_8_0_18, MYSQL_8_0_26, MYSQL_8_0_27, MYSQL_8_0_28, MYSQL_8_0_29, MYSQL_8_0_30, MYSQL_8_0_31 (versione secondaria predefinita per MySQL 8.0), MYSQL_8_0_32, MYSQL_8_0_33, MYSQL_8_0_34, MYSQL_8_0_35, MYSQL_8_0_36, MYSQL_8_0_37, MYSQL_8_0_39 o MYSQL_8_0_40. Se specifichi MYSQL_8_0 come versione, viene utilizzata la versione minore predefinita. Se non specifichi il flag databaseVersion, viene utilizzata la versione principale predefinita, MYSQL_8_0.

Per informazioni dettagliate, consulta la documentazione sulla creazione di un'istanza utilizzando l'API REST v1.

REST v1beta4

Utilizza una richiesta POST con il metodo instances:insert e il flag databaseVersion.

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

Prima di utilizzare i dati della richiesta, sostituisci queste variabili:

  • project_id: l'ID del progetto.
  • instance_id: il nome dell'istanza.
  • databaseVersion: La versione del database dell'istanza: MYSQL_8_0_18, MYSQL_8_0_26, MYSQL_8_0_27, MYSQL_8_0_28, MYSQL_8_0_29, MYSQL_8_0_30, MYSQL_8_0_31 (versione secondaria predefinita per MySQL 8.0), MYSQL_8_0_32, MYSQL_8_0_33. MYSQL_8_0_34, MYSQL_8_0_35, MYSQL_8_0_36, MYSQL_8_0_37, MYSQL_8_0_39 o MYSQL_8_0_40. Se specifichi MYSQL_8_0, viene utilizzata la versione minore predefinita. Se non specifichi il flag databaseVersion, viene utilizzata la versione principale predefinita, MYSQL_8_0.

Per informazioni dettagliate, consulta la documentazione sulla creazione di un'istanza utilizzando l'API REST v1beta4.

Versione secondaria del database per repliche di lettura, cloni e PITR

Quando crei una replica di lettura, puoi specificare la versione minore del database della replica di lettura. Per impostazione predefinita, le nuove repliche di lettura vengono create nella versione secondaria predefinita.

Quando cloni un'istanza, la nuova istanza creata ha la stessa versione secondaria di quella di origine.

Quando esegui un recupero in un determinato momento, l'istanza appena creata ha la stessa versione minore del database di quella di origine.

Configurazioni delle istanze personalizzate

Determina la memoria e i core virtuali disponibili per l'istanza Cloud SQL. La disponibilità del tipo di macchina è determinata dalla versione di Cloud SQL.

Per i carichi di lavoro che richiedono l'elaborazione in tempo reale, come l'elaborazione delle transazioni online (OLTP), assicurati che l'istanza disponga di memoria sufficiente per contenere l'intero set di lavoro. Tuttavia, ci sono altri fattori che possono influire sui requisiti di memoria, ad esempio il numero di connessioni attive e i processi di overhead interni. Devi eseguire test di carico per evitare problemi di prestazioni nel tuo ambiente di produzione.

Quando configuri l'istanza, seleziona memoria e vCPU sufficienti per gestire il tuo carico di lavoro e esegui l'upgrade man mano che il carico di lavoro aumenta. Una configurazione della macchina con vCPU insufficienti potrebbe perdere la copertura dello SLA. Per ulteriori informazioni, consulta le linee guida operative.

Tipi di macchine per le istanze della versione Cloud SQL Enterprise Plus

Per le istanze della versione Cloud SQL Enterprise Plus, i tipi di macchina sono predefiniti come segue:

Tipo di macchina Enterprise Plus vCPU Memoria (GB) SSD locale
db-perf-optimized-N-2 2 16 375
db-perf-optimized-N-4 4 32 375
db-perf-optimized-N-8 8 64 375
db-perf-optimized-N-16 16 128 750
db-perf-optimized-N-32 32 256 1500
db-perf-optimized-N-48 48 384 3000
db-perf-optimized-N-64 64 512 6000
db-perf-optimized-N-80 80 640 6000
db-perf-optimized-N-96 96 768 6000
db-perf-optimized-N-128 128 864 9000

Tipi di macchine per le istanze della versione Enterprise di Cloud SQL

Per le istanze Cloud SQL Enterprise, puoi anche creare configurazioni di istanze personalizzate utilizzando il comando gcloud sql instances create. Le configurazioni delle istanze personalizzate ti consentono di selezionare la quantità di memoria e di CPU necessaria per l'istanza. Questa flessibilità ti consente di scegliere la forma VM appropriata per il tuo carico di lavoro.

I nomi dei tipi di macchine utilizzano il seguente formato: db-custom-#-#

Sostituisci il primo segnaposto # con il numero di CPU nella macchina e il secondo segnaposto # con la quantità di memoria nella macchina.

Ad esempio, se il nome della macchina è db-custom e la macchina ha 1 CPU e 3840 MB di RAM, il formato della macchina sarà db-custom-1-3840.

Quando selezioni il numero di CPU e la quantità di memoria, ci sono alcune limitazioni alla configurazione scelta:

  • Le vCPU devono essere 1 o un numero pari compreso tra 2 e 96.
  • La memoria deve essere:
    • Da 0,9 a 6,5 GB per vCPU
    • Un multiplo di 256 MB
    • Almeno 3,75 GB (3840 MB)

La tabella seguente elenca i nomi di ciascun tipo di macchina precedente, il numero di CPU e RAM per ciascun tipo di macchina e la stringa risultante per il tipo di macchina.

Puoi creare il tipo di macchina equivalente specificando la CPU e la RAM equivalenti nella console Google Cloud, utilizzando la gcloud CLI o specificando db-custom-#-# nell'API.

Tipo di macchina precedente vCPU Memoria (MB) Stringa db-custom-CPU-RAM (stringa del livello API)
db-n1-standard-1 1 3840 db-custom-1-3840
db-n1-standard-2 2 7680 db-custom-2-7680
db-n1-standard-4 4 15360 db-custom-4-15360
db-n1-standard-8 8 30720 db-custom-8-30720
db-n1-standard-16 16 61440 db-custom-16-61440
db-n1-standard-32 32 122880 db-custom-32-122880
db-n1-standard-64 64 245760 db-custom-64-245760
db-n1-standard-96 96 368640 db-custom-96-368640
db-n1-highmem-2 2 13312 db-custom-2-13312
db-n1-highmem-4 4 26624 db-custom-4-26624
db-n1-highmem-8 8 53248 db-custom-8-53248
db-n1-highmem-16 16 106496 db-custom-16-106496
db-n1-highmem-32 32 212992 db-custom-32-212992
db-n1-highmem-64 64 425984 db-custom-64-425984
db-n1-highmem-96 96 638976 db-custom-96-638976

Risoluzione dei problemi

Problema Risoluzione dei problemi
Messaggio di errore: Failed to create subnetwork. Couldn't find free blocks in allocated IP ranges. Please allocate new ranges for this service provider. Non sono disponibili altri indirizzi nell'intervallo IP allocato. Possono verificarsi diversi scenari:

  • La dimensione dell'intervallo IP allocato per la connessione privata al servizio è inferiore a /24.
  • La dimensione dell'intervallo IP allocato per la connessione al servizio privato è troppo piccola per il numero di istanze Cloud SQL.
  • Il requisito relativo alle dimensioni dell'intervallo IP allocato sarà maggiore se le istanze vengono create in più regioni. Vedi Dimensione dell'intervallo allocato

Per risolvere il problema, puoi espandere l'intervallo IP allocato esistente o allocare un intervallo IP aggiuntivo alla connessione del servizio privato. Per ulteriori informazioni, consulta Allocare un intervallo di indirizzi IP.

Se hai utilizzato il flag --allocated-ip-range-name durante la creazione dell'istanza Cloud SQL, puoi espandere solo l'intervallo IP specificato.

Se stai allocando un nuovo intervallo, assicurati che non si sovrapponga alle allocazioni esistenti.

Dopo aver creato un nuovo intervallo di indirizzi IP, aggiorna il peering VPC con il seguente comando:

gcloud services vpc-peerings update \
--service=servicenetworking.googleapis.com \
--ranges=OLD_RESERVED_RANGE_NAME,NEW_RESERVED_RANGE_NAME \
--network=VPC_NETWORK \
--project=PROJECT_ID \
--force
    

Se stai espandendo un'allocazione esistente, assicurati di aumentare solo l'intervallo di allocazione e non di diminuirlo. Ad esempio, se l'allocazione originale era 10.0.10.0/24, imposta la nuova allocazione su almeno 10.0.10.0/23.

In generale, se parti da un'allocazione /24, è buona norma decrementare la maschera di 1 per ogni condizione (gruppo di tipo di istanza aggiuntivo, regione aggiuntiva). Ad esempio, se stai tentando di creare entrambi i gruppi di tipo di istanza nella stessa allocazione, è sufficiente passare da /24 a /23.

Dopo aver espanso un intervallo IP esistente, aggiorna il peering VPC con il seguente comando:

gcloud services vpc-peerings update \
--service=servicenetworking.googleapis.com \
--ranges=RESERVED_RANGE_NAME \
--network=VPC_NETWORK \
--project=PROJECT_ID
    
Messaggio di errore: Failed to create subnetwork. Router status is temporarily unavailable. Please try again later. Help Token: [token-ID]. Prova a creare di nuovo l'istanza Cloud SQL.
Messaggio di errore: Failed to create subnetwork. Required 'compute.projects.get' permission for PROJECT_ID. Quando crei un'istanza utilizzando un indirizzo IP privato, viene creato un account di servizio just in time utilizzando l'API Service Networking. Se hai attivato di recente l'API Service Networking, l'account di servizio potrebbe non essere creato e la creazione dell'istanza potrebbe non riuscire. In questo caso, devi attendere che l'account di servizio venga propagato nel sistema o aggiungerlo manualmente con le autorizzazioni richieste.

Passaggi successivi

  1. Crea un database MySQL nell'istanza.
  2. Crea utenti MySQL nell'istanza.
  3. Proteggere e controllare l'accesso all'istanza.
  4. Connettiti all'istanza con un client MySQL.
  5. Importa i dati nel database.