Puoi utilizzare il client a riga di comando PostgreSQL per connetterti a Cloud SQL. In questa pagina viene descritto come collegare un
psql
all'istanza Cloud SQL, sia in esecuzione
in locale sul tuo computer client, su una VM di Compute Engine
o in Cloud Shell.
Prima di iniziare
Prima di poter utilizzare un client psql
per connetterti a Cloud SQL
procedi nel seguente modo:
-
Crea un'istanza Cloud SQL, inclusa la configurazione dell'utente predefinito.
Vedi Creare istanze e Imposta il parametro password per l'account utente predefinito.
Facoltativamente, crea un'istanza VM di Compute Engine all'istanza mediante SSH.
Vedi Creare e gestire avviare un'istanza VM, Informazioni sulle connessioni SSH, o Connetti a VM Windows tramite RDP.
Determina come ti connetterai all'istanza.
Per le opzioni di connessione e per scoprire come sceglierle, vedi Informazioni sulle opzioni di connessione.
Utilizza un client PostgreSQL su una macchina locale o una VM Compute Engine
Utilizzo di un client psql
per connettersi a Cloud SQL
prevede tre attività di alto livello:
Installa il client
Per installare il client psql
:
Debian/Ubuntu
Installa il client psql dal gestore dei pacchetti:
sudo apt-get update sudo apt-get install postgresql-client
CentOS/RHEL
Installa il client psql dal gestore dei pacchetti:
sudo yum install postgresql
openSUSE
Installa il client psql dal gestore dei pacchetti:
sudo zypper install postgresql
Altre piattaforme
- Scarica la distribuzione PostgreSQL Core per la tua piattaforma dalla pagina Download di PostgreSQL.
La distribuzione principale include il client psql. - Installa il database PostgreSQL seguendo le istruzioni riportate nella pagina di download.
Configurare l'accesso all'istanza Cloud SQL
Per configurare l'accesso all'istanza, segui questi passaggi:
- Dalla macchina client o dall'istanza VM di Compute Engine, utilizza Qual è il mio IP da vedere? l'indirizzo IP della macchina client.
- Copia l'indirizzo IP.
-
Nella console Google Cloud, vai alla pagina 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.
- Seleziona la scheda Networking.
- Nella sezione Reti autorizzate, fai clic su Aggiungi rete e inserisci l'indirizzo IP del computer su cui è installato il client.
- Fai clic su Fine. Poi fai clic su Salva nella parte inferiore della pagina. per salvare le modifiche.
- Connettiti all'istanza utilizzando SSL/TLS o senza crittografia (senza utilizzare SSL/TLS).
Connettiti all'istanza Cloud SQL senza crittografia
Per consentirti di connetterti senza crittografia, l'istanza deve avere
Modalità SSL
impostato su ALLOW_UNENCRYPTED_AND_ENCRYPTED
. Nella console Google Cloud,
la configurazione equivalente è Consenti traffico di rete non criptato.
Per ulteriori informazioni sulla configurazione SSL/TLS della tua istanza, vedi Configura i certificati SSL/TLS.
Per connetterti all'istanza, segui questi passaggi:
- Verifica di aver installato il client e configurato l'accesso all'istanza.
- Avvia il client
psql
:psql "sslmode=disable dbname=postgres user=postgres hostaddr=INSTANCE_IP_ADDRESS"
- Inserisci la password.
- Viene visualizzato il prompt psql.
Connettiti all'istanza Cloud SQL utilizzando SSL/TLS
Per connetterti all'istanza utilizzando SSL/TLS e l'autenticazione integrata:
- Avvia il client
psql
:psql "sslmode=require \ hostaddr=INSTANCE_IP_ADDRESS \ user=postgres dbname=DB_NAME"
Ad esempio:
psql "sslmode=require \ hostaddr=203.12.34.56 \ user=postgres dbname=postgres"
Potresti anche voler creare un file del servizio di connessione per gestire parametri di connessione, soprattutto se ti connetti a più di un in esecuzione in un'istanza Compute Engine. Per ulteriori informazioni, consulta la documentazione di PostgreSQL.
- Inserisci la password. La password è obbligatoria per Cloud SQL anche sebbene PostgreSQL supporti la connettività senza password durante l'uso di SSL/TLS.
- Puoi verificare che la connessione sia criptata cercando la crittografia
nelle informazioni di connessione:
SSL connection (cipher: ECDHE-RSA-AES128-GCM-SHA256, bits: 128)
Connettiti all'istanza Cloud SQL utilizzando SSL/TLS e la verifica del certificato client
Se ssl_mode
nell'istanza Cloud SQL è configurato su
TRUSTED_CLIENT_CERTIFICATE_REQUIRED
,
devi anche fornire un'identità client verificata quando accedi.
Per connetterti utilizzando i certificati SSL/TLS con verifica del client, devi disporre di quanto segue:
- Un certificato di chiave pubblica del client in un file client-cert.pem.
- Una chiave privata del client in un file client-key.pem.
Inoltre, per consentire al client di verificare l'identità del server per l'autenticazione reciproca, specifica il certificato del server server-ca.pem.
Ad esempio, per avviare il clientpsql
:
psql "sslmode=verify-ca sslrootcert=server-ca.pem \ sslcert=client-cert.pem sslkey=client-key.pem \ hostaddr=INSTANCE_IP_ADDRESS \ user=postgres dbname=DB_NAME"
Se non hai un certificato client e un server chiave privata, quindi creare un nuovo certificato client.
Utilizzo del client in Cloud Shell
Per connetterti a un'istanza Cloud SQL (solo IP pubblico):
- Vai alla console Google Cloud.
- Fai clic sull'icona di Cloud Shell
verso destra nella barra degli strumenti.
L'inizializzazione di Cloud Shell richiede qualche istante.
- Nel prompt di Cloud Shell, utilizza lo strumento
per connetterti all'istanza Cloud SQL:
gcloud sql connect INSTANCE_ID \ --user=postgres
- Inserisci la password.
Il comando gcloud sql connect
non supporta la connessione
a un'istanza Cloud SQL tramite IP privato o SSL/TLS. Per connetterti
con crittografia, installa e utilizza il proxy in Cloud Shell:
- Installa il proxy (Linux a 64 bit) nella directory
/home/USER
. - Avvia il proxy utilizzando l'autenticazione gcloud CLI:
./cloud-sql-proxy INSTANCE_CONNECTION_NAME &
- Connettiti al database utilizzando la connessione TCP:
psql -U USERNAME --host=127.0.0.1
Passaggi successivi
- Scopri come configurare un'istanza con un indirizzo IP privato.
- Informazioni su per connetterti all'istanza dall'applicazione.
- Scopri come funziona il client
psql
con SSL.
Provalo
Se non conosci Google Cloud, crea un account per valutare le prestazioni di Cloud SQL in scenari reali. I nuovi clienti ricevono anche 300 $ di crediti gratuiti per l'esecuzione, il test e il deployment dei carichi di lavoro.
Prova Cloud SQL gratuitamente