Questa pagina descrive come configurare la connettività con IP pubblico per un
di Cloud SQL.
Introduzione
Puoi configurare l'istanza Cloud SQL in modo che abbia un indirizzo IPv4 pubblico e accetti 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
in ogni rete.
Indirizzi IP pubblici per istanze PostgreSQL:
IPv6: le istanze non supportano IPv6.
IPv4: alle istanze viene assegnato automaticamente un indirizzo IPv4 statico. C'è un
piccolo addebito per l'indirizzo IP ogni volta che l'istanza è disattivata (disattivata).
Per ricevere assistenza per il collegamento di un client di amministrazione al tuo
su una connessione IP, consulta Connessione del client psql
utilizzando gli indirizzi IP .
Se configuri l'istanza in modo che accetti le connessioni utilizzando il suo indirizzo IP pubblico, configurala anche per utilizzare SSL per proteggere i tuoi dati. Per maggiori informazioni
consulta l'articolo Configurare SSL per le istanze .
Per configurare l'istanza con un indirizzo IP non esposto al
a internet pubblico, vedi
Configurazione della connettività IP privato .
Abilita 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
con un indirizzo IPv4 pubblico e statico. Dopo aver attivato l'IP pubblico,
devi configurare l'autorizzazione per le connessioni al database. Consulta le
Opzioni di autorizzazione
per ulteriori informazioni.
Per attivare l'IP pubblico e aggiungere un indirizzo autorizzato:
Console
Nella console Google Cloud, vai alla pagina Istanze Cloud SQL .
Vai a Istanze Cloud SQL
Per aprire la pagina Panoramica di un'istanza, fai clic sul nome dell'istanza.
Dal menu di navigazione SQL, seleziona Connections (Connessioni).
Fai clic sulla scheda Networking .
Seleziona la casella di controllo IP pubblico .
Fai clic su Aggiungi rete .
Se vuoi, inserisci un nome per questa rete nel campo Nome .
Nel campo Rete , inserisci l'indirizzo IP o l'intervallo di indirizzi da
per le quali 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
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 le funzionalità di
Notazione CIDR .
Conferma le modifiche:
gcloud sql instances describe INSTANCE_NAME
Quando rimuovi un indirizzo autorizzato, i collegamenti esistenti da quell'indirizzo
non vengono disconnessi. Se vuoi scollegare 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 progetto
instance-id : l'ID istanza
machine-type Il tipo di macchina dell'istanza
zone La zona dell'istanza
Metodo HTTP e URL:
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 ti consente di accedere automaticamente all'interfaccia a riga di comando 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 comando seguente presuppone che tu abbia eseguito l'accesso a
l'interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
di Google.
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,
apporta le seguenti sostituzioni:
project-id : l'ID 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 HTTP e URL:
PATCH https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id
Corpo JSON della richiesta:
{
"settings":
{
"ipConfiguration":
{
"authorizedNetworks":
[{"value": "network_range_1 "}, {"value": "network_range_2 "}]
}
}
}
Per inviare la richiesta, espandi una di queste opzioni:
curl (Linux, macOS o Cloud Shell)
Nota:
Il comando seguente presuppone che tu abbia eseguito l'accesso a
l'interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
oppure utilizzando Cloud Shell ,
che ti consente di accedere automaticamente all'interfaccia a riga di comando gcloud
di Google.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Salva il corpo della richiesta in un file denominato request.json
,
quindi esegui il comando seguente:
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 comando seguente presuppone che tu abbia eseguito l'accesso alla CLI gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
Salva il corpo della richiesta in un file denominato request.json
,
quindi esegui il comando seguente:
$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 le funzionalità di
Notazione CIDR .
Conferma le modifiche:
Prima di utilizzare i dati della richiesta,
effettua le seguenti sostituzioni:
project-id : l'ID progetto
instance-id : l'ID istanza
ip-address1 : il formato CIDR del primo indirizzo IP
ip-address-name1 : il nome del primo indirizzo IP
ip-address2 : la forma 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 HTTP e URL:
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 comando seguente presuppone che tu abbia eseguito l'accesso a
l'interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
oppure utilizzando Cloud Shell ,
che ti consente di accedere automaticamente all'interfaccia a riga di comando gcloud
di Google.
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 comando seguente presuppone che tu abbia eseguito l'accesso alla CLI gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
.
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"
}
}
Se rimuovi un indirizzo autorizzato, le connessioni esistenti a quell'indirizzo
non sono disconnessi. Se vuoi disconnettere le connessioni esistenti,
e riavviare l'istanza.
Per attivare 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 seguenti sezioni.
Prepara Cloud Shell
Avvia Cloud Shell .
Imposta il progetto Google Cloud predefinito
dove 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 in Terraform
di configurazione del deployment.
Prepara la directory
Ogni file di configurazione di Terraform deve avere una propria directory (chiamata anche modulo principale ).
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
Se stai seguendo un tutorial, puoi copiare il codice campione in ogni sezione o passaggio.
Copia il codice di esempio nel file main.tf
appena creato.
Facoltativamente, copia il codice da GitHub. Opzione consigliata
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. 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
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.
Applica la configurazione Terraform eseguendo questo comando e inserendo yes
alla richiesta:
terraform apply
Attendi che Terraform mostri il messaggio "Applicazione completata".
Apri il progetto Google Cloud per visualizzare
i risultati. Nella console Google Cloud, vai alle risorse nella UI per assicurarti
create o aggiornate da Terraform.
Nota: in genere i sample di Terraform presuppongono che le API richieste siano attivate nel progetto Google Cloud.
Elimina le modifiche
Per eliminare le modifiche, procedi nel seguente modo:
Per disabilitare la protezione dall'eliminazione, imposta il file di configurazione Terraform
Argomento deletion_protection
per false
.
deletion_protection = "false"
Applica la configurazione Terraform aggiornata eseguendo il seguente comando e inserendo yes
al prompt:
terraform apply
Rimuovi le risorse applicate in precedenza con la tua configurazione Terraform eseguendo questo comando
e inserendo yes
al prompt:
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 progetto
instance-id : l'ID istanza
machine-type Il tipo di macchina dell'istanza
zone La zona dell'istanza
Metodo HTTP e URL:
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 comando seguente presuppone che tu abbia eseguito l'accesso a
l'interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
oppure utilizzando Cloud Shell ,
che ti consente di accedere automaticamente all'interfaccia a riga di comando gcloud
di Google.
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 comando seguente presuppone che tu abbia eseguito l'accesso alla CLI gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
.
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,
apporta le seguenti sostituzioni:
project-id : l'ID 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 HTTP e URL:
PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id
Corpo JSON della richiesta:
{
"settings":
{
"ipConfiguration":
{
"authorizedNetworks":
[{"value": "network_range_1 "}, {"value": "network_range_2 "}]
}
}
}
Per inviare la richiesta, espandi una di queste 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 ti consente di accedere automaticamente all'interfaccia a riga di comando gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Salva il corpo della richiesta in un file denominato request.json
.
ed esegui questo 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 comando seguente presuppone che tu abbia eseguito l'accesso alla CLI gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Salva il corpo della richiesta in un file denominato request.json
.
ed esegui questo 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 le funzionalità di
Notazione CIDR .
Conferma le modifiche:
Prima di utilizzare i dati della richiesta,
effettua le seguenti sostituzioni:
project-id : l'ID progetto
instance-id : l'ID istanza
ip-address1 : il formato CIDR del primo indirizzo IP
ip-address-name1 : il nome del primo indirizzo IP
ip-address2 : la forma 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 HTTP e URL:
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 comando seguente presuppone che tu abbia eseguito l'accesso a
l'interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
oppure utilizzando Cloud Shell ,
che ti consente di accedere automaticamente all'interfaccia a riga di comando gcloud
di Google.
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 comando seguente presuppone che tu abbia eseguito l'accesso alla CLI gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
.
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"
}
}
Se rimuovi un indirizzo autorizzato, le connessioni esistenti a quell'indirizzo
non sono disconnessi. Se vuoi disconnettere le connessioni esistenti,
e riavviare 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 a 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 l'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 annota gli indirizzi autorizzati che vuoi conservare.
Aggiorna l'elenco di reti autorizzate, eliminando gli 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 progetto
instance-id : l'ID istanza
ip-address1 : il formato CIDR del primo indirizzo IP
ip-address-name1 : il nome del primo indirizzo IP
ip-address2 : la forma 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 HTTP e URL:
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 ti consente di accedere automaticamente all'interfaccia a riga di comando 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 comando seguente presuppone che tu abbia eseguito l'accesso alla CLI gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
.
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
abbandonare gli indirizzi che vuoi rimuovere:
Prima di utilizzare i dati della richiesta,
apporta le seguenti sostituzioni:
project-id : l'ID progetto
instance-id : l'ID istanza
network_range_1 L'indirizzo IP o l'intervallo di rete autorizzato da rimuovere
Metodo HTTP e URL:
PATCH https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id
Corpo JSON della richiesta:
{
"settings":
{
"ipConfiguration":
{
"authorizedNetworks":
[{"value": "network_range_1 "}]
}
}
}
Per inviare la richiesta, espandi una di queste 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 ti consente di accedere automaticamente all'interfaccia a riga di comando gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Salva il corpo della richiesta in un file denominato request.json
,
quindi esegui il comando seguente:
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 comando seguente presuppone che tu abbia eseguito l'accesso a
l'interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
di Google.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
Salva il corpo della richiesta in un file denominato request.json
.
ed esegui questo 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 progetto
instance-id : l'ID istanza
ip-address : la forma 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 HTTP e URL:
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 comando seguente presuppone che tu abbia eseguito l'accesso a
l'interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
oppure utilizzando Cloud Shell ,
che ti consente di accedere automaticamente all'interfaccia a riga di comando gcloud
di Google.
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 comando seguente presuppone che tu abbia eseguito l'accesso a
l'interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
di Google.
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 progetto
instance-id : l'ID istanza
ip-address1 : il formato CIDR del primo indirizzo IP
ip-address-name1 : il nome del primo indirizzo IP
ip-address2 : la forma 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 HTTP e URL:
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 comando seguente presuppone che tu abbia eseguito l'accesso a
l'interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
oppure utilizzando Cloud Shell ,
che ti consente di accedere automaticamente all'interfaccia a riga di comando gcloud
di Google.
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 comando seguente presuppone che tu abbia eseguito l'accesso a
l'interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
di Google.
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
abbandonare gli indirizzi che vuoi rimuovere:
Prima di utilizzare i dati della richiesta,
apporta le seguenti sostituzioni:
project-id : l'ID progetto
instance-id : l'ID istanza
network_range_1 L'indirizzo IP o l'intervallo di rete autorizzato da rimuovere
Metodo HTTP e URL:
PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id
Corpo JSON della richiesta:
{
"settings":
{
"ipConfiguration":
{
"authorizedNetworks":
[{"value": "network_range_1 "}]
}
}
}
Per inviare la richiesta, espandi una di queste opzioni:
curl (Linux, macOS o Cloud Shell)
Nota:
Il comando seguente presuppone che tu abbia eseguito l'accesso a
l'interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
oppure utilizzando Cloud Shell ,
che ti consente di accedere automaticamente all'interfaccia a riga di comando gcloud
di Google.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
Salva il corpo della richiesta in un file denominato request.json
,
quindi esegui il comando seguente:
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 comando seguente presuppone che tu abbia eseguito l'accesso a
l'interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
di Google.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Salva il corpo della richiesta in un file denominato request.json
,
quindi esegui il comando seguente:
$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 progetto
instance-id : l'ID istanza
ip-address : la forma 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 HTTP e URL:
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 ti consente di accedere automaticamente all'interfaccia a riga di comando 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 comando seguente presuppone che tu abbia eseguito l'accesso a
l'interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
di Google.
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"
}
}
Se rimuovi un indirizzo autorizzato, le connessioni esistenti a quell'indirizzo
non sono disconnessi. Se vuoi disconnettere le connessioni esistenti,
e riavviare l'istanza.
Configurare un'istanza per rifiutare tutte le connessioni con IP pubblico
Per configurare un'istanza in modo da rifiutare tutte le connessioni con IP pubblico:
Console
Nella console Google Cloud, vai alla pagina Istanze Cloud SQL .
Vai a 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 progetto
instance-id : l'ID istanza
ip-address1 : il formato CIDR del primo indirizzo IP
ip-address-name1 : il nome del primo indirizzo IP
ip-address2 : la forma 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 HTTP e URL:
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 comando seguente presuppone che tu abbia eseguito l'accesso a
l'interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
oppure utilizzando Cloud Shell ,
che ti consente di accedere automaticamente all'interfaccia a riga di comando gcloud
di Google.
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 comando seguente presuppone che tu abbia eseguito l'accesso alla CLI gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
.
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 progetto
instance-id : l'ID istanza
Metodo HTTP e URL:
PATCH https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id
Corpo JSON della richiesta:
{
"settings":
{
"ipConfiguration":
{
"authorizedNetworks": []
}
}
}
Per inviare la richiesta, espandi una di queste opzioni:
curl (Linux, macOS o Cloud Shell)
Nota:
Il comando seguente presuppone che tu abbia eseguito l'accesso a
l'interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
oppure utilizzando Cloud Shell ,
che ti consente di accedere automaticamente all'interfaccia a riga di comando gcloud
di Google.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
Salva il corpo della richiesta in un file denominato request.json
.
ed esegui questo 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 comando seguente presuppone che tu abbia eseguito l'accesso a
l'interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
di Google.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
Salva il corpo della richiesta in un file denominato request.json
.
ed esegui questo 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 progetto
instance-id : l'ID istanza
machine-type Il tipo di macchina dell'istanza
zone La zona dell'istanza
Metodo HTTP e URL:
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 ti consente di accedere automaticamente all'interfaccia a riga di comando 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 comando seguente presuppone che tu abbia eseguito l'accesso a
l'interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
di Google.
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 progetto
instance-id : l'ID istanza
ip-address1 : il formato CIDR del primo indirizzo IP
ip-address-name1 : il nome del primo indirizzo IP
ip-address2 : la forma 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 HTTP e URL:
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 ti consente di accedere automaticamente all'interfaccia a riga di comando 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 comando seguente presuppone che tu abbia eseguito l'accesso alla CLI gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
.
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 progetto
instance-id : l'ID istanza
Metodo HTTP e URL:
PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id
Corpo JSON della richiesta:
{
"settings":
{
"ipConfiguration":
{
"authorizedNetworks": []
}
}
}
Per inviare la richiesta, espandi una di queste opzioni:
curl (Linux, macOS o Cloud Shell)
Nota:
Il comando seguente presuppone che tu abbia eseguito l'accesso a
l'interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
oppure utilizzando Cloud Shell ,
che ti consente di accedere automaticamente all'interfaccia a riga di comando gcloud
di Google.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
Salva il corpo della richiesta in un file denominato request.json
.
ed esegui questo 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 comando seguente presuppone che tu abbia eseguito l'accesso a
l'interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
di Google.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
Salva il corpo della richiesta in un file denominato request.json
.
ed esegui questo 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 progetto
instance-id : l'ID istanza
machine-type Il tipo di macchina dell'istanza
zone La zona dell'istanza
Metodo HTTP e URL:
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 comando seguente presuppone che tu abbia eseguito l'accesso a
l'interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
oppure utilizzando Cloud Shell ,
che ti consente di accedere automaticamente all'interfaccia a riga di comando gcloud
di Google.
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 comando seguente presuppone che tu abbia eseguito l'accesso a
l'interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
di Google.
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"
}
}
Se rimuovi un indirizzo autorizzato, le connessioni esistenti a quell'indirizzo
non sono disconnessi. Se vuoi disconnettere le connessioni esistenti,
e riavviare l'istanza.
Disabilita l'IP pubblico
Puoi disabilitare l'IP pubblico, ma solo se l'istanza è anche configurata per l'utilizzo dell'IP privato.
Per abilitare l'IP privato, vedi Configurare un'istanza esistente per l'utilizzo dell'IP privato .
Nota: se disabiliti l'IP pubblico per un'istanza, rilasci il suo indirizzo IPv4.
Se in seguito riattivi l'IP pubblico per questa istanza, l'IP pubblico verrà
e tutte le applicazioni che usano l'indirizzo IP pubblico
per connettersi a questa istanza.
Per disabilitare l'IP pubblico:
Console
Nella console Google Cloud, vai alla pagina Istanze Cloud SQL .
Vai a Istanze Cloud SQL
Per aprire la pagina Panoramica di un'istanza, fai clic sul nome dell'istanza.
Seleziona Connections (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 progetto
instance-id : l'ID istanza
ip-address1 : il formato CIDR del primo indirizzo IP
ip-address-name1 : il nome del primo indirizzo IP
ip-address2 : la forma 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 HTTP e URL:
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 ti consente di accedere automaticamente all'interfaccia a riga di comando 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 comando seguente presuppone che tu abbia eseguito l'accesso a
l'interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
di Google.
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,
apporta le seguenti sostituzioni:
PROJECT_ID: L'ID 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 cui viene allocato un intervallo IP. Il nome dell'intervallo deve essere conforme a RFC-1035
e contenere da 1 a 63 caratteri.
AUTHORIZED_NETWORKS: Per le connessioni con IP pubblico, 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 false
se l'istanza ha un
l'indirizzo IP privato.
Se imposti il parametro enablePrivatePathForGoogleCloudServices
su true
,
e poi consenti ad altri servizi Google Cloud, come BigQuery, di accedere ai dati
Cloud SQL ed eseguire query su questi dati tramite una connessione IP privato. Se imposti questo parametro su
false
, gli altri servizi Google Cloud non possono accedere ai dati in Cloud SQL tramite una connessione IP privata.
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",
"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 di queste opzioni:
curl (Linux, macOS o Cloud Shell)
Nota:
Il comando seguente presuppone che tu abbia eseguito l'accesso a
l'interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
oppure utilizzando Cloud Shell ,
che ti consente di accedere automaticamente all'interfaccia a riga di comando gcloud
di Google.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
Salva il corpo della richiesta in un file denominato request.json
.
ed esegui questo 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 comando seguente presuppone che tu abbia eseguito l'accesso alla CLI gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
Salva il corpo della richiesta in un file denominato request.json
,
quindi esegui il comando seguente:
$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 progetto
instance-id : l'ID istanza
machine-type Il tipo di macchina dell'istanza
zone La zona dell'istanza
Metodo HTTP e URL:
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 comando seguente presuppone che tu abbia eseguito l'accesso a
l'interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
oppure utilizzando Cloud Shell ,
che ti consente di accedere automaticamente all'interfaccia a riga di comando gcloud
di Google.
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 comando seguente presuppone che tu abbia eseguito l'accesso alla CLI gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
.
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 progetto
instance-id : l'ID istanza
ip-address1 : il formato CIDR del primo indirizzo IP
ip-address-name1 : il nome del primo indirizzo IP
ip-address2 : la forma 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 HTTP e URL:
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 ti consente di accedere automaticamente all'interfaccia a riga di comando 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 comando seguente presuppone che tu abbia eseguito l'accesso alla CLI gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
.
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,
apporta le seguenti sostituzioni:
PROJECT_ID: L'ID 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 il nome di un intervallo per il quale un intervallo IP
i dati strutturati vengono allocati. Il nome dell'intervallo deve essere conforme a RFC-1035
e contenere da 1 a 63 caratteri.
AUTHORIZED_NETWORKS: Per le connessioni con IP pubblico, 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 false
se l'istanza ha un
l'indirizzo IP privato.
Se imposti il parametro enablePrivatePathForGoogleCloudServices
su true
,
e poi consenti ad altri servizi Google Cloud, come BigQuery, di accedere ai dati
Cloud SQL ed eseguire query su questi dati tramite una connessione IP privato. Se imposti questo parametro su
false
, gli altri servizi Google Cloud non possono accedere ai dati in Cloud SQL tramite una connessione IP privata.
Metodo HTTP e URL:
POST https://sqladmin.googleapis.com/v1beta4/projects/PROJECT_ID /instances
Corpo JSON della 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 di queste opzioni:
curl (Linux, macOS o Cloud Shell)
Nota:
Il comando seguente presuppone che tu abbia eseguito l'accesso a
l'interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
oppure utilizzando Cloud Shell ,
che ti consente di accedere automaticamente all'interfaccia a riga di comando gcloud
di Google.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Salva il corpo della richiesta in un file denominato request.json
.
ed esegui questo 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 comando seguente presuppone che tu abbia eseguito l'accesso alla CLI gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Salva il corpo della richiesta in un file denominato request.json
,
quindi esegui il comando seguente:
$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 progetto
instance-id : l'ID istanza
machine-type Il tipo di macchina dell'istanza
zone La zona dell'istanza
Metodo HTTP e URL:
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 ti consente di accedere automaticamente all'interfaccia a riga di comando 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 comando seguente presuppone che tu abbia eseguito l'accesso alla CLI gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
.
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"
}
}
Risoluzione dei problemi
Problema
Risoluzione dei problemi
Aborted connection
.
Il problema potrebbe essere:
Instabilità della rete.
Nessuna risposta ai comandi keep-alive TCP (client o
server non reattivo, probabilmente sovraccarico)
Il lifetime della connessione al motore del database è stato superato e il server termina la connessione.
Le applicazioni devono tollerare gli errori di rete e seguire le best practice , come il pooling delle connessioni e i tentativi di nuovo accesso. La maggior parte dei pooler di connessioni rileva
ove possibile. In caso contrario, l'applicazione deve riprovare
puoi fallire con eleganza.
Per riprovare la connessione, consigliamo i seguenti metodi:
Esponenziale
il backoff . Aumenta in modo esponenziale l'intervallo di tempo tra un nuovo tentativo e l'altro.
Aggiungi anche il backoff casuale.
La combinazione di questi metodi contribuisce a ridurre la limitazione.
Certificate verify failed
.
I certificati client sono scaduti o il percorso dei certificati non è corretto.
Rigenera i certificati ricreandoli .
FATAL: database 'user' does not exist
.
gcloud sql connect --user
funziona solo con l'utente predefinito
postgres
.
Accedi con l'utente predefinito, quindi cambia
utente.
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
Hostname/IP does not match certificate's altnames:
Host: localhost. is not in the cert's altnames
.
L'indirizzo host non corrisponde all'indirizzo nei nomi alternativi del certificato del server.
Se utilizzi Node.js con verify-full o un'opzione equivalente,
utilizza il nome DNS per il parametro servername .
Il nome DNS è disponibile sul server
utilizzando openssl . Ad esempio,
openssl x509 -in server-cert.pem -noout -text |grep 'DNS:'
.
ssl: {
rejectUnauthorized: true,
ca: fs.readFileSync( "/path/to/server/CA" ) ,
servername: 'N-xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx.us-central1.sql.goog'
}
Passaggi successivi