Puoi utilizzare il client a riga di comando PostgreSQL per connetterti a Cloud SQL. Questa pagina descrive come connettere un
psql client alla tua istanza Cloud SQL, sia che sia in esecuzione
localmente sulla tua macchina client, su una VM Compute Engine,
o in Cloud Shell.
Prima di iniziare
Prima di poter utilizzare un client psql per connetterti all'istanza Cloud SQL:
-
Crea un'istanza Cloud SQL, inclusa la configurazione dell'utente predefinito utente.
Consulta Crea istanze e Imposta la password per l'account utente predefinito.
(Facoltativo) Crea un'istanza VM Compute Engine e poi connettiti all'istanza utilizzando SSH.
Consulta Crea e avvia un'istanza VM, Informazioni sulle connessioni SSH, o Connettiti alle VM Windows utilizzando RDP.
Determina come ti connetterai all'istanza.
Per le opzioni di connessione e su come scegliere tra queste, consulta Informazioni sulle opzioni di connessione.
Utilizzare un client PostgreSQL su una macchina locale o una VM Compute Engine
L'utilizzo di un client psql per connetterti all'istanza Cloud SQL comporta tre attività di alto livello:
Installa il client
Per installare il client psql:
Debian/Ubuntu
Installa il client psql dal gestore di pacchetti:
sudo apt-get update sudo apt-get install postgresql-client
CentOS/RHEL
Installa il client psql dal gestore di pacchetti:
sudo yum install postgresql
openSUSE
Installa il client psql dal gestore di pacchetti:
sudo zypper install postgresql
Altre piattaforme
- Scarica la distribuzione principale di PostgreSQL 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.
Configura l'accesso all'istanza Cloud SQL
Per configurare l'accesso all'istanza:
- Dalla macchina client o dall'istanza VM Compute Engine, utilizza Qual è il mio IP per visualizzare l'indirizzo IP della macchina client.
- Copia l'indirizzo IP.
-
Nella Google Cloud console, vai alla pagina Istanze Cloud SQL.
- Per aprire la pagina Panoramica di un'istanza, fai clic sul nome dell'istanza.
- Seleziona Connessioni dal menu di navigazione SQL.
- Seleziona la scheda Networking.
- Nella sezione Reti autorizzate, fai clic su Aggiungi rete e inserisci l'indirizzo IP della macchina in 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 consentire la connessione senza crittografia, la modalità SSL dell'istanza deve essere impostata su ALLOW_UNENCRYPTED_AND_ENCRYPTED. Nella Google Cloud console,
la configurazione equivalente è Consenti il traffico di rete non criptato.
Per ulteriori informazioni sulla configurazione SSL/TLS della tua istanza, consulta Configura i certificati SSL/TLS.
Per connetterti all'istanza:
- 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 di servizio di connessione per gestire i parametri di connessione, soprattutto se ti connetti a più di un' istanza. Per ulteriori informazioni, consulta la documentazione di PostgreSQL.
- Inserisci la password. La password è obbligatoria per Cloud SQL, anche se PostgreSQL supporta la connettività senza password durante l'utilizzo 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 nella tua istanza Cloud SQL è configurato su TRUSTED_CLIENT_CERTIFICATE_REQUIRED, devi fornire anche un'identità client verificata quando accedi.
Per connetterti utilizzando i certificati SSL/TLS con la verifica del client, hai bisogno di:
- Un certificato di chiave pubblica client in un file client-cert.pem.
- Una chiave privata 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 una chiave privata corrispondente, allora crea un nuovo certificato client.
Utilizzare il client in Cloud Shell
Per connetterti a un'istanza Cloud SQL (solo IP pubblico):
- Vai alla Google Cloud console.
- Fai clic sull'icona di Cloud Shell
a destra nella barra degli strumenti.
L'inizializzazione di Cloud Shell richiede alcuni istanti.
- Al prompt di Cloud Shell, utilizza il client integrato
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 utilizzando l'IP privato o SSL/TLS. Per connetterti
con la 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.
- Scopri le opzioni per la connessione all'istanza dalla tua applicazione.
- Scopri come funziona il
psqlclient 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 senza costi per l'esecuzione, il test e il deployment dei carichi di lavoro.
Prova Cloud SQL senza costi