Installation et configuration du pilote ODBC pour macOS

Comme Windows, macOS utilise des sources de données nommées (DSNs) pour connecter les applications client basées sur ODBC à Snowflake.

Dans ce chapitre :

Conditions préalables

Système d’exploitation

Pour obtenir la liste des systèmes d’exploitation pris en charge par les clients Snowflake, voir Prise en charge par les systèmes d’exploitation.

Avec ODBC version 3.0.1, le pilote ne prend plus en charge les versions 10.14 et 10.15 de MacOS.

iODBC

Le pilote Snowflake ODBC pour Mac nécessite iODBC qui peut être téléchargé sur :

Pour installer iODBC :

  1. Après avoir téléchargé iODBC, double-cliquez sur le fichier.dmg téléchargé.

  2. Double-cliquez sur le fichier d’installation, iODBC-SDK.pkg, et suivez les invites.

    Par défaut, le paquet installe le logiciel dans le répertoire /Library/Application Support/iODBC/bin. Vous pouvez ajouter ce répertoire à la variable d’environnement $PATH pour éviter d’avoir à spécifier le nom de chemin complet pour exécuter l’une des commandes iODBC.

Note

iODBC fournit un outil d’administrateur GUI pour configurer des pilotes et des DSNs. Cependant, cet outil n’a pas été testé pour être utilisé avec Snowflake et ne devrait donc pas être utilisé pour créer ou gérer des DSNs.

Étape 1 : Installer le pilote ODBC

Pour installer le pilote ODBC de Snowflake pour macOS :

  1. Si vous n’avez pas encore téléchargé le pilote, téléchargez-le maintenant. Pour plus de détails, voir Téléchargement du pilote ODBC.

  2. Double-cliquez sur le fichier .dmg téléchargé, snowflake_odbc_mac-<version>.dmg.

  3. Double-cliquez sur le fichier d’installation, snowflakeODBC_<version>.pkg, et suivez les invites.

    Vous serez probablement invité à saisir le mot de passe administrateur/sudo de la machine sur laquelle vous installez le pilote.

Si vous choisissez le répertoire par défaut lorsque vous y êtes invité, le programme d’installation installe les fichiers de pilote ODBC dans les répertoires suivants :

/opt/snowflake/snowflakeodbc

/Library/ODBC

Étape 2 : Configurer le pilote ODBC

Pour configurer le pilote ODBC pour macOS, créez une ou plusieurs sources de données (DSNs) qui sont stockées dans les fichiers suivants, selon le type de DSN que vous créez :

  • Utilisateur DSNs : ~/Library/ODBC/odbc.ini

  • DSNsde système : /Library/ODBC/odbc.ini

Pour créer un DSN, modifiez le fichier odbc.ini approprié.

Création d’un DSN en ajoutant une entrée dans le fichier odbc.ini.

Si un utilisateur ou un système DSN a déjà été créé pour le pilote, ajoutez la nouvelle entrée au fichier odbc.ini qui existe déjà dans le répertoire correspondant au type de DSN que vous créez. Si vous créez le premier DSN pour le pilote, vous devez créer manuellement le fichier odbc.ini et ajouter l’entrée au fichier.

Pour chaque DSN, indiquez les éléments suivants :

  • Nom du DSN et du pilote (Snowflake) sous la forme <nom_dsn> = <nom_pilote>.

  • Chemin d’accès au répertoire et nom du fichier de pilote au format Driver = /opt/snowflake/snowflakeodbc/lib/universal/libSnowflake.dylib.

  • Paramètres de connexion, tels que server et uid (nom d’utilisateur). Tous les paramètres de connexion que vous ajoutez au DSN n’ont pas besoin d’être indiqués dans la chaîne de connexion ODBC.

  • Tout paramètre supplémentaire, par exemple role database et warehouse par défaut.

Les paramètres sont spécifiés sous forme de <nom_paramètre> = <valeur>. Pour plus de détails sur les paramètres qui peuvent être définis pour chaque DSN, voir Paramètres de configuration et de connexion ODBC.

L’exemple suivant illustre un fichier odbc.ini qui configure deux sources de données qui utilisent différentes formes d’un identificateur de compte dans l”server URL :

  • testodbc1 utilise un identificateur de compte qui utilise un identificateur de compte qui spécifie le compte myaccount dans l’organisation myorganization.

  • testodbc2 utilise le localisateur de compte xy12345 comme identificateur de compte.

    Notez que testodbc2 utilise un compte dans la région AWS US Ouest (Oregon). Si le compte se trouve dans une autre région ou s’il utilise un autre fournisseur Cloud, vous devez spécifier des segments supplémentaires après le localisateur de compte.

    [ODBC Data Sources]
    testodbc1 = Snowflake
    testodbc2 = Snowflake
    
    
    [testodbc1]
    Driver      = /opt/snowflake/snowflakeodbc/lib/universal/libSnowflake.dylib
    Description =
    uid         = peter
    server      = myorganization-myaccount.snowflakecomputing.com
    role        = sysadmin
    
    
    [testodbc2]
    Driver      = /opt/snowflake/snowflakeodbc/lib/universal/libSnowflake.dylib
    Description =
    uid         = mary
    server      = xy12345.snowflakecomputing.com
    role        = analyst
    database    = sales
    warehouse   = analysis
    
    Copy

Remarques :

  • testodbc1 et testodbc2 ont des rôles par défaut.

  • testodbc2 possède également une base de données et un entrepôt par défaut.

Étape 3 : testez le pilote ODBC

Vous pouvez utiliser l’utilitaire de ligne de commande iodbctest fourni avec iODBC pour tester les DSNs que vous créez :

Lorsque vous êtes invité à saisir la chaîne de connexion ODBC, saisissez les paramètres de connexion requis (nom du DSN, serveur, nom d’utilisateur et mot de passe), ainsi que tout autre paramètre que vous aimeriez saisir dans la chaîne de connexion. La chaîne de connexion prend les paramètres sous forme de <nom_paramètre>=<valeur>, par ex. dsn=testodbc2 avec chaque paramètre séparé par un point-virgule (;) et sans espace. Pour obtenir la liste des paramètres pris en charge, voir Paramètres de configuration et de connexion ODBC.

Note

Si vous définissez le serveur et le nom d’utilisateur dans le DSN, les seuls paramètres nécessaires dans la chaîne de connexion sont le nom du DSN et le mot de passe utilisateur.

Par exemple :

$ "/Library/Application Support/iODBC/bin/iodbctest"

iODBC Demonstration program
This program shows an interactive SQL processor
Driver Manager: 03.52.0607.1008

Enter ODBC connect string (? shows list): dsn=testodbc2;pwd=<password>

Dec 14 20:16:08 INFO  1299 SFConnection::connect: Tracing level: 4

Driver: 2.12.36 (Snowflake - Latest version supported by Snowflake: 2.12.38)

SQL>
Copy