Installing and Configuring the ODBC Driver for macOS

Similar to Windows, macOS utilizes named data sources (DSNs) for connecting ODBC-based client applications to Snowflake.

In this Topic:


Operating System

For a list of the operating systems supported by Snowflake clients, see Operating System Support.


The Snowflake ODBC driver for Mac requires iODBC, which is available for download from:

To install iODBC:

  1. After downloading iODBC, double-click on the downloaded .dmg file.

  2. Double-click on the installer file, iODBC-SDK.pkg, and follow the prompts.


iODBC provides a GUI administrator tool for configuring drivers and DSNs; however, this tool has not been tested for use with Snowflake and, therefore, should not be used to create or manage DSNs. Use ODBC Manager instead.

Step 1: Install the ODBC Driver

To install the Snowflake ODBC driver for macOS:

  1. If you haven’t already downloaded the driver, download it now. For details, see Downloading the ODBC Driver.

  2. Double-click on the downloaded .dmg file, snowflake_odbc_mac-<version>.dmg.

  3. Double-click on the installer file, snowflakeODBC_<version>.pkg, and follow the prompts.

    You will likely be prompted for the administrator/sudo password for the machine on which you are installing the driver.

If you choose the default directory when prompted, the installer installs the ODBC driver files in the following directories:



Step 2: Configure the ODBC Driver

To configure the ODBC driver for macOS, create one or more data source (DSNs), which are stored in the following files, depending on the type of DSN you create:

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

  • System DSNs: /Library/ODBC/odbc.ini

To create a DSN, either use ODBC Manager or edit the appropriate odbc.ini file.

Creating a DSN Using ODBC Manager

To create a DSN in ODBC Manager:

  1. Start ODBC Manager.

  2. Click on User DSN or System DSN.

  3. Click the Add button.

  4. Select the driver to use (Snowflake) and click OK.

  5. Enter the name of the DSN and optionally a description.

  6. Create a Keyword/Value pair for each DSN parameter:

    1. Click Add to create a Keyword/Value pair.

    2. Select Keyword and replace it with the parameter name.

    3. Select Value and replace it with the value for the parameter.

    Repeat this process for each parameter. For details about the parameters that can be set for each DSN, see ODBC Configuration and Connection Parameters.

  7. Click OK to create the DSN.

If you are creating the first user or system DSN for the ODBC driver, ODBC Manager creates the odbc.ini file in the corresponding directory for the type of DSN you are creating. If you are creating additional DSNs, ODBC Manager adds entries for each DSN to the existing odbc.ini file.

Creating a DSN by Adding an Entry in the odbc.ini File

If a user or system DSN has already been created for the driver, add the new entry to the odbc.ini file that already exists in the corresponding directory for the type of DSN you are creating. If you are creating the first DSN for the driver, you must manually create the odbc.ini file and add the entry to the file.

For each DSN, specify:

  • DSN name and driver name (Snowflake), in the form of <dsn_name> = <driver_name>.

  • Directory path and name of the driver file, in the form of Driver = /opt/snowflake/snowflakeodbc/lib/universal/libSnowflake.dylib.

  • Connection parameters, such as server and uid (user login name). Any connection parameters you add to the DSN do not need to be specified in the ODBC connect string.

  • Any additional parameters, such as default role, database, and warehouse.

Parameters are specified in the form of <parameter_name> = <value>. For details about the parameters that can be set for each DSN, see ODBC Configuration and Connection Parameters.

The following example illustrates an odbc.ini file containing two drivers, testodbc1 for account xy12345 (located in the AWS US West region) and testodbc2 for account yz23456 (located in the AWS US East region):

[ODBC Data Sources]
testodbc1 = Snowflake
testodbc2 = Snowflake

Driver      = /opt/snowflake/snowflakeodbc/lib/universal/libSnowflake.dylib
Description =
uid         = peter
server      =
role        = sysadmin

Driver      = /opt/snowflake/snowflakeodbc/lib/universal/libSnowflake.dylib
Description =
uid         = mary
server      =
role        = analyst
database    = sales
warehouse   = analysis

Note the following:

  • Both testodbc1 and testodbc2 have default roles.

  • testodbc2 also has a default database and warehouse.

Step 3: Test the ODBC Driver

You can use the iodbctest command line utility provided with iODBC to test the DSNs you create.

When prompted for the ODBC connect string, enter the required connection parameters (DSN name, server, user login name, and password), as well as any other parameters that you would like to enter as part of the connect string. The connect string takes parameters in the form of <parameter_name>=<value>, e.g. dsn=testodbc2, with each parameter separated by a semi-colon (;) and no blank spaces. For the list of supported parameters, see ODBC Configuration and Connection Parameters.


If you set the server and user login name in the DSN, the only required parameters in the connect string are the DSN name and user password.

For example:

$ 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)