Questa pagina descrive come configurare la connettività IP pubblica per un'istanza Cloud SQL.
Introduzione
Puoi configurare l'istanza Cloud SQL in modo che abbia un indirizzo IPv4 pubblico e accettare connessioni da indirizzi IP specifici o da un intervallo di indirizzi aggiungendo indirizzi autorizzati all'istanza.
Non puoi specificare una rete privata (ad esempio 10.x.x.x) come rete autorizzata.
Indirizzi IP pubblici per le istanze PostgreSQL:
IPv6: le istanze non supportano IPv6.
IPv4: alle istanze è assegnato automaticamente un indirizzo IPv4 statico. È previsto un piccolo addebito per l'indirizzo IP ogni volta che l'istanza è disattivata (disattivata).
Per ricevere assistenza per la connessione di un client di amministrazione all'istanza tramite una connessione IP, consulta la pagina Connessione di client psql tramite indirizzi IP .
Se configuri l'istanza per accettare le connessioni utilizzando il relativo indirizzo IP pubblico, configura anche l'utilizzo di SSL per proteggere i tuoi dati. Per ulteriori informazioni, consulta la pagina Configurare SSL per le istanze .
Per configurare l'istanza con un indirizzo IP non esposto alla rete Internet pubblica, consulta Configurazione della connettività IP privata .
Attiva l'IP pubblico e aggiungi un indirizzo o un intervallo di indirizzi autorizzati
Quando abiliti l'IP pubblico per la tua istanza, Cloud SQL configura l'istanza con un indirizzo IPv4 statico e pubblico. Dopo aver abilitato l'IP pubblico, devi configurare l'autorizzazione per le connessioni al database. Per ulteriori informazioni, consulta le opzioni di autorizzazione .
Per abilitare l'IP pubblico e aggiungere un indirizzo autorizzato:
Console
Nella console Google Cloud, vai alla pagina Istanze Cloud SQL .
Vai alle istanze Cloud SQL
Per aprire la pagina Panoramica di un'istanza, fai clic sul nome dell'istanza.
Nel menu di navigazione SQL, seleziona Connessioni .
Fai clic sulla scheda Networking .
Seleziona la casella di controllo IP pubblico .
Fai clic su Aggiungi rete .
Facoltativamente, nel campo Nome , inserisci un nome per la rete.
Nel campo Rete , inserisci l'indirizzo IP o l'intervallo di indirizzi da cui vuoi consentire le connessioni.
Utilizza la notazione CIDR .
Fai clic su Fine .
Fai clic su Salva .
gcloud
Se non lo hai già fatto, aggiungi un indirizzo IPv4 all'istanza:
gcloud sql instances patch INSTANCE_NAME \
--assign-ip
Mostra tutti gli indirizzi autorizzati esistenti descrivendo l'istanza:
gcloud sql instances describe INSTANCE_NAME
Cerca le voci authorizedNetwork in ipConfiguration e prendi nota degli indirizzi autorizzati che vuoi conservare.
Aggiorna l'elenco di reti autorizzate, inclusi tutti gli indirizzi che vuoi includere.
gcloud sql instances patch INSTANCE_NAME \
--authorized-networks=IP_ADDR1 ,IP_ADDR2 ...
Utilizza la notazione CIDR .
Conferma le modifiche:
gcloud sql instances describe INSTANCE_NAME
Quando rimuovi un indirizzo autorizzato, le connessioni esistenti
da quell'indirizzo non vengono disconnesse. Se vuoi disconnettere le connessioni esistenti,
riavvia l'istanza.
REST v1
Mostra tutti gli indirizzi autorizzati esistenti descrivendo l'istanza:
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
project-id : l'ID del progetto
instance-id : l'ID istanza
machine-type Il tipo di macchina dell'istanza
zone La zona dell'istanza
Metodo e URL HTTP:
GET https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id ?fields=settings
Per inviare la richiesta, espandi una delle seguenti opzioni:
curl (Linux, macOS o Cloud Shell)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso all'
interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
, oppure utilizzando
Cloud Shell ,
che esegue automaticamente l'accesso all'interfaccia a riga di comando di gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ " https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id ?fields=settings"
PowerShell (Windows)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso all'
interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
, oppure utilizzando
Cloud Shell ,
che esegue automaticamente l'accesso all'interfaccia a riga di comando di gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method GET ` -Headers $headers ` -Uri " https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id ?fields=settings" | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
Risposta
{
"settings":
{
"authorizedGaeApplications": [],
"tier": "machine-type ",
"kind": "sql#settings",
"availabilityType": "REGIONAL",
"pricingPlan": "PER_USE",
"replicationType": "SYNCHRONOUS",
"activationPolicy": "ALWAYS",
"ipConfiguration":
{
"privateNetwork": "projects/project-id /global/networks/default",
"authorizedNetworks": [],
"ipv4Enabled": true
},
"locationPreference":
{
"zone": "zone ",
"kind": "sql#locationPreference"
},
"dataDiskType": "PD_SSD",
"maintenanceWindow":
{
"kind": "sql#maintenanceWindow",
"hour": 0,
"day": 0
},
"backupConfiguration":
{
"startTime": "03:00",
"kind": "sql#backupConfiguration",
"enabled": true,
"binaryLogEnabled": true
},
"settingsVersion": "54",
"storageAutoResizeLimit": "0",
"storageAutoResize": true,
"dataDiskSizeGb": "10"
}
}
Aggiorna l'istanza, inclusi tutti gli indirizzi che vuoi impostare sull'istanza:
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
project-id : l'ID del progetto
instance-id : l'ID istanza
network_range_1 Un indirizzo o un intervallo IP autorizzato
network_range_2 un altro indirizzo o intervallo IP autorizzato
Metodo e URL HTTP:
PATCH https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id
Corpo JSON richiesta:
{
"settings":
{
"ipConfiguration":
{
"authorizedNetworks":
[{"value": "network_range_1 "}, {"value": "network_range_2 "}]
}
}
}
Per inviare la richiesta, espandi una delle seguenti opzioni:
curl (Linux, macOS o Cloud Shell)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso all'
interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
, oppure utilizzando
Cloud Shell ,
che esegue automaticamente l'accesso all'interfaccia a riga di comando di gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Salva il corpo della richiesta in un file denominato request.json
ed esegui il seguente comando:
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ -d @request.json \ "https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id "
PowerShell (Windows)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso all'
interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
, oppure utilizzando
Cloud Shell ,
che esegue automaticamente l'accesso all'interfaccia a riga di comando di gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Salva il corpo della richiesta in un file denominato request.json
ed esegui il seguente comando:
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method PATCH ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -InFile request.json ` -Uri "https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id " | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
Risposta
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id ",
"status": "PENDING",
"user": "user@example.com",
"insertTime": "2020-01-21T22:43:37.981Z",
"operationType": "UPDATE",
"name": "operation-id ",
"targetId": "instance-id ",
"selfLink": "https://sqladmin.googleapis.com/v1/projects/project-id /operations/operation-id ",
"targetProject": "project-id "
}
Utilizza la notazione CIDR .
Conferma le modifiche:
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
project-id : l'ID del progetto
instance-id : l'ID istanza
ip-address1 : il modulo CIDR del primo indirizzo IP.
ip-address-name1 : il nome del primo indirizzo IP.
ip-address2 : il formato CIDR del secondo indirizzo IP.
ip-address-name2 : il nome del secondo indirizzo IP.
machine-type Il tipo di macchina dell'istanza
zone La zona dell'istanza
Metodo e URL HTTP:
GET https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id ?fields=settings
Per inviare la richiesta, espandi una delle seguenti opzioni:
curl (Linux, macOS o Cloud Shell)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso all'
interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
, oppure utilizzando
Cloud Shell ,
che esegue automaticamente l'accesso all'interfaccia a riga di comando di gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ " https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id ?fields=settings"
PowerShell (Windows)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso all'
interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
, oppure utilizzando
Cloud Shell ,
che esegue automaticamente l'accesso all'interfaccia a riga di comando di gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method GET ` -Headers $headers ` -Uri " https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id ?fields=settings" | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
Risposta
{
"settings":
{
"authorizedGaeApplications": [],
"tier": "machine-type 4",
"kind": "sql#settings",
"availabilityType": "REGIONAL",
"pricingPlan": "PER_USE",
"replicationType": "SYNCHRONOUS",
"activationPolicy": "ALWAYS",
"ipConfiguration":
{
"privateNetwork": "projects/project-id /global/networks/default",
"authorizedNetworks":
[
{
"value": "ip-address1 ",
"name": "ip-address-name1 ",
"kind": "sql#aclEntry"
},
{
"value": "ip-address2 ",
"name": "ip-address-name2 ",
"kind": "sql#aclEntry"
}
],
"ipv4Enabled": true
},
"locationPreference":
{
"zone": "zone ",
"kind": "sql#locationPreference"
},
"dataDiskType": "PD_SSD",
"maintenanceWindow":
{
"kind": "sql#maintenanceWindow",
"hour": 0,
"day": 0
},
"backupConfiguration":
{
"startTime": "03:00",
"kind": "sql#backupConfiguration",
"enabled": true,
"binaryLogEnabled": true
},
"settingsVersion": "54",
"storageAutoResizeLimit": "0",
"storageAutoResize": true,
"dataDiskSizeGb": "10"
}
}
Quando rimuovi un indirizzo autorizzato, le connessioni esistenti
da quell'indirizzo non vengono disconnesse. Se vuoi disconnettere le connessioni esistenti,
riavvia l'istanza.
Per abilitare l'IP pubblico e aggiungere un indirizzo o un intervallo di indirizzi autorizzati, utilizza una risorsa Terraform .
Applica le modifiche
Per applicare la configurazione Terraform in un progetto Google Cloud, completa i passaggi nelle sezioni seguenti.
Preparare Cloud Shell
Avvia Cloud Shell .
Imposta il progetto Google Cloud predefinito a cui vuoi applicare le tue configurazioni Terraform.
Questo comando deve essere eseguito una sola volta per progetto e può essere eseguito 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 Terraform deve avere una propria directory (nota anche come modulo root ).
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 viene denominato main.tf
il file.
mkdir DIRECTORY && cd DIRECTORY && touch main.tf
Se segui un tutorial, puoi copiare il codice campione in ogni sezione o passaggio.
Copia il codice campione nella proprietà main.tf
appena creata.
In via facoltativa, copia il codice da GitHub. Questo metodo è consigliato
quando lo snippet Terraform fa parte di una soluzione end-to-end.
Esamina e modifica i parametri di esempio da applicare al tuo ambiente.
Salva le modifiche.
Inizializza Terraform. Dovrai eseguire questa operazione una sola volta per directory.
terraform init
Facoltativamente, per utilizzare la versione più recente del provider Google, includi l'opzione -upgrade
:
terraform init -upgrade
Applica le modifiche
Rivedi la configurazione e verifica che le risorse che Terraform creerà o aggiorni corrispondano alle tue aspettative:
terraform plan
Apporta le modifiche necessarie alla configurazione.
Applica la configurazione Terraform eseguendo il comando seguente e inserendo yes
al prompt:
terraform apply
Attendi finché Terraform non visualizza il messaggio "Applica completato".
Apri il progetto Google Cloud per visualizzare i risultati. Nella console Google Cloud, vai alle tue risorse nell'interfaccia utente per assicurarti che Terraform le abbia create o aggiornate.
Nota: gli esempi di Terraform in genere presuppongono che le API richieste siano abilitate nel tuo progetto Google Cloud.
Elimina le modifiche
Per eliminare le modifiche:
Per disabilitare la protezione dall'eliminazione, imposta l'argomento deletion_protection
nel file di configurazione Terraform su false
.
deletion_protection = "false"
Applica la configurazione Terraform aggiornata eseguendo il comando seguente e inserendo yes
quando richiesto:
terraform apply
Rimuovi le risorse applicate in precedenza con la configurazione Terraform eseguendo il comando seguente e inserendo yes
quando richiesto:
terraform destroy
REST v1beta4
Mostra tutti gli indirizzi autorizzati esistenti descrivendo l'istanza:
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
project-id : l'ID del progetto
instance-id : l'ID istanza
machine-type Il tipo di macchina dell'istanza
zone La zona dell'istanza
Metodo e URL HTTP:
GET https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id ?fields=settings
Per inviare la richiesta, espandi una delle seguenti opzioni:
curl (Linux, macOS o Cloud Shell)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso all'
interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
, oppure utilizzando
Cloud Shell ,
che esegue automaticamente l'accesso all'interfaccia a riga di comando di gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ " https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id ?fields=settings"
PowerShell (Windows)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso all'
interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
, oppure utilizzando
Cloud Shell ,
che esegue automaticamente l'accesso all'interfaccia a riga di comando di gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method GET ` -Headers $headers ` -Uri " https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id ?fields=settings" | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
Risposta
{
"settings":
{
"authorizedGaeApplications": [],
"tier": "machine-type ",
"kind": "sql#settings",
"availabilityType": "REGIONAL",
"pricingPlan": "PER_USE",
"replicationType": "SYNCHRONOUS",
"activationPolicy": "ALWAYS",
"ipConfiguration":
{
"privateNetwork": "projects/project-id /global/networks/default",
"authorizedNetworks": [],
"ipv4Enabled": true
},
"locationPreference":
{
"zone": "zone ",
"kind": "sql#locationPreference"
},
"dataDiskType": "PD_SSD",
"maintenanceWindow":
{
"kind": "sql#maintenanceWindow",
"hour": 0,
"day": 0
},
"backupConfiguration":
{
"startTime": "03:00",
"kind": "sql#backupConfiguration",
"enabled": true,
"binaryLogEnabled": true
},
"settingsVersion": "54",
"storageAutoResizeLimit": "0",
"storageAutoResize": true,
"dataDiskSizeGb": "10"
}
}
Aggiorna l'istanza, inclusi tutti gli indirizzi che vuoi impostare sull'istanza:
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
project-id : l'ID del progetto
instance-id : l'ID istanza
network_range_1 Un indirizzo o un intervallo IP autorizzato
network_range_2 un altro indirizzo o intervallo IP autorizzato
Metodo e URL HTTP:
PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id
Corpo JSON richiesta:
{
"settings":
{
"ipConfiguration":
{
"authorizedNetworks":
[{"value": "network_range_1 "}, {"value": "network_range_2 "}]
}
}
}
Per inviare la richiesta, espandi una delle seguenti opzioni:
curl (Linux, macOS o Cloud Shell)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso all'
interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
, oppure utilizzando
Cloud Shell ,
che esegue automaticamente l'accesso all'interfaccia a riga di comando di gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Salva il corpo della richiesta in un file denominato request.json
ed esegui il seguente comando:
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ -d @request.json \ "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id "
PowerShell (Windows)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso all'
interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
, oppure utilizzando
Cloud Shell ,
che esegue automaticamente l'accesso all'interfaccia a riga di comando di gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Salva il corpo della richiesta in un file denominato request.json
ed esegui il seguente comando:
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method PATCH ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -InFile request.json ` -Uri "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id " | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
Risposta
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id ",
"status": "PENDING",
"user": "user@example.com",
"insertTime": "2020-01-21T22:43:37.981Z",
"operationType": "UPDATE",
"name": "operation-id ",
"targetId": "instance-id ",
"selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /operations/operation-id ",
"targetProject": "project-id "
}
Utilizza la notazione CIDR .
Conferma le modifiche:
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
project-id : l'ID del progetto
instance-id : l'ID istanza
ip-address1 : il modulo CIDR del primo indirizzo IP.
ip-address-name1 : il nome del primo indirizzo IP.
ip-address2 : il formato CIDR del secondo indirizzo IP.
ip-address-name2 : il nome del secondo indirizzo IP.
machine-type Il tipo di macchina dell'istanza
zone La zona dell'istanza
Metodo e URL HTTP:
GET https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id ?fields=settings
Per inviare la richiesta, espandi una delle seguenti opzioni:
curl (Linux, macOS o Cloud Shell)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso all'
interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
, oppure utilizzando
Cloud Shell ,
che esegue automaticamente l'accesso all'interfaccia a riga di comando di gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ " https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id ?fields=settings"
PowerShell (Windows)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso all'
interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
, oppure utilizzando
Cloud Shell ,
che esegue automaticamente l'accesso all'interfaccia a riga di comando di gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method GET ` -Headers $headers ` -Uri " https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id ?fields=settings" | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
Risposta
{
"settings":
{
"authorizedGaeApplications": [],
"tier": "machine-type 4",
"kind": "sql#settings",
"availabilityType": "REGIONAL",
"pricingPlan": "PER_USE",
"replicationType": "SYNCHRONOUS",
"activationPolicy": "ALWAYS",
"ipConfiguration":
{
"privateNetwork": "projects/project-id /global/networks/default",
"authorizedNetworks":
[
{
"value": "ip-address1 ",
"name": "ip-address-name1 ",
"kind": "sql#aclEntry"
},
{
"value": "ip-address2 ",
"name": "ip-address-name2 ",
"kind": "sql#aclEntry"
}
],
"ipv4Enabled": true
},
"locationPreference":
{
"zone": "zone ",
"kind": "sql#locationPreference"
},
"dataDiskType": "PD_SSD",
"maintenanceWindow":
{
"kind": "sql#maintenanceWindow",
"hour": 0,
"day": 0
},
"backupConfiguration":
{
"startTime": "03:00",
"kind": "sql#backupConfiguration",
"enabled": true,
"binaryLogEnabled": true
},
"settingsVersion": "54",
"storageAutoResizeLimit": "0",
"storageAutoResize": true,
"dataDiskSizeGb": "10"
}
}
Quando rimuovi un indirizzo autorizzato, le connessioni esistenti
da quell'indirizzo non vengono disconnesse. Se vuoi disconnettere le connessioni esistenti,
riavvia l'istanza.
Rimuovere un indirizzo o un intervallo di indirizzi autorizzati
Per rimuovere un indirizzo autorizzato:
Console
Nella console Google Cloud, vai alla pagina Istanze Cloud SQL .
Vai alle istanze Cloud SQL
Per aprire la pagina Panoramica di un'istanza, fai clic sul nome dell'istanza.
Seleziona Connessioni dal menu di navigazione SQL.
Fai clic sull'icona Elimina in corrispondenza dell'indirizzo che vuoi eliminare.
Fai clic su Salva per aggiornare l'istanza.
gcloud
Mostra tutti gli indirizzi autorizzati esistenti descrivendo l'istanza:
gcloud sql instances describe INSTANCE_NAME
Cerca le voci authorizedNetwork in ipConfiguration e prendi nota degli indirizzi autorizzati che vuoi conservare.
Aggiorna l'elenco di reti autorizzate, rimuovendo eventuali indirizzi da rimuovere.
gcloud sql instances patch INSTANCE_NAME \
--authorized-networks=IP_ADDR1 ,IP_ADDR2 ...
Conferma le modifiche:
gcloud sql instances describe INSTANCE_NAME
REST v1
Mostra tutti gli indirizzi autorizzati esistenti descrivendo l'istanza:
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
project-id : l'ID del progetto
instance-id : l'ID istanza
ip-address1 : il modulo CIDR del primo indirizzo IP.
ip-address-name1 : il nome del primo indirizzo IP.
ip-address2 : il formato CIDR del secondo indirizzo IP.
ip-address-name2 : il nome del secondo indirizzo IP.
machine-type Il tipo di macchina dell'istanza
zone La zona dell'istanza
Metodo e URL HTTP:
GET https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id ?fields=settings
Per inviare la richiesta, espandi una delle seguenti opzioni:
curl (Linux, macOS o Cloud Shell)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso all'
interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
, oppure utilizzando
Cloud Shell ,
che esegue automaticamente l'accesso all'interfaccia a riga di comando di gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ " https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id ?fields=settings"
PowerShell (Windows)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso all'
interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
, oppure utilizzando
Cloud Shell ,
che esegue automaticamente l'accesso all'interfaccia a riga di comando di gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method GET ` -Headers $headers ` -Uri " https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id ?fields=settings" | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
Risposta
{
"settings":
{
"authorizedGaeApplications": [],
"tier": "machine-type 4",
"kind": "sql#settings",
"availabilityType": "REGIONAL",
"pricingPlan": "PER_USE",
"replicationType": "SYNCHRONOUS",
"activationPolicy": "ALWAYS",
"ipConfiguration":
{
"privateNetwork": "projects/project-id /global/networks/default",
"authorizedNetworks":
[
{
"value": "ip-address1 ",
"name": "ip-address-name1 ",
"kind": "sql#aclEntry"
},
{
"value": "ip-address2 ",
"name": "ip-address-name2 ",
"kind": "sql#aclEntry"
}
],
"ipv4Enabled": true
},
"locationPreference":
{
"zone": "zone ",
"kind": "sql#locationPreference"
},
"dataDiskType": "PD_SSD",
"maintenanceWindow":
{
"kind": "sql#maintenanceWindow",
"hour": 0,
"day": 0
},
"backupConfiguration":
{
"startTime": "03:00",
"kind": "sql#backupConfiguration",
"enabled": true,
"binaryLogEnabled": true
},
"settingsVersion": "54",
"storageAutoResizeLimit": "0",
"storageAutoResize": true,
"dataDiskSizeGb": "10"
}
}
Aggiorna l'istanza includendo tutti gli indirizzi che vuoi conservare e rimuovendo eventuali indirizzi da rimuovere:
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
project-id : l'ID del progetto
instance-id : l'ID istanza
network_range_1 L'indirizzo IP o l'intervallo di rete autorizzati da rimuovere
Metodo e URL HTTP:
PATCH https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id
Corpo JSON richiesta:
{
"settings":
{
"ipConfiguration":
{
"authorizedNetworks":
[{"value": "network_range_1 "}]
}
}
}
Per inviare la richiesta, espandi una delle seguenti opzioni:
curl (Linux, macOS o Cloud Shell)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso all'
interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
, oppure utilizzando
Cloud Shell ,
che esegue automaticamente l'accesso all'interfaccia a riga di comando di gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Salva il corpo della richiesta in un file denominato request.json
ed esegui il seguente comando:
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ -d @request.json \ "https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id "
PowerShell (Windows)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso all'
interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
, oppure utilizzando
Cloud Shell ,
che esegue automaticamente l'accesso all'interfaccia a riga di comando di gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Salva il corpo della richiesta in un file denominato request.json
ed esegui il seguente comando:
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method PATCH ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -InFile request.json ` -Uri "https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id " | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
Risposta
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id ",
"status": "PENDING",
"user": "user@example.com",
"insertTime": "2020-01-21T22:43:37.981Z",
"operationType": "UPDATE",
"name": "operation-id ",
"targetId": "instance-id ",
"selfLink": "https://sqladmin.googleapis.com/v1/projects/project-id /operations/operation-id ",
"targetProject": "project-id "
}
Conferma le modifiche:
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
project-id : l'ID del progetto
instance-id : l'ID istanza
ip-address : il modulo CIDR dell'indirizzo IP.
ip-address-name : il nome dell'indirizzo IP.
machine-type Il tipo di macchina dell'istanza
zone La zona dell'istanza
Metodo e URL HTTP:
GET https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id ?fields=settings
Per inviare la richiesta, espandi una delle seguenti opzioni:
curl (Linux, macOS o Cloud Shell)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso all'
interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
, oppure utilizzando
Cloud Shell ,
che esegue automaticamente l'accesso all'interfaccia a riga di comando di gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ " https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id ?fields=settings"
PowerShell (Windows)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso all'
interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
, oppure utilizzando
Cloud Shell ,
che esegue automaticamente l'accesso all'interfaccia a riga di comando di gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method GET ` -Headers $headers ` -Uri " https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id ?fields=settings" | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
Risposta
{
"settings":
{
"authorizedGaeApplications": [],
"tier": "machine-type ",
"kind": "sql#settings",
"availabilityType": "REGIONAL",
"pricingPlan": "PER_USE",
"replicationType": "SYNCHRONOUS",
"activationPolicy": "ALWAYS",
"ipConfiguration":
{
"privateNetwork": "projects/project-id /global/networks/default",
"authorizedNetworks":
[
{
"value": "ip-address ",
"name": "ip-address-name ",
"kind": "sql#aclEntry"
}
],
"ipv4Enabled": true
},
"locationPreference":
{
"zone": "zone ",
"kind": "sql#locationPreference"
},
"dataDiskType": "PD_SSD",
"maintenanceWindow":
{
"kind": "sql#maintenanceWindow",
"hour": 0,
"day": 0
},
"backupConfiguration":
{
"startTime": "03:00",
"kind": "sql#backupConfiguration",
"enabled": true,
"binaryLogEnabled": true
},
"settingsVersion": "54",
"storageAutoResizeLimit": "0",
"storageAutoResize": true,
"dataDiskSizeGb": "10"
}
}
REST v1beta4
Mostra tutti gli indirizzi autorizzati esistenti descrivendo l'istanza:
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
project-id : l'ID del progetto
instance-id : l'ID istanza
ip-address1 : il modulo CIDR del primo indirizzo IP.
ip-address-name1 : il nome del primo indirizzo IP.
ip-address2 : il formato CIDR del secondo indirizzo IP.
ip-address-name2 : il nome del secondo indirizzo IP.
machine-type Il tipo di macchina dell'istanza
zone La zona dell'istanza
Metodo e URL HTTP:
GET https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id ?fields=settings
Per inviare la richiesta, espandi una delle seguenti opzioni:
curl (Linux, macOS o Cloud Shell)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso all'
interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
, oppure utilizzando
Cloud Shell ,
che esegue automaticamente l'accesso all'interfaccia a riga di comando di gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ " https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id ?fields=settings"
PowerShell (Windows)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso all'
interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
, oppure utilizzando
Cloud Shell ,
che esegue automaticamente l'accesso all'interfaccia a riga di comando di gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method GET ` -Headers $headers ` -Uri " https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id ?fields=settings" | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
Risposta
{
"settings":
{
"authorizedGaeApplications": [],
"tier": "machine-type 4",
"kind": "sql#settings",
"availabilityType": "REGIONAL",
"pricingPlan": "PER_USE",
"replicationType": "SYNCHRONOUS",
"activationPolicy": "ALWAYS",
"ipConfiguration":
{
"privateNetwork": "projects/project-id /global/networks/default",
"authorizedNetworks":
[
{
"value": "ip-address1 ",
"name": "ip-address-name1 ",
"kind": "sql#aclEntry"
},
{
"value": "ip-address2 ",
"name": "ip-address-name2 ",
"kind": "sql#aclEntry"
}
],
"ipv4Enabled": true
},
"locationPreference":
{
"zone": "zone ",
"kind": "sql#locationPreference"
},
"dataDiskType": "PD_SSD",
"maintenanceWindow":
{
"kind": "sql#maintenanceWindow",
"hour": 0,
"day": 0
},
"backupConfiguration":
{
"startTime": "03:00",
"kind": "sql#backupConfiguration",
"enabled": true,
"binaryLogEnabled": true
},
"settingsVersion": "54",
"storageAutoResizeLimit": "0",
"storageAutoResize": true,
"dataDiskSizeGb": "10"
}
}
Aggiorna l'istanza includendo tutti gli indirizzi che vuoi conservare e rimuovendo eventuali indirizzi da rimuovere:
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
project-id : l'ID del progetto
instance-id : l'ID istanza
network_range_1 L'indirizzo IP o l'intervallo di rete autorizzati da rimuovere
Metodo e URL HTTP:
PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id
Corpo JSON richiesta:
{
"settings":
{
"ipConfiguration":
{
"authorizedNetworks":
[{"value": "network_range_1 "}]
}
}
}
Per inviare la richiesta, espandi una delle seguenti opzioni:
curl (Linux, macOS o Cloud Shell)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso all'
interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
, oppure utilizzando
Cloud Shell ,
che esegue automaticamente l'accesso all'interfaccia a riga di comando di gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Salva il corpo della richiesta in un file denominato request.json
ed esegui il seguente comando:
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ -d @request.json \ "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id "
PowerShell (Windows)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso all'
interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
, oppure utilizzando
Cloud Shell ,
che esegue automaticamente l'accesso all'interfaccia a riga di comando di gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Salva il corpo della richiesta in un file denominato request.json
ed esegui il seguente comando:
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method PATCH ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -InFile request.json ` -Uri "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id " | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
Risposta
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id ",
"status": "PENDING",
"user": "user@example.com",
"insertTime": "2020-01-21T22:43:37.981Z",
"operationType": "UPDATE",
"name": "operation-id ",
"targetId": "instance-id ",
"selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /operations/operation-id ",
"targetProject": "project-id "
}
Conferma le modifiche:
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
project-id : l'ID del progetto
instance-id : l'ID istanza
ip-address : il modulo CIDR dell'indirizzo IP.
ip-address-name : il nome dell'indirizzo IP.
machine-type Il tipo di macchina dell'istanza
zone La zona dell'istanza
Metodo e URL HTTP:
GET https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id ?fields=settings
Per inviare la richiesta, espandi una delle seguenti opzioni:
curl (Linux, macOS o Cloud Shell)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso all'
interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
, oppure utilizzando
Cloud Shell ,
che esegue automaticamente l'accesso all'interfaccia a riga di comando di gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ " https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id ?fields=settings"
PowerShell (Windows)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso all'
interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
, oppure utilizzando
Cloud Shell ,
che esegue automaticamente l'accesso all'interfaccia a riga di comando di gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method GET ` -Headers $headers ` -Uri " https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id ?fields=settings" | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
Risposta
{
"settings":
{
"authorizedGaeApplications": [],
"tier": "machine-type ",
"kind": "sql#settings",
"availabilityType": "REGIONAL",
"pricingPlan": "PER_USE",
"replicationType": "SYNCHRONOUS",
"activationPolicy": "ALWAYS",
"ipConfiguration":
{
"privateNetwork": "projects/project-id /global/networks/default",
"authorizedNetworks":
[
{
"value": "ip-address ",
"name": "ip-address-name ",
"kind": "sql#aclEntry"
}
],
"ipv4Enabled": true
},
"locationPreference":
{
"zone": "zone ",
"kind": "sql#locationPreference"
},
"dataDiskType": "PD_SSD",
"maintenanceWindow":
{
"kind": "sql#maintenanceWindow",
"hour": 0,
"day": 0
},
"backupConfiguration":
{
"startTime": "03:00",
"kind": "sql#backupConfiguration",
"enabled": true,
"binaryLogEnabled": true
},
"settingsVersion": "54",
"storageAutoResizeLimit": "0",
"storageAutoResize": true,
"dataDiskSizeGb": "10"
}
}
Quando rimuovi un indirizzo autorizzato, le connessioni esistenti non vengono scollegate. Se vuoi disconnettere le connessioni esistenti,
riavvia l'istanza.
Configura un'istanza per rifiutare tutte le connessioni IP pubbliche
Per configurare un'istanza in modo da rifiutare tutte le connessioni IP pubbliche:
Console
Nella console Google Cloud, vai alla pagina Istanze Cloud SQL .
Vai alle istanze Cloud SQL
Per aprire la pagina Panoramica di un'istanza, fai clic sul nome dell'istanza.
Seleziona Connessioni dal menu di navigazione SQL.
Fai clic sull'icona Elimina per tutti gli indirizzi autorizzati.
Fai clic su Salva per aggiornare l'istanza.
gcloud
Cancella l'elenco di indirizzi autorizzati:
gcloud sql instances patch INSTANCE_NAME \
--clear-authorized-networks
Conferma le modifiche:
gcloud sql instances describe INSTANCE_NAME
REST v1
Mostra tutti gli indirizzi autorizzati esistenti descrivendo l'istanza:
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
project-id : l'ID del progetto
instance-id : l'ID istanza
ip-address1 : il modulo CIDR del primo indirizzo IP.
ip-address-name1 : il nome del primo indirizzo IP.
ip-address2 : il formato CIDR del secondo indirizzo IP.
ip-address-name2 : il nome del secondo indirizzo IP.
machine-type Il tipo di macchina dell'istanza
zone La zona dell'istanza
Metodo e URL HTTP:
GET https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id ?fields=settings
Per inviare la richiesta, espandi una delle seguenti opzioni:
curl (Linux, macOS o Cloud Shell)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso all'
interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
, oppure utilizzando
Cloud Shell ,
che esegue automaticamente l'accesso all'interfaccia a riga di comando di gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ " https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id ?fields=settings"
PowerShell (Windows)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso all'
interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
, oppure utilizzando
Cloud Shell ,
che esegue automaticamente l'accesso all'interfaccia a riga di comando di gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method GET ` -Headers $headers ` -Uri " https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id ?fields=settings" | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
Risposta
{
"settings":
{
"authorizedGaeApplications": [],
"tier": "machine-type 4",
"kind": "sql#settings",
"availabilityType": "REGIONAL",
"pricingPlan": "PER_USE",
"replicationType": "SYNCHRONOUS",
"activationPolicy": "ALWAYS",
"ipConfiguration":
{
"privateNetwork": "projects/project-id /global/networks/default",
"authorizedNetworks":
[
{
"value": "ip-address1 ",
"name": "ip-address-name1 ",
"kind": "sql#aclEntry"
},
{
"value": "ip-address2 ",
"name": "ip-address-name2 ",
"kind": "sql#aclEntry"
}
],
"ipv4Enabled": true
},
"locationPreference":
{
"zone": "zone ",
"kind": "sql#locationPreference"
},
"dataDiskType": "PD_SSD",
"maintenanceWindow":
{
"kind": "sql#maintenanceWindow",
"hour": 0,
"day": 0
},
"backupConfiguration":
{
"startTime": "03:00",
"kind": "sql#backupConfiguration",
"enabled": true,
"binaryLogEnabled": true
},
"settingsVersion": "54",
"storageAutoResizeLimit": "0",
"storageAutoResize": true,
"dataDiskSizeGb": "10"
}
}
Aggiorna l'istanza con un elenco di indirizzi vuoto:
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
project-id : l'ID del progetto
instance-id : l'ID istanza
Metodo e URL HTTP:
PATCH https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id
Corpo JSON richiesta:
{
"settings":
{
"ipConfiguration":
{
"authorizedNetworks": []
}
}
}
Per inviare la richiesta, espandi una delle seguenti opzioni:
curl (Linux, macOS o Cloud Shell)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso all'
interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
, oppure utilizzando
Cloud Shell ,
che esegue automaticamente l'accesso all'interfaccia a riga di comando di gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Salva il corpo della richiesta in un file denominato request.json
ed esegui il seguente comando:
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ -d @request.json \ "https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id "
PowerShell (Windows)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso all'
interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
, oppure utilizzando
Cloud Shell ,
che esegue automaticamente l'accesso all'interfaccia a riga di comando di gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Salva il corpo della richiesta in un file denominato request.json
ed esegui il seguente comando:
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method PATCH ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -InFile request.json ` -Uri "https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id " | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
Risposta
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id ",
"status": "PENDING",
"user": "user@example.com",
"insertTime": "2020-01-21T22:43:37.981Z",
"operationType": "UPDATE",
"name": "operation-id ",
"targetId": "instance-id ",
"selfLink": "https://sqladmin.googleapis.com/v1/projects/project-id /operations/operation-id ",
"targetProject": "project-id "
}
Conferma le modifiche:
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
project-id : l'ID del progetto
instance-id : l'ID istanza
machine-type Il tipo di macchina dell'istanza
zone La zona dell'istanza
Metodo e URL HTTP:
GET https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id ?fields=settings
Per inviare la richiesta, espandi una delle seguenti opzioni:
curl (Linux, macOS o Cloud Shell)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso all'
interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
, oppure utilizzando
Cloud Shell ,
che esegue automaticamente l'accesso all'interfaccia a riga di comando di gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ " https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id ?fields=settings"
PowerShell (Windows)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso all'
interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
, oppure utilizzando
Cloud Shell ,
che esegue automaticamente l'accesso all'interfaccia a riga di comando di gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method GET ` -Headers $headers ` -Uri " https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id ?fields=settings" | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
Risposta
{
"settings":
{
"authorizedGaeApplications": [],
"tier": "machine-type ",
"kind": "sql#settings",
"availabilityType": "REGIONAL",
"pricingPlan": "PER_USE",
"replicationType": "SYNCHRONOUS",
"activationPolicy": "ALWAYS",
"ipConfiguration":
{
"privateNetwork": "projects/project-id /global/networks/default",
"authorizedNetworks": [],
"ipv4Enabled": true
},
"locationPreference":
{
"zone": "zone ",
"kind": "sql#locationPreference"
},
"dataDiskType": "PD_SSD",
"maintenanceWindow":
{
"kind": "sql#maintenanceWindow",
"hour": 0,
"day": 0
},
"backupConfiguration":
{
"startTime": "03:00",
"kind": "sql#backupConfiguration",
"enabled": true,
"binaryLogEnabled": true
},
"settingsVersion": "54",
"storageAutoResizeLimit": "0",
"storageAutoResize": true,
"dataDiskSizeGb": "10"
}
}
REST v1beta4
Mostra tutti gli indirizzi autorizzati esistenti descrivendo l'istanza:
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
project-id : l'ID del progetto
instance-id : l'ID istanza
ip-address1 : il modulo CIDR del primo indirizzo IP.
ip-address-name1 : il nome del primo indirizzo IP.
ip-address2 : il formato CIDR del secondo indirizzo IP.
ip-address-name2 : il nome del secondo indirizzo IP.
machine-type Il tipo di macchina dell'istanza
zone La zona dell'istanza
Metodo e URL HTTP:
GET https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id ?fields=settings
Per inviare la richiesta, espandi una delle seguenti opzioni:
curl (Linux, macOS o Cloud Shell)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso all'
interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
, oppure utilizzando
Cloud Shell ,
che esegue automaticamente l'accesso all'interfaccia a riga di comando di gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ " https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id ?fields=settings"
PowerShell (Windows)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso all'
interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
, oppure utilizzando
Cloud Shell ,
che esegue automaticamente l'accesso all'interfaccia a riga di comando di gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method GET ` -Headers $headers ` -Uri " https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id ?fields=settings" | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
Risposta
{
"settings":
{
"authorizedGaeApplications": [],
"tier": "machine-type 4",
"kind": "sql#settings",
"availabilityType": "REGIONAL",
"pricingPlan": "PER_USE",
"replicationType": "SYNCHRONOUS",
"activationPolicy": "ALWAYS",
"ipConfiguration":
{
"privateNetwork": "projects/project-id /global/networks/default",
"authorizedNetworks":
[
{
"value": "ip-address1 ",
"name": "ip-address-name1 ",
"kind": "sql#aclEntry"
},
{
"value": "ip-address2 ",
"name": "ip-address-name2 ",
"kind": "sql#aclEntry"
}
],
"ipv4Enabled": true
},
"locationPreference":
{
"zone": "zone ",
"kind": "sql#locationPreference"
},
"dataDiskType": "PD_SSD",
"maintenanceWindow":
{
"kind": "sql#maintenanceWindow",
"hour": 0,
"day": 0
},
"backupConfiguration":
{
"startTime": "03:00",
"kind": "sql#backupConfiguration",
"enabled": true,
"binaryLogEnabled": true
},
"settingsVersion": "54",
"storageAutoResizeLimit": "0",
"storageAutoResize": true,
"dataDiskSizeGb": "10"
}
}
Aggiorna l'istanza con un elenco di indirizzi vuoto:
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
project-id : l'ID del progetto
instance-id : l'ID istanza
Metodo e URL HTTP:
PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id
Corpo JSON richiesta:
{
"settings":
{
"ipConfiguration":
{
"authorizedNetworks": []
}
}
}
Per inviare la richiesta, espandi una delle seguenti opzioni:
curl (Linux, macOS o Cloud Shell)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso all'
interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
, oppure utilizzando
Cloud Shell ,
che esegue automaticamente l'accesso all'interfaccia a riga di comando di gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Salva il corpo della richiesta in un file denominato request.json
ed esegui il seguente comando:
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ -d @request.json \ "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id "
PowerShell (Windows)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso all'
interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
, oppure utilizzando
Cloud Shell ,
che esegue automaticamente l'accesso all'interfaccia a riga di comando di gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Salva il corpo della richiesta in un file denominato request.json
ed esegui il seguente comando:
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method PATCH ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -InFile request.json ` -Uri "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id " | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
Risposta
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id ",
"status": "PENDING",
"user": "user@example.com",
"insertTime": "2020-01-21T22:43:37.981Z",
"operationType": "UPDATE",
"name": "operation-id ",
"targetId": "instance-id ",
"selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /operations/operation-id ",
"targetProject": "project-id "
}
Conferma le modifiche:
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
project-id : l'ID del progetto
instance-id : l'ID istanza
machine-type Il tipo di macchina dell'istanza
zone La zona dell'istanza
Metodo e URL HTTP:
GET https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id ?fields=settings
Per inviare la richiesta, espandi una delle seguenti opzioni:
curl (Linux, macOS o Cloud Shell)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso all'
interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
, oppure utilizzando
Cloud Shell ,
che esegue automaticamente l'accesso all'interfaccia a riga di comando di gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ " https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id ?fields=settings"
PowerShell (Windows)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso all'
interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
, oppure utilizzando
Cloud Shell ,
che esegue automaticamente l'accesso all'interfaccia a riga di comando di gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method GET ` -Headers $headers ` -Uri " https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id ?fields=settings" | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
Risposta
{
"settings":
{
"authorizedGaeApplications": [],
"tier": "machine-type ",
"kind": "sql#settings",
"availabilityType": "REGIONAL",
"pricingPlan": "PER_USE",
"replicationType": "SYNCHRONOUS",
"activationPolicy": "ALWAYS",
"ipConfiguration":
{
"privateNetwork": "projects/project-id /global/networks/default",
"authorizedNetworks": [],
"ipv4Enabled": true
},
"locationPreference":
{
"zone": "zone ",
"kind": "sql#locationPreference"
},
"dataDiskType": "PD_SSD",
"maintenanceWindow":
{
"kind": "sql#maintenanceWindow",
"hour": 0,
"day": 0
},
"backupConfiguration":
{
"startTime": "03:00",
"kind": "sql#backupConfiguration",
"enabled": true,
"binaryLogEnabled": true
},
"settingsVersion": "54",
"storageAutoResizeLimit": "0",
"storageAutoResize": true,
"dataDiskSizeGb": "10"
}
}
Quando rimuovi un indirizzo autorizzato, le connessioni esistenti non vengono scollegate. Se vuoi disconnettere le connessioni esistenti,
riavvia l'istanza.
Disabilitare l'IP pubblico
Puoi disabilitare l'IP pubblico, ma solo se la tua istanza è configurata anche per l'utilizzo dell'IP privato.
Per abilitare l'IP privato, consulta Configurazione di un'istanza esistente in modo che utilizzi l'IP privato .
Nota: quando disabiliti l'IP pubblico per un'istanza, rilasci il relativo indirizzo IPv4.
Se in seguito riattivi l'IP pubblico per questa istanza, il criterio riceve un indirizzo IPv4 diverso e tutte le applicazioni che utilizzano l'indirizzo IP pubblico per connettersi a questa istanza devono essere modificate.
Per disattivare l'IP pubblico:
Console
Nella console Google Cloud, vai alla pagina Istanze Cloud SQL .
Vai alle istanze Cloud SQL
Per aprire la pagina Panoramica di un'istanza, fai clic sul nome dell'istanza.
Seleziona Connessioni dal menu di navigazione SQL.
Deseleziona la casella di controllo IP pubblico .
Fai clic su Salva per aggiornare l'istanza.
gcloud
Aggiorna l'istanza:
gcloud sql instances patch INSTANCE_NAME \
--no-assign-ip
Conferma le modifiche:
gcloud sql instances describe INSTANCE_NAME
REST v1
Mostra tutti gli indirizzi autorizzati esistenti descrivendo l'istanza:
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
project-id : l'ID del progetto
instance-id : l'ID istanza
ip-address1 : il modulo CIDR del primo indirizzo IP.
ip-address-name1 : il nome del primo indirizzo IP.
ip-address2 : il formato CIDR del secondo indirizzo IP.
ip-address-name2 : il nome del secondo indirizzo IP.
machine-type Il tipo di macchina dell'istanza
zone La zona dell'istanza
Metodo e URL HTTP:
GET https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id ?fields=settings
Per inviare la richiesta, espandi una delle seguenti opzioni:
curl (Linux, macOS o Cloud Shell)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso all'
interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
, oppure utilizzando
Cloud Shell ,
che esegue automaticamente l'accesso all'interfaccia a riga di comando di gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ " https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id ?fields=settings"
PowerShell (Windows)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso all'
interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
, oppure utilizzando
Cloud Shell ,
che esegue automaticamente l'accesso all'interfaccia a riga di comando di gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method GET ` -Headers $headers ` -Uri " https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id ?fields=settings" | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
Risposta
{
"settings":
{
"authorizedGaeApplications": [],
"tier": "machine-type 4",
"kind": "sql#settings",
"availabilityType": "REGIONAL",
"pricingPlan": "PER_USE",
"replicationType": "SYNCHRONOUS",
"activationPolicy": "ALWAYS",
"ipConfiguration":
{
"privateNetwork": "projects/project-id /global/networks/default",
"authorizedNetworks":
[
{
"value": "ip-address1 ",
"name": "ip-address-name1 ",
"kind": "sql#aclEntry"
},
{
"value": "ip-address2 ",
"name": "ip-address-name2 ",
"kind": "sql#aclEntry"
}
],
"ipv4Enabled": true
},
"locationPreference":
{
"zone": "zone ",
"kind": "sql#locationPreference"
},
"dataDiskType": "PD_SSD",
"maintenanceWindow":
{
"kind": "sql#maintenanceWindow",
"hour": 0,
"day": 0
},
"backupConfiguration":
{
"startTime": "03:00",
"kind": "sql#backupConfiguration",
"enabled": true,
"binaryLogEnabled": true
},
"settingsVersion": "54",
"storageAutoResizeLimit": "0",
"storageAutoResize": true,
"dataDiskSizeGb": "10"
}
}
Aggiorna l'istanza:
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
PROJECT_ID: : l'ID del progetto
INSTANCE_ID: : l'ID dell'istanza
VPC_NETWORK_NAME: 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.
RANGE_NAME: Facoltativo. Se specificato, imposta un nome di intervallo per il quale è allocato un intervallo IP. Il nome dell'intervallo deve essere conforme a RFC-1035
e contenere 1-63 caratteri.
AUTHORIZED_NETWORKS: Per le connessioni IP pubbliche, specifica le connessioni da reti autorizzate che possono connettersi all'istanza.
Per il parametro ipv4Enabled
, imposta il valore su true
se utilizzi un indirizzo IP pubblico per la tua istanza o su false
se la tua istanza ha un indirizzo IP privato.
Se imposti il parametro enablePrivatePathForGoogleCloudServices
su true
, consenti ad altri servizi Google Cloud, come BigQuery, di accedere ai dati in Cloud SQL ed eseguire query su questi dati tramite una connessione IP privata. Se imposti questo parametro su
false
, gli altri servizi Google Cloud non potranno accedere ai dati in Cloud SQL tramite una connessione IP privata.
Metodo e URL HTTP:
POST https://sqladmin.googleapis.com/v1/projects/PROJECT_ID /instances
Corpo JSON richiesta:
{
"name": "INSTANCE_ID ",
"region": "region",
"databaseVersion": "database-version",
"settings": {
"tier": "machine-type",
"ipConfiguration": {
"ipv4Enabled": false,
"privateNetwork": "projects/PROJECT_ID /global/networks/VPC_NETWORK_NAME ",
"allocatedIpRange": "RANGE_NAME "
"authorizedNetworks": [AUTHORIZED_NETWORKS ],
"enablePrivatePathForGoogleCloudServices": true
}
}
}
Per inviare la richiesta, espandi una delle seguenti opzioni:
curl (Linux, macOS o Cloud Shell)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso all'
interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
, oppure utilizzando
Cloud Shell ,
che esegue automaticamente l'accesso all'interfaccia a riga di comando di gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Salva il corpo della richiesta in un file denominato request.json
ed esegui il seguente comando:
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ -d @request.json \ "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID /instances"
PowerShell (Windows)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso all'
interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
, oppure utilizzando
Cloud Shell ,
che esegue automaticamente l'accesso all'interfaccia a riga di comando di gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Salva il corpo della richiesta in un file denominato request.json
ed esegui il seguente comando:
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method POST ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -InFile request.json ` -Uri "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID /instances" | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
Risposta
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID /instances/INSTANCE_ID ",
"status": "PENDING",
"user": "user@example.com",
"insertTime": "2020-01-21T22:43:37.981Z",
"operationType": "CREATE",
"name": "OPERATION_ID ",
"targetId": "INSTANCE_ID ",
"selfLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID /operations/OPERATION_ID ",
"targetProject": "PROJECT_ID "
}
Conferma le modifiche:
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
project-id : l'ID del progetto
instance-id : l'ID istanza
machine-type Il tipo di macchina dell'istanza
zone La zona dell'istanza
Metodo e URL HTTP:
GET https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id ?fields=settings
Per inviare la richiesta, espandi una delle seguenti opzioni:
curl (Linux, macOS o Cloud Shell)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso all'
interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
, oppure utilizzando
Cloud Shell ,
che esegue automaticamente l'accesso all'interfaccia a riga di comando di gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ " https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id ?fields=settings"
PowerShell (Windows)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso all'
interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
, oppure utilizzando
Cloud Shell ,
che esegue automaticamente l'accesso all'interfaccia a riga di comando di gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method GET ` -Headers $headers ` -Uri " https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id ?fields=settings" | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
Risposta
{
"settings":
{
"authorizedGaeApplications": [],
"tier": "machine-type ",
"kind": "sql#settings",
"availabilityType": "REGIONAL",
"pricingPlan": "PER_USE",
"replicationType": "SYNCHRONOUS",
"activationPolicy": "ALWAYS",
"ipConfiguration":
{
"privateNetwork": "projects/project-id /global/networks/default",
"authorizedNetworks": [],
"ipv4Enabled": false
},
"locationPreference":
{
"zone": "zone ",
"kind": "sql#locationPreference"
},
"dataDiskType": "PD_SSD",
"maintenanceWindow":
{
"kind": "sql#maintenanceWindow",
"hour": 0,
"day": 0
},
"backupConfiguration":
{
"startTime": "03:00",
"kind": "sql#backupConfiguration",
"enabled": true,
"binaryLogEnabled": true
},
"settingsVersion": "54",
"storageAutoResizeLimit": "0",
"storageAutoResize": true,
"dataDiskSizeGb": "10"
}
}
REST v1beta4
Mostra tutti gli indirizzi autorizzati esistenti descrivendo l'istanza:
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
project-id : l'ID del progetto
instance-id : l'ID istanza
ip-address1 : il modulo CIDR del primo indirizzo IP.
ip-address-name1 : il nome del primo indirizzo IP.
ip-address2 : il formato CIDR del secondo indirizzo IP.
ip-address-name2 : il nome del secondo indirizzo IP.
machine-type Il tipo di macchina dell'istanza
zone La zona dell'istanza
Metodo e URL HTTP:
GET https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id ?fields=settings
Per inviare la richiesta, espandi una delle seguenti opzioni:
curl (Linux, macOS o Cloud Shell)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso all'
interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
, oppure utilizzando
Cloud Shell ,
che esegue automaticamente l'accesso all'interfaccia a riga di comando di gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ " https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id ?fields=settings"
PowerShell (Windows)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso all'
interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
, oppure utilizzando
Cloud Shell ,
che esegue automaticamente l'accesso all'interfaccia a riga di comando di gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method GET ` -Headers $headers ` -Uri " https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id ?fields=settings" | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
Risposta
{
"settings":
{
"authorizedGaeApplications": [],
"tier": "machine-type 4",
"kind": "sql#settings",
"availabilityType": "REGIONAL",
"pricingPlan": "PER_USE",
"replicationType": "SYNCHRONOUS",
"activationPolicy": "ALWAYS",
"ipConfiguration":
{
"privateNetwork": "projects/project-id /global/networks/default",
"authorizedNetworks":
[
{
"value": "ip-address1 ",
"name": "ip-address-name1 ",
"kind": "sql#aclEntry"
},
{
"value": "ip-address2 ",
"name": "ip-address-name2 ",
"kind": "sql#aclEntry"
}
],
"ipv4Enabled": true
},
"locationPreference":
{
"zone": "zone ",
"kind": "sql#locationPreference"
},
"dataDiskType": "PD_SSD",
"maintenanceWindow":
{
"kind": "sql#maintenanceWindow",
"hour": 0,
"day": 0
},
"backupConfiguration":
{
"startTime": "03:00",
"kind": "sql#backupConfiguration",
"enabled": true,
"binaryLogEnabled": true
},
"settingsVersion": "54",
"storageAutoResizeLimit": "0",
"storageAutoResize": true,
"dataDiskSizeGb": "10"
}
}
Aggiorna l'istanza:
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
PROJECT_ID: : l'ID del progetto
INSTANCE_ID: : l'ID dell'istanza
VPC_NETWORK_NAME: 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.
RANGE_NAME: Facoltativo. Se specificato, imposta un nome di intervallo per il quale è allocato un intervallo IP. Il nome dell'intervallo deve essere conforme a RFC-1035
e contenere 1-63 caratteri.
AUTHORIZED_NETWORKS: Per le connessioni IP pubbliche, specifica le connessioni da reti autorizzate che possono connettersi all'istanza.
Per il parametro ipv4Enabled
, imposta il valore su true
se utilizzi un indirizzo IP pubblico per la tua istanza o su false
se la tua istanza ha un indirizzo IP privato.
Se imposti il parametro enablePrivatePathForGoogleCloudServices
su true
, consenti ad altri servizi Google Cloud, come BigQuery, di accedere ai dati in Cloud SQL ed eseguire query su questi dati tramite una connessione IP privata. Se imposti questo parametro su
false
, gli altri servizi Google Cloud non potranno accedere ai dati in Cloud SQL tramite una connessione IP privata.
Metodo e URL HTTP:
POST https://sqladmin.googleapis.com/v1beta4/projects/PROJECT_ID /instances
Corpo JSON richiesta:
{
"name": "INSTANCE_ID ",
"region": "region",
"databaseVersion": "database-version",
"settings": {
"tier": "machine-type",
"ipConfiguration": {
"ipv4Enabled": false,
"privateNetwork": "projects/PROJECT_ID /global/networks/VPC_NETWORK_NAME ",
"allocatedIpRange": "RANGE_NAME "
"authorizedNetworks": [AUTHORIZED_NETWORKS ],
"enablePrivatePathForGoogleCloudServices": true
}
}
}
Per inviare la richiesta, espandi una delle seguenti opzioni:
curl (Linux, macOS o Cloud Shell)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso all'
interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
, oppure utilizzando
Cloud Shell ,
che esegue automaticamente l'accesso all'interfaccia a riga di comando di gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Salva il corpo della richiesta in un file denominato request.json
ed esegui il seguente comando:
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ -d @request.json \ "https://sqladmin.googleapis.com/v1beta4/projects/PROJECT_ID /instances"
PowerShell (Windows)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso all'
interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
, oppure utilizzando
Cloud Shell ,
che esegue automaticamente l'accesso all'interfaccia a riga di comando di gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Salva il corpo della richiesta in un file denominato request.json
ed esegui il seguente comando:
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method POST ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -InFile request.json ` -Uri "https://sqladmin.googleapis.com/v1beta4/projects/PROJECT_ID /instances" | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
Risposta
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID /instances/INSTANCE_ID ",
"status": "PENDING",
"user": "user@example.com",
"insertTime": "2020-01-21T22:43:37.981Z",
"operationType": "CREATE",
"name": "OPERATION_ID ",
"targetId": "INSTANCE_ID ",
"selfLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID /operations/OPERATION_ID ",
"targetProject": "PROJECT_ID "
}
Conferma le modifiche:
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
project-id : l'ID del progetto
instance-id : l'ID istanza
machine-type Il tipo di macchina dell'istanza
zone La zona dell'istanza
Metodo e URL HTTP:
GET https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id ?fields=settings
Per inviare la richiesta, espandi una delle seguenti opzioni:
curl (Linux, macOS o Cloud Shell)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso all'
interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
, oppure utilizzando
Cloud Shell ,
che esegue automaticamente l'accesso all'interfaccia a riga di comando di gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ " https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id ?fields=settings"
PowerShell (Windows)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso all'
interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
, oppure utilizzando
Cloud Shell ,
che esegue automaticamente l'accesso all'interfaccia a riga di comando di gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method GET ` -Headers $headers ` -Uri " https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id ?fields=settings" | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
Risposta
{
"settings":
{
"authorizedGaeApplications": [],
"tier": "machine-type ",
"kind": "sql#settings",
"availabilityType": "REGIONAL",
"pricingPlan": "PER_USE",
"replicationType": "SYNCHRONOUS",
"activationPolicy": "ALWAYS",
"ipConfiguration":
{
"privateNetwork": "projects/project-id /global/networks/default",
"authorizedNetworks": [],
"ipv4Enabled": false
},
"locationPreference":
{
"zone": "zone ",
"kind": "sql#locationPreference"
},
"dataDiskType": "PD_SSD",
"maintenanceWindow":
{
"kind": "sql#maintenanceWindow",
"hour": 0,
"day": 0
},
"backupConfiguration":
{
"startTime": "03:00",
"kind": "sql#backupConfiguration",
"enabled": true,
"binaryLogEnabled": true
},
"settingsVersion": "54",
"storageAutoResizeLimit": "0",
"storageAutoResize": true,
"dataDiskSizeGb": "10"
}
}
Risolvere i problemi
Problema
Risolvere i problemi
Aborted connection
.
Il problema potrebbe essere il seguente:
Instabilità di Networking.
Nessuna risposta ai comandi keep-alive TCP (il client o il server non risponde, potrebbe essere sovraccarico)
La durata della connessione motore del database è stata superata e il server termina la connessione.
Le applicazioni devono tollerare gli errori di rete e seguire le best practice , come il pool di connessioni e i nuovi tentativi. La maggior parte dei pool di connessioni rileva questi errori ove possibile. In caso contrario, l'applicazione deve riprovare o avere un errore negativo.
Per nuovi tentativi di connessione, consigliamo di adottare i seguenti metodi:
Backoff esponenziale . Aumenta l'intervallo di tempo tra ogni nuovo tentativo, in modo esponenziale.
Aggiungi anche il backoff randomizzato.
La combinazione di questi metodi aiuta a ridurre le limitazioni.
FATAL: database 'user' does not exist
.
gcloud sql connect --user
funziona solo con l'utente
postgres
predefinito.
Connettiti all'utente predefinito, quindi cambia gli utenti.
Vuoi scoprire chi è connesso.
Accedi al database ed esegui questo comando:
SELECT datname,
usename,
application_name as appname,
client_addr,
state,
now() - backend_start as conn_age,
now() - state_change as last_activity_age
FROM pg_stat_activity
WHERE backend_type = 'client backend'
ORDER BY 6 DESC
LIMIT 20
Passaggi successivi