Connexion par le biais de SnowSQL

Ce chapitre décrit comment se connecter à Snowflake en saisissant les paramètres de connexion manuellement. Ce chapitre explique ensuite comment configurer une connexion par défaut pour faciliter l’utilisation, ainsi qu’une ou plusieurs connexions nommées en vue d’utiliser d’autres paramètres de connexion ou de créer plusieurs sessions simultanées.

Note

Snowflake ne prend pas en charge l’exécution simultanée de plusieurs instances de SnowSQL sur le même poste. Par exemple, vous ne pouvez pas ouvrir deux terminaux MacOS ou applications shell Linux et exécuter snowsql dans les deux en même temps.

Dans ce chapitre :

Syntaxe de connexion

$ snowsql <connection_parameters>
Copy

<paramètres_connexion> sont un ou plusieurs des éléments suivants. Pour une description détaillée de chaque paramètre, voir Référence Paramètres de connexion (dans ce chapitre).

Paramètre

Description

-a, --accountname TEXT

Votre identificateur de compte. Honore $SNOWSQL_ACCOUNT.

-u, --username TEXT

Nom d’utilisateur pour se connecter à Snowflake. Honore $SNOWSQL_USER.

-d, --dbname TEXT

Base de données à utiliser. Honore $SNOWSQL_DATABASE.

-s, --schemaname TEXT

Schéma de la base de données à utiliser. Honore $SNOWSQL_SCHEMA.

-r, --rolename TEXT

Nom du rôle à utiliser. Honore $SNOWSQL_ROLE.

-w, --warehouse TEXT

Entrepôt à utiliser. Honore $SNOWSQL_WAREHOUSE.

-h, --host TEXT

Adresse de l’hôte pour la connexion. Honore $SNOWSQL_HOST. (obsolète)

-p, --port INTEGER

Numéro de port pour la connexion. Honore $SNOWSQL_PORT. (obsolète)

--region TEXT

Région. Honore $SNOWSQL_REGION. (obsolète ; utilisez -a ou –nomcompte à la place)

-m, --mfa-passcode TEXT

Jeton à utiliser pour l’authentification multifactorielle (MFA)

--mfa-passcode-in-password

Ajoute le code d’accès MFA à la fin du mot de passe.

--abort-detached-query

Annule une requête si la connexion entre le client et le serveur est perdue. Par défaut, il ne s’interrompt pas même si la connexion est perdue.

--probe-connection

Testez la connectivité à Snowflake. Cette option est principalement utilisée pour imprimer la chaîne de certificats TLS (Transport Layer Security).

--proxy-host TEXT

(DEPRECATED. Utilisez les variables d’environnement HTTPS_PROXY et HTTP_PROXY). Nom d’hôte du serveur proxy. Honore $SNOWSQL_PROXY_HOST.

--proxy-port INTEGER

(DEPRECATED. Utilisez les variables d’environnement HTTPS_PROXY et HTTP_PROXY). Numéro de port du serveur proxy. Honore $SNOWSQL_PROXY_PORT.

--proxy-user TEXT

(DEPRECATED. Utilisez les variables d’environnement HTTPS_PROXY et HTTP_PROXY). Nom d’utilisateur du serveur proxy. Honore $SNOWSQL_PROXY_USER. Définissez $SNOWSQL_PROXY_PWD pour le mot de passe du serveur proxy.

--authenticator TEXT

Authentificateur : “snowflake”, “externalbrowser” (pour utiliser n’importe quel IdP et un navigateur web), https://<okta_account_name>.okta.com (pour utiliser Okta en mode natif), ou “oauth” pour s’authentifier en utilisant OAuth.

-v, --version

Affiche la version actuelle de SnowSQL, ou utilise une version spécifique si elle est fournie comme valeur.

--noup

Désactive la mise à niveau automatique pour cette exécution. Si aucune version n’est spécifiée pour -v, la dernière version dans ~/.snowsql/ est utilisée.

-D, --variable TEXT

Définit une variable qui sera référencée par &<var>. -D nomtable=CENUSTRACKONE ou –variable db_key=$DB_KEY

-o, --option TEXT

Définissez les options SnowSQL. Voir la référence des options dans la documentation de Snowflake.

-f, --filename PATH

Fichier à exécuter.

-q, --query TEXT

Requête à exécuter.

--config PATH

Chemin et nom du fichier de configuration SnowSQL. Par défaut, ~/.snowsql/config.

-P, --prompt

Force une invite de mot de passe interactif pour vous permettre de spécifier un mot de passe différent de celui stocké dans la variable d’environnement $SNOWSQL_PWD.

-M, --mfa-prompt

Force une invite pour le deuxième jeton pour la MFA.

-c, --connection TEXT

Ensemble nommé de paramètres de connexion à utiliser.

--single-transaction

Se connecte sans validation automatique. Ajoute BEGIN/COMMIT autour des instructions pour les exécuter en tant que transaction unique, en s’assurant que toutes les commandes se terminent avec succès ou qu’aucun changement n’est appliqué.

--private-key-path PATH

Chemin d’accès au fichier de la clé privée.

--disable-request-pooling

Désactive le pooling de connexions.

-U, --upgrade

Forcez la mise à niveau de SnowSQL vers la dernière version.

-K, --client-session-keep-alive

Gardez la session active indéfiniment, même s’il n’y a aucune activité de l’utilisateur.

--include_connector_version

Affiche la version du logiciel du connecteur Snowflake pour Python qui est fourni dans le binaire SnowSQL.

-?, --help

Affichez ce message et quittez.

Spécification des mots de passe lors de la connexion

Les mots de passe ne peuvent pas être transmis via les paramètres de connexion. Les mots de passe doivent être spécifiés de l’une des façons suivantes :

Note

Dans les environnements Windows, le terminal Cygwin ne vous demande pas votre identificateur de compte, votre nom d’utilisateur ou votre mot de passe. La raison est que SnowSQL ne peut pas activer le mode TTY sur les terminaux Cygwin.

Utilisation de variables d’environnement

Actuellement, les variables d’environnement ne peuvent être utilisées que pour pré-spécifier certaines valeurs de paramètres de ligne de commande, telles que le mot de passe, l’hôte et la base de données. Les variables d’environnement ne sont pas disponibles pour la substitution de variable SnowSQL, à moins qu’elles ne soient explicitement spécifiées sur la ligne de commande au démarrage de SnowSQL, en utilisant le paramètre de connexion -D ou --variable. Par exemple :

Linux/macOS
$ snowsql ... -D tablename=CENUSTRACKONE --variable db_key=$DB_KEY
Copy
Windows
$ snowsql ... -D tablename=CENUSTRACKONE --variable db_key=%DB_KEY%
Copy

Dans l’exemple ci-dessus, --variable définit une variable Snowflake nommée db_key sur la variable d’environnement DB_KEY.

Configuration des paramètres de connexion par défaut

Nous vous recommandons de configurer vos paramètres de connexion par défaut pour simplifier le processus de connexion. Ensuite, lorsque vous vous connectez à Snowflake, vous pouvez omettre l’identificateur de votre compte Snowflake, votre nom d’utilisateur et tout autre paramètre que vous avez configuré comme valeurs par défaut.

Pour configurer vos paramètres par défaut :

  1. Ouvrez le fichier de configuration SnowSQL (nommé config) dans un éditeur de texte. L’emplacement par défaut du fichier est :

    Linux/macOS

    ~/.snowsql/

    Windows

    %USERPROFILE%\.snowsql\

    Note

    Vous pouvez changer l’emplacement par défaut en spécifiant l’indicateur de ligne de commande --config path au démarrage de SnowSQL.

  2. Dans la section [connections] , configurez les paramètres de connexion par défaut en supprimant le symbole de commentaire de l’un des paramètres suivants et en spécifiant les bonnes valeurs :

    [connections]
    #accountname = <string>   # Account identifier to connect to Snowflake.
    #username = <string>      # User name in the account. Optional.
    #password = <string>      # User password. Optional.
    #dbname = <string>        # Default database. Optional.
    #schemaname = <string>    # Default schema. Optional.
    #warehousename = <string> # Default warehouse. Optional.
    #rolename = <string>      # Default role. Optional.
    #authenticator = <string> # Authenticator: 'snowflake', 'externalbrowser' (to use any IdP and a web browser),  https://<okta_account_name>.okta.com (to use Okta natively), 'oauth' to authenticate using OAuth.
    
    Copy

    Attention

    • Le mot de passe est stocké en texte clair dans le fichier config. Vous devez explicitement sécuriser le fichier pour en restreindre l’accès. Par exemple, sous Linux ou macOS, vous pouvez définir les permissions de lecture pour vous seul en exécutant chmod :

      $ chmod 700 ~/.snowsql/config
      
      Copy
    • Si votre mot de passe contient des caractères spéciaux, vous devez le mettre entre guillemets simples ou doubles.

Vérification de la connexion réseau à Snowflake avec SnowCD

Après la configuration, vous pouvez évaluer et dépanner votre connectivité réseau à Snowflake en utilisant SnowCD.

Vous pouvez utiliser SnowCD pendant le processus de configuration initiale et à la demande à tout moment pour évaluer et dépanner votre connexion réseau à Snowflake.

Utilisation de connexions nommées

Pour effectuer plusieurs connexions simultanées à Snowflake, ou simplement pour stocker différents ensembles de configurations de connexion, vous pouvez définir une ou plusieurs connexions nommées.

Définition de connexions nommées dans le fichier de configuration

  1. Ouvrez le fichier de configuration config dans un éditeur de texte. Par défaut, le fichier se trouve dans :

    Linux/macOS

    ~/.snowsql/

    Windows

    %USERPROFILE%\.snowsql\

  2. Ajoutez une section [connections] séparée avec un nom unique pour chaque connexion nommée.

    Par exemple, ce qui suit illustre une connexion nommée my_example_connection pour un compte Snowflake avec l’identificateur de compte myorganization-myaccount :

    [connections.my_example_connection]
    accountname = myorganization-myaccount
    username = jsmith
    password = xxxxxxxxxxxxxxxxxxxx
    dbname = mydb
    schemaname = public
    warehousename = mywh
    
    Copy

Connexion à Snowflake à l’aide d’une connexion nommée

Utilisez le paramètre de connexion -c <chaîne> (ou --connection <chaîne>) pour spécifier une connexion nommée, où <chaîne> est le nom d’une connexion définie dans le fichier de configuration.

Par exemple, connectez-vous en utilisant la connexion my_example_connection que vous avez créée à l’étape Définition de connexions nommées dans le fichier de configuration (dans ce chapitre) :

$ snowsql -c my_example_connection
Copy

Utilisation de l’authentification par paire de clés et rotation de paires de clés

SnowSQL prend en charge l’authentification par paire de clés et la rotation des clés. Vous pouvez utiliser des paires de clés chiffrées ou non.

Prudence

Bien que les clés privées non chiffrées soient prises en charge, Snowflake recommande fortement d’utiliser des clés privées chiffrées lors de la connexion à Snowflake. Les clés privées non chiffrées ne sont pas protégées contre une utilisation non autorisée si une personne non autorisée y a accès.

La procédure suivante suppose que vous utilisez l’authentification par paire de clés chiffrées recommandée :

  1. Pour commencer, suivez les instructions pour configurer Authentification par paire de clés et rotation de paires de clés.

  2. Indiquez le chemin d’accès vers le fichier de clé privée soit dans le fichier de configuration soit sur la ligne de commande :

  • Dans le fichier de configuration :

    • Ajoutez le paramètre de connexion private_key_path à vos paramètres de connexion et spécifiez le chemin d’accès local au fichier de clé privée que vous avez créé. La syntaxe n’est pas spécifique à un OS particulier :

      OS pris en charge
      private_key_path = <path>/rsa_key.p8
      
      Copy
    • Utilisez la variable d’environnement SNOWSQL_PRIVATE_KEY_PASSPHRASE pour définir la phrase secrète afin de déchiffrer le fichier de clé privée. Notez que vous ne devez pas mettre la phrase secrète entre guillemets pour Linux ou MacOS, mais que vous devez utiliser des guillemets simples ou doubles pour Windows :

      Linux/macOS
      export SNOWSQL_PRIVATE_KEY_PASSPHRASE=<passphrase>
      
      Copy
      Windows
      set SNOWSQL_PRIVATE_KEY_PASSPHRASE='<passphrase>'
      
      Copy
  • Sur la ligne de commande :

    Indiquez le paramètre de connexion private-key-path et spécifiez le chemin d’accès vers votre fichier de clé privée chiffré :

    $ snowsql -a <account_identifier> -u <user> --private-key-path <path>/rsa_key.p8
    
    Copy

    SnowSQL vous demande la phrase de chiffrement. Vous pouvez également utiliser la variable d’environnement SNOWSQL_PRIVATE_KEY_PASSPHRASE pour définir la phrase secrète de déchiffrement du fichier de clé privée (comme décrit ci-dessus).

Utilisation d’un serveur proxy

Pour utiliser un serveur de proxy, configurez les variables d’environnement suivantes :

  • HTTP_PROXY

  • HTTPS_PROXY

  • NO_PROXY

Par exemple :

Linux/macOS
export HTTP_PROXY='http://username:password@proxyserver.company.com:80'
export HTTPS_PROXY='http://username:password@proxyserver.company.com:80'
Copy
Windows
set HTTP_PROXY=http://username:password@proxyserver.company.com:80
set HTTPS_PROXY=http://username:password@proxyserver.company.com:80
Copy

Astuce

Snowflake ne prend pas en charge les configurations impliquant l’interception de proxys HTTPS qui présentent un certificat TLS (Transport Layer Security) autre que celui émis par Snowflake. En évitant cette configuration, vous réduisez les risques de sécurité potentiels tels qu’une attaque MITM (Man In The Middle, Attaque de l’homme du milieu) par le biais d’un proxy compromis.

Si vous devez utiliser votre proxy TLS, Snowflake vous recommande fortement de mettre à jour la politique du serveur pour passer par le certificat Snowflake, afin qu’aucun certificat ne soit modifié au milieu des communications.

En option, NO_PROXY peut être utilisé afin de contourner le proxy pour des communications spécifiques. Par exemple, l’accès Amazon S3 peut être contourné en spécifiant NO_PROXY=".amazonaws.com".

Utilisation d’un navigateur Web pour l’authentification fédérée/SSO

Pour utiliser l’authentification SSO par navigateur pour SnowSQL, ajoutez --authenticator externalbrowser à vos paramètres de connexion SnowSQL :

Par exemple :

$ snowsql -a <account_identifier> -u <username> --authenticator externalbrowser
Copy

Pour plus d’informations sur l’authentification fédérée et SSO, voir Gestion/Utilisation de l’authentification fédérée.

Vérification de la version du connecteur ou du pilote OCSP

Snowflake utilise OCSP pour évaluer la chaîne de certificats lors d’une connexion à Snowflake. La version du pilote ou du connecteur et sa configuration déterminent le comportement OCSP. Pour plus d’informations sur la version du pilote ou du connecteur, leur configuration et le comportement de OCSP, voir Configuration d’OCSP.

Serveur de cache de réponse OCSP

Note

Le serveur de cache de réponse OCSP est actuellement pris en charge par SnowSQL 1.1.55 et supérieur.

Les clients Snowflake initient chaque connexion à un point de terminaison de service Snowflake avec un « handshake » qui établit une connexion sécurisée avant de transférer les données. Dans le cadre du « handshake », un client authentifie le certificat TLS pour le point de terminaison de service. Le statut de révocation du certificat est vérifié en envoyant une demande de certificat client à l’un des serveurs OCSP (Online Certificate Status Protocol) pour le CA (autorité de certification).

Une défaillance de connexion se produit lorsque la réponse du serveur OCSP est retardée au-delà d’un délai raisonnable. Les caches suivants persistent le statut de révocation, ce qui permet de limiter ces problèmes :

  • La mémoire cache, qui continue d’exister durant la vie du processus.

  • Le cache de fichier, qui continue d’exister jusqu’à ce que le répertoire de cache (par exemple ~/.cache/snowflake ou ~/.snowsql/ocsp_response_cache) soit purgé.

  • Le serveur de cache de réponse OCSP Snowflake qui collecte toutes les heures les réponses OCSP des serveurs OCSP du CA et les stocke pendant 24 heures. Les clients peuvent alors interroger le statut de validation d’un certificat Snowflake donné à partir de ce cache de serveur.

    Important

    Si votre politique de serveur refuse l’accès à la plupart ou à la totalité des adresses IP et sites Web externes, vous devez ajouter l’adresse du serveur de cache à la liste d’autorisation pour permettre le fonctionnement normal du service. Le nom d’hôte du serveur de cache est ocsp*.snowflakecomputing.com:80.

    Si vous avez besoin de désactiver le serveur de cache pour une raison quelconque, réglez la variable d’environnement SF_OCSP_RESPONSE_CACHE_SERVER_ENABLED sur false. Notez que la valeur est sensible à la casse et doit être en minuscules.

Si aucune des couches du cache ne contient la réponse OCSP, le client tente alors de récupérer le statut de validation directement depuis le serveur OCSP du CA.

Gestion des erreurs de connexion

Cannot open self /usr/bin/snowsql or archive /usr/bin/snowsql.pkg (Linux uniquement)

En raison d’une limitation dans pyinstaller (le programme qui enveloppe SnowSQL dans un exécutable autonome à partir du code source Python), prelink efface par erreur des parties de l’exécutable snowsql et provoque cette erreur.

Pour éviter ce problème, le programme d’installation SnowSQL tente de mettre à jour le fichier de configuration prelink dans /etc/prelink.conf.d/snowsql.conf pour l’exécutable snowsql, de sorte que prelink ne modifie pas le fichier. Malheureusement, cette mise à jour de configuration ne peut pas être effectuée par le processus de mise à niveau automatique SnowSQL.

Entretenez-vous avec votre administrateur système pour exécuter la commande suivante sur votre poste de travail :

$ sudo bash -c "echo '-b snowsql' > /etc/prelink.conf.d/snowsql.conf"
Copy

Note

Si vous installez snowsql dans votre répertoire personnel, ce problème est moins susceptible de se produire, car prelink est configuré, par défaut, pour analyser les répertoires binaires partagés (par exemple /usr/bin ou /bin) et ne modifie pas les programmes dans votre répertoire personnel.

Référence Paramètres de connexion

-a , --accountname

Description

Obligatoire

Spécifie votre identificateur de compte.

Ce paramètre de connexion peut également être défini dans le fichier de configuration.

Valeur

Chaîne

De plus, la valeur peut être une variable d’environnement :

Linux/macOS

$SNOWSQL_ACCOUNT

Windows

%SNOWSQL_ACCOUNT%

Par exemple, sous Linux ou macOS :

$ export SNOWSQL_ACCOUNT=myorganization-myaccount

$ snowsql -a $SNOWSQL_ACCOUNT
Copy
Par défaut

Aucun

-u , --username

Description

Indique le nom de connexion de l’utilisateur avec lequel vous vous connectez au compte spécifié.

Ce paramètre de connexion peut également être défini dans le fichier de configuration.

Valeur

Chaîne

La valeur peut être une variable d’environnement :

Linux/macOS

$SNOWSQL_USER

Windows

%SNOWSQL_USER%

Par exemple, sous Linux ou macOS :

$ export SNOWSQL_USER=jdoe

$ snowsql -u $SNOWSQL_USER
Copy
Par défaut

Aucun

-d , --dbname

Description

Spécifie la base de données à utiliser par défaut dans la session client (peut être modifiée après connexion).

Valeur

Chaîne

La valeur peut être une variable d’environnement :

Linux/macOS

$SNOWSQL_DATABASE

Windows

%SNOWSQL_DATABASE%

Ce paramètre de connexion peut également être défini dans le fichier de configuration.

Par défaut

Aucun

-s , --schemaname

Description

Spécifie le schéma de base de données à utiliser par défaut dans la session client (peut être modifié après connexion).

Valeur

Chaîne

La valeur peut être une variable d’environnement :

Linux/macOS

$SNOWSQL_SCHEMA

Windows

%SNOWSQL_SCHEMA%

Ce paramètre de connexion peut également être défini dans le fichier de configuration.

Par défaut

Aucun

-r , --rolename

Description

Spécifie le rôle à utiliser par défaut pour accéder aux objets Snowflake dans la session client (peut être modifié après connexion).

Ce paramètre de connexion peut également être défini dans le fichier de configuration.

Valeur

Chaîne

La valeur peut être une variable d’environnement :

Linux/macOS

$SNOWSQL_ROLE

Windows

%SNOWSQL_ROLE%

Par défaut

Aucun

-w , --warehouse

Description

Spécifie l’entrepôt virtuel à utiliser par défaut pour les requêtes, le chargement, etc. dans la session client (peut être modifié après connexion).

Ce paramètre de connexion peut également être défini dans le fichier de configuration.

Valeur

Chaîne

La valeur peut être une variable d’environnement :

Linux/macOS

$SNOWSQL_WAREHOUSE

Windows

%SNOWSQL_WAREHOUSE%

Par défaut

Aucun

-h, --hostObsolète

Description

Fourni pour une rétrocompatibilité/utilisation interne

Indique l’adresse de l’hôte auquel vous vous connectez dans Snowflake.

Ce paramètre n’est plus utilisé, car l’adresse de l’hôte est déterminée automatiquement en concaténant l’identificateur de compte que vous avez spécifié (en utilisant -a ou --account) et le domaine Snowflake (snowflakecomputing.com).

Valeur

Chaîne

Par défaut

Aucun

-p, --portObsolète

Description

Fourni pour une rétrocompatibilité/utilisation interne

Indique le numéro de port à utiliser pour la connexion.

Ce paramètre n’est plus utilisé, car le numéro de port pour Snowflake est toujours 443.

Valeur

Chaîne

Par défaut

Aucun

--regionObsolète

Description

Fourni pour une rétrocompatibilité/utilisation interne

Spécifie l’ID de la région où se trouve votre compte.

Ce paramètre n’est plus utilisé. Pour plus de détails, voir -a , --accountname (dans ce chapitre).

Valeur

N/A

Par défaut

N/A

-m , --mfa-passcode

Description

Spécifie le second jeton pour la MFA (authentification multifactorielle) si vous validez le code d’accès dans la ligne de commande.

Valeur

Chaîne

Par défaut

Aucun

--mfa-passcode-in-password

Description

Ajoute le code d’accès MFA à la fin du mot de passe.

Vous pouvez forcer l’invite du mot de passe et saisir le mot de passe suivi du code d’accès MFA. Par exemple, si le jeton MFA était 123456 et que le mot de passe était PASSWORD :

$ snowsql ... -P ...

Password: PASSWORD123456
Copy
Valeur

N/A (le paramètre ne prend pas de valeur)

Par défaut

N/A

--abort-detached-query

Description

Annule une requête si la connexion entre le client et le serveur est perdue.

Valeur

Booléen

Par défaut

Faux (c’est-à-dire qu’une requête active ne s’annule pas si la connexion est perdue).

--probe-connection

Description

Tester la connectivité avec Snowflake et rapporter les résultats. Notez qu’il s’agit d’une option en test utilisée principalement pour imprimer la chaîne de certificats TLS.

Valeur

N/A (le paramètre ne prend pas de valeur)

Par défaut

N/A

--authenticator

Description

Spécifie l’authentificateur à utiliser pour vérifier les informations d’identification d’utilisateur :

Valeur

Chaîne (constante) :

  • snowflake utilise l’authentificateur interne Snowflake.

  • externalbrowser utilise votre navigateur Web pour vous authentifier avec Okta, AD FS ou tout autre fournisseur d’identification conforme à SAML 2.0 (IdP) qui a été défini pour votre compte.

  • https://<nom_compte_okta>.okta.com (c-à-d. le point de terminaison d’URL pour Okta) s’authentifie via Okta natif (pris en charge uniquement si votre IdP est Okta).

  • oauth s’authentifie à l’aide de OAuth. Lorsque OAuth est spécifié comme authentificateur, vous devez également définir le paramètre --token pour spécifier le jeton OAuth (voir ci-dessous).

Pour plus d’informations, voir Gestion/Utilisation de l’authentification fédérée et Clients, pilotes et connecteurs.

Par défaut

snowflake

Note

L’authentificateur externalbrowser n’est pris en charge que dans les fenêtres de terminal qui ont accès à un navigateur Web. Par exemple, une fenêtre de terminal sur une machine distante accessible via une session SSH (Secure Shell) peut nécessiter une configuration supplémentaire pour ouvrir un navigateur Web.

Si vous n’avez pas accès à un navigateur Web, mais que votre IdP est Okta, vous pouvez utiliser Okta natif (c’est-à-dire que vous devez définir l’authentificateur sur https://<nom_compte_okta>.okta.com).

--token

Description

Spécifie le jeton OAuth à utiliser pour l’authentification. Ce paramètre n’est requis que lorsque vous spécifiez --authenticator=oauth.

Valeur

Chaîne

Par défaut

Aucun

-v , --version

Description

Utilisez la version spécifiée de SnowSQL ou, si aucune version n’est spécifiée, affichez la dernière version de SnowSQL installée.

Valeur

Chaîne

Par défaut

Aucun

--versions

Description

Répertorie toutes les versions disponibles de SnowSQL qui peuvent être installées et exécutées. Pour installer une version antérieure de SnowSQL à partir de la liste, utilisez l’option -v et spécifiez la version que vous voulez installer.

Valeur

N/A (le paramètre ne prend pas de valeur)

Par défaut

N/A

--noup

Description

Désactive la mise à niveau automatique pour cette exécution. Si cette option n’est pas incluse et qu’une version plus récente est disponible, SnowSQL télécharge et installe automatiquement la nouvelle version. La prochaine fois que vous exécuterez SnowSQL, la nouvelle version sera utilisée.

Valeur

N/A (le paramètre ne prend pas de valeur)

Par défaut

N/A

-D , --variable

Description

Définit des variables SnowSQL sur la ligne de commande. Cette option peut être utilisée pour définir des variables spécifiques à utiliser dans Snowflake.

Valeur

Chaîne

Par exemple :

$ snowsql ... -D tablename=CENUSTRACKONE --variable db_key=$DB_KEY ...
Copy
Par défaut

Aucun

-o , --option

Description

Définit les options de configuration SnowSQL sur la ligne de commande. Ces options remplacent toutes les options qui ont été définies dans le fichier de configuration SnowSQL. Pour la description des options que vous pouvez définir/annuler, voir référence d’options de configuration SnowSQL.

Valeur

Chaîne

Par défaut

Aucun

-f , --filename

Description

Spécifie un fichier SQL à exécuter en mode batch.

La valeur peut être un nom de fichier (y compris le chemin du répertoire, si nécessaire) ou une URL menant au fichier.

Valeur

Chaîne

Par défaut

Aucun

-q , --query

Description

Spécifie une requête SQL à exécuter.

La valeur peut être une seule requête SQL ou une liste de requêtes séparées par un point-virgule à exécuter (par exemple 'select current_user(); select current_role()').

Vous pouvez également spécifier plusieurs requêtes à exécuter de manière asynchrone en séparant les requêtes par ;>. L’exemple suivant démarre SnowSQL et exécute les quatre requêtes de manière asynchrone :

snowsql -o log_level=DEBUG -q "select * from SNOWSQLTABLE;> insert into table table1 values(2);> select 5;>select count(*) from testtable;"

Valeur

Chaîne

Par défaut

Aucun

--config

Description

Spécifie l’emplacement (c’est-à-dire le chemin du répertoire) du fichier de configuration SnowSQL. Intégrez ce paramètre de connecteur si vous voulez déplacer ou copier le fichier de configuration à partir de l’emplacement par défaut.

Valeur

Chaîne

Par défaut

Spécifique à l’OS :

Linux/macOS

~/.snowsql/

Windows

%USERPROFILE%\.snowsql\

-P , --prompt

Description

Force une invite interactive de mot de passe.

Par défaut, SnowSQL utilise le mot de passe stocké dans la variable d’environnement $SNOWSQL_PWD. L’utilisation de cette option vous permet de remplacer le mot de passe défini dans $SNOWSQL_PWD.

Valeur

N/A (le paramètre ne prend pas de valeur)

Par défaut

N/A

-M, --mfa-prompt

Description

Force une invite pour le deuxième jeton pour la MFA. Vous pouvez aussi utiliser --mfa-passcode <chaîne> si vous voulez valider avec la ligne de commande.

Valeur

N/A (le paramètre ne prend pas de valeur)

Par défaut

N/A

-c , --connection

Description

Spécifie une connexion à utiliser, où la chaîne spécifiée est le nom d’une connexion définie dans le fichier de configuration SnowSQL. Pour plus de détails, voir Utilisation de connexions nommées (dans ce chapitre).

Valeur

Chaîne

Par défaut

Aucun

--single-transaction

Description

Combinée avec --filename, --query ou des commandes d’entrée standard, cette option ajoute BEGIN/COMMIT autour des instructions pour s’assurer que toutes les commandes aboutissent avec succès ou qu’aucun changement n’est appliqué.

Valeur

N/A (le paramètre ne prend pas de valeur)

Par défaut

N/A

Note

Notez que si les commandes d’entrée utilisent BEGIN, COMMIT ou ROLLBACK, cette option ne fonctionnera pas correctement. De plus, si une commande ne peut pas être exécutée à l’intérieur d’un bloc de transaction, cette option entraînera l’échec de la commande.

--private-key-path

Description

Chemin d’accès au fichier de la clé privée.

Prudence

Bien que les clés privées non chiffrées soient prises en charge, Snowflake recommande fortement d’utiliser des clés privées chiffrées lors de la connexion à Snowflake.

Pour plus d’informations, voir Utilisation de l’authentification par paires de clés et rotation des paires de clés.

Ce paramètre de connexion peut également être défini dans le fichier de configuration.

Valeur

Chaîne

Par défaut

Aucun

--disable-request-pooling

Description

Par défaut, snowsql utilise le pooling de connexions. Le pooling de connexions réduit généralement le temps de latence nécessaire pour établir une connexion. Toutefois, cela peut ralentir le basculement du client vers un DNS alternatif lorsqu’un problème de DNS se produit. Ce paramètre vous permet de désactiver le pooling de connexions.

Ce paramètre s’applique uniquement aux clients pour lesquels la réplication est activée.

Valeur

N/A (le paramètre ne prend pas de valeur)

Par défaut

N/A

-U , --upgrade

Description

Force la mise à niveau de SnowSQL vers la dernière version si elle n’est pas téléchargée dans le répertoire local.

Valeur

N/A (le paramètre ne prend pas de valeur)

Par défaut

N/A

Note

Nécessite l’exécutable Bootstrap de SnowSQL 1.1.63 ou une version plus récente. Téléchargez-le à partir de l’UI.

-K , --client-session-keep-alive

Description

Gardez la session active indéfiniment, même s’il n’y a aucune activité de l’utilisateur.

Valeur

N/A (le paramètre ne prend pas de valeur)

Par défaut

N/A

--include_connector_version

Description

Affiche la version du logiciel du connecteur Snowflake pour Python qui est fourni dans le binaire SnowSQL.

Valeur

N/A (le paramètre ne prend pas de valeur)

Par défaut

N/A

-? , --help

Description

Affiche le guide d’utilisation rapide de ligne de commande.

Valeur

N/A (le paramètre ne prend pas de valeur)

Par défaut

N/A