Puoi utilizzare il client a riga di comando PostgreSQL per connetterti a Cloud SQL. In questa pagina viene descritto come connettere un
client psql
alla tua istanza Cloud SQL, in esecuzione localmente sulla tua macchina client, su una VM di Compute Engine o in Cloud Shell.
Prima di iniziare
Prima di poter utilizzare un client psql
per la connessione all'istanza Cloud SQL, segui questi passaggi:
-
Crea un'istanza Cloud SQL, inclusa la configurazione dell'utente predefinito.
Vedi Creare istanze e Impostare la password per l'account utente predefinito.
Facoltativamente, crea un'istanza VM di Compute Engine e connettiti all'istanza tramite SSH.
Consulta gli articoli Creare e avviare un'istanza VM, Informazioni sulle connessioni SSH o Connettersi a VM Windows utilizzando RDP.
Determina la modalità di connessione all'istanza.
Per le opzioni di connessione e come sceglierne una, consulta Informazioni sulle opzioni di connessione.
Usa un client PostgreSQL su una macchina locale o una VM di Compute Engine
L'utilizzo di un client psql
per la connessione all'istanza Cloud SQL prevede tre attività di alto livello:
Installa il client
Per installare il client psql
, segui questi passaggi:
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 PostgreSQL Core Distribution per la tua piattaforma dalla pagina dei 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 di Compute Engine, utilizza Qual è il mio IP per visualizzare l'indirizzo IP della macchina client.
- Copia quell'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 della macchina su cui è installato il client.
- Fai clic su Fine. Quindi 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 alla tua istanza Cloud SQL senza crittografia
Per consentirti di connetterti senza crittografia, nell'istanza deve essere impostata la modalità SSL 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 dell'istanza, consulta Configurare i certificati SSL/TLS.
Per connetterti all'istanza, segui questi passaggi:
- Conferma 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 alla tua 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 stai connettendo 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 sulla 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 anche fornire un'identità client verificata quando accedi.
Per connetterti utilizzando i certificati SSL/TLS con la verifica client, è necessario quanto segue:
- Un certificato di chiave pubblica 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 ai fini dell'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, crea 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 a destra nella barra degli strumenti.
L'inizializzazione di Cloud Shell richiede alcuni istanti.
- Nel 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 tramite IP privato o SSL/TLS. Per connetterti alla 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 di più sulla configurazione di un'istanza con un indirizzo IP privato.
- Scopri le opzioni per la connessione all'istanza dalla tua 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