Connexion à Snowflake Postgres¶
Une fois que vous avez créé une instance Snowflake Postgres, vous pouvez vous y connecter avec n’importe quel client PostgreSQL, tel que psql ou DBeaver. Pour établir une connexion, configurez votre client avec :
Le nom d’hôte de l’instance. C’est l’URL de l’hôte de la machine virtuelle.
Un nom d’utilisateur. Lorsque vous créez une instance, l’utilisateur
snowflake_adminest créé par défaut et conçu pour un accès administratif.La base de données Postgres à laquelle vous souhaitez vous connecter. Ce paramètre est nécessaire pour créer des connexions Postgres. La base de données par défaut est nommée
postgres.Un mot de passe pour votre utilisateur.
Voici un exemple de ces détails de connexions utilisés avec le client de ligne de commande psql :
$ psql -h abcefg.snowflake.app -U snowflake_admin -d postgres
(psql vous demandera un mot de passe)
Si vous devez spécifier un port, utilisez 5432 :
$ psql -h abcefg.snowflake.app -U snowflake_admin -p 5432 -d postgres
Important
SSL est nécessaire pour se connecter aux instances Snowflake Postgres.
À propos des chaînes de connexion¶
Lors de la création d’une instance Postgres via Snowsight, Snowflake Postgres fournit une chaîne de connexion au format URI libpq à utiliser pour vous connecter directement via psql ou pour configurer votre application.
Note
La chaîne de connexion d’un cluster reste la même pour les opérations de gestion du cluster, sauf si vous réinitialisez explicitement l’accès pour un rôle donné.
La chaîne de connexion en tant que base de données URL contient les paramètres suivants :
protocol :
postgres://userName : voir Rôles Snowflake Postgres pour plus de détails.
password
hostname
port : 5432
database_name :
postgrespar défaut
Ces paramètres sont ensuite utilisés pour construire une chaîne de connexion URI avec ce format :
postgresql://<username>:<password>@hostname:<port>/<database_name>
Si l’environnement de votre client n’est pas configuré pour appliquer les connexions SSL, vous pouvez ajouter ?sslmode=require à l’URI :
postgresql://<username>:<password>@hostname:<port>/<database_name>?sslmode=require
Le paramètre sslmode accepte différentes valeurs indiquant différents niveaux de chiffrement SSL et de vérification de certificat à utiliser. sslmode=require est le niveau minimum requis pour appliquer le chiffrement SSL. Pour configurer votre client pour effectuer la vérification de certificat SSL de vos certificats de serveur Snowflake Postgres, voir Certificats SSL Snowflake Postgres.
Vous pouvez spécifier plusieurs autres paramètres de connexion client dans un URI de connexion de la même manière que sslmode est spécifié ci-dessus. Pour une liste complète, voir la liste des paramètre de connexion URI de la documentation PostgreSQL.
Vous pouvez également définir un grand nombre de ces paramètres via les variables d’environnement reconnues par libpq. Par exemple, ce qui suit garantit que la connexion psql est établie avec ?sslmode=require défini :
export PGSSLMODE=require
psql -h {hostname} -U {username} {dbname}
La définition des paramètres de connexion client via des variables d’environnement est utile lors de la configuration des connexions pour les cadres d’application qui, autrement, ne fournissent pas d’options de configuration pour les paramètres de connexion nécessaires.
Note
Pour les applications qui utilisent des pilotes de base de données non basés sur
libpq, consultez la documentation de ces autres pilotes pour obtenir les options de paramètres de configuration client et le format de spécification. Par exemple, le pilote JDBC de PostgreSQL fournit de nombreux paramètres équivalents à ceux fournis parlibpq, mais leur spécification en matière d’URIs est légèrement différente.