Vous pouvez vous connecter à Cloud SQL à l'aide du client de ligne de commande PostgreSQL. Cette page décrit comment connecter un client psql
à votre instance Cloud SQL, qu'elle s'exécute localement sur votre machine cliente, sur une VM Compute Engine ou dans Cloud Shell.
Avant de commencer
Avant de pouvoir utiliser un client psql
pour vous connecter à votre instance Cloud SQL, procédez comme suit :
-
Créez une instance Cloud SQL, en veillant à configurer l'utilisateur par défaut.
Consultez les pages Créer des instances et Définir le mot de passe du compte utilisateur par défaut.
Créez éventuellement une instance de VM Compute Engine, puis connectez-vous à celle-ci via SSH.
Consultez la page Créer et démarrer une instance de VM, À propos des connexions SSH ou Se connecter à des VM Windows à l'aide de RDP.
Décider de la manière dont vous allez vous connecter à l'instance.
Pour connaître les options de connexion et savoir laquelle choisir, consultez la page À propos des options de connexion.
Utiliser un client MySQL sur une machine locale ou une VM Compute Engine
L'utilisation d'un client psql
pour se connecter à votre instance Cloud SQL implique trois tâches de premier niveau :
Installer le client
Pour installer le client psql
, procédez comme suit :
Debian/Ubuntu
Installez le client psql à partir du gestionnaire de packages :
sudo apt-get update sudo apt-get install postgresql-client
CentOS/RHEL
Installez le client psql à partir du gestionnaire de packages :
sudo yum install postgresql
openSUSE
Installez le client psql à partir du gestionnaire de packages :
sudo zypper install postgresql
Autres plates-formes
- Téléchargez PostgreSQL Core Distribution sur votre plate-forme depuis la page des téléchargements PostgreSQL.
Core Distribution inclut le client psql. - Installez la base de données PostgreSQL en suivant les instructions de la page de téléchargement.
Configurer l'accès à l'instance Cloud SQL
Pour configurer l'accès à votre instance, procédez comme suit :
- À partir de la machine cliente ou de l'instance de VM Compute Engine, accédez à la page d'identification d'adresse IP pour afficher l'adresse IP de la machine cliente.
- Copiez cette adresse IP.
-
Dans Google Cloud Console, accédez à la page Instances Cloud SQL.
- Pour ouvrir la page Présentation d'une instance, cliquez sur son nom.
- Dans le menu de navigation SQL, sélectionnez Connexions.
- Sélectionnez l'onglet Mise en réseau.
- Dans la section Réseaux autorisés, cliquez sur Ajouter un réseau puis saisissez l'adresse IP de la machine sur laquelle le client est installé.
- Cliquez sur OK, puis sur Enregistrer en bas de la page pour enregistrer les modifications.
- Connectez-vous à l'instance, à l'aide de SSL/TLS ou sans chiffrement (sans SSL/TLS).
Se connecter à l'instance Cloud SQL sans chiffrement
Pour vous permettre de vous connecter sans chiffrement, le mode SSL doit être défini sur ALLOW_UNENCRYPTED_AND_ENCRYPTED
sur l'instance. Dans la console Google Cloud, la configuration équivalente est Autoriser le trafic réseau non chiffré.
Pour en savoir plus sur la configuration SSL/TLS de votre instance, consultez la section Configurer des certificats SSL/TLS.
Pour vous connecter à votre instance, procédez comme suit :
- Vérifiez que vous avez installé le client et configuré l'accès à votre instance.
- Démarrez le client
psql
:psql "sslmode=disable dbname=postgres user=postgres hostaddr=INSTANCE_IP_ADDRESS"
- Saisissez votre mot de passe.
- L'invite psql apparaît.
Connectez-vous à votre instance Cloud SQL à l'aide de SSL/TLS.
Pour vous connecter à votre instance à l'aide de SSL/TLS et de l'authentification intégrée, procédez comme suit:
- Démarrez le client
psql
:psql "sslmode=require \ hostaddr=INSTANCE_IP_ADDRESS \ user=postgres dbname=DB_NAME"
Exemple :
psql "sslmode=require \ hostaddr=203.12.34.56 \ user=postgres dbname=postgres"
Vous voudrez peut-être également créer un fichier de service de connexion pour gérer vos paramètres de connexion, en particulier si vous vous connectez à plusieurs instances. Pour en savoir plus, consultez la documentation PostgreSQL.
- Saisissez le mot de passe. Le mot de passe est obligatoire pour Cloud SQL, même si PostgreSQL accepte la connectivité sans mot de passe avec SSL/TLS.
- Vous pouvez vérifier que la connexion est bien chiffrée en recherchant l'algorithme de chiffrement dans les informations de connexion :
SSL connection (cipher: ECDHE-RSA-AES128-GCM-SHA256, bits: 128)
Se connecter à l'instance Cloud SQL à l'aide de SSL/TLS et de la validation du certificat client
Si ssl_mode
sur votre instance Cloud SQL est configuré sur TRUSTED_CLIENT_CERTIFICATE_REQUIRED
, vous devez également fournir une identité de client validée lorsque vous vous connectez.
Pour vous connecter à l'aide de certificats SSL/TLS avec la validation du client, vous avez besoin des éléments suivants :
- Un certificat de clé publique du client dans un fichier client-cert.pem
- Une clé privée du client dans un fichier client-key.pem
En outre, pour permettre au client de valider l'identité du serveur pour l'authentification mutuelle, spécifiez le certificat de serveur server-ca.pem.
Par exemple, pour démarrer le 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"
Si vous ne disposez pas d'un certificat client et d'une clé privée correspondante, créez un certificat client.
Utiliser le client dans Cloud Shell
Pour vous connecter à une instance Cloud SQL (adresse IP publique uniquement), procédez comme suit :
- Accédez à Google Cloud Console.
- Cliquez sur l'icône Cloud Shell située à droite dans la barre d'outils.
L'initialisation de Cloud Shell prend quelques instants.
- Lorsque Cloud Shell vous y invite, connectez-vous à l'instance Cloud SQL à l'aide du client intégré.
gcloud sql connect INSTANCE_ID \ --user=postgres
- Saisissez votre mot de passe.
La commande gcloud sql connect
ne permet pas de se connecter à une instance Cloud SQL à l'aide d'une adresse IP privée, ni de SSL/TLS. Pour vous connecter avec un chiffrement, installez et utilisez le proxy dans Cloud Shell :
- Installez le proxy (Linux 64 bits) dans le répertoire
/home/USER
. - Démarrez le proxy en utilisant l'authentification de gcloud CLI :
./cloud-sql-proxy INSTANCE_CONNECTION_NAME &
- Connectez-vous à la base de données à l'aide de la connexion TCP :
psql -U USERNAME --host=127.0.0.1
Étapes suivantes
- Apprenez-en plus sur la configuration d'une instance avec une adresse IP privée.
- Découvrez les options de connexion à l'instance depuis une application.
- Découvrez le fonctionnement du client
psql
avec SSL.
Faites l'essai
Si vous débutez sur Google Cloud, créez un compte pour évaluer les performances de Cloud SQL en conditions réelles. Les nouveaux clients bénéficient également de 300 $ de crédits gratuits pour exécuter, tester et déployer des charges de travail.
Profiter d'un essai gratuit de Cloud SQL