安装和配置适用于 macOS 的 ODBC 驱动程序¶
与 Windows 类似,macOS 利用命名数据源 (DSNs) 将基于 ODBC 的客户端应用程序连接到 Snowflake。
本主题内容:
先决条件¶
操作系统¶
有关 Snowflake 客户端支持的操作系统列表,请参阅 操作系统支持。
对于 ODBC 版本 3.0.1,驱动程序不再支持 MacOS 10.14 和 10.15 版本。
iODBC¶
需要安装适用于 iODBC 的 Snowflake ODBC 驱动程序。
要安装 iODBC,请执行以下操作:
下载 iODBC 后,双击下载的 .dmg 文件。
双击安装程序文件
iODBC-SDK.pkg
,然后按照提示进行操作。默认情况下,包会将软件安装在
/Library/Application Support/iODBC/bin
目录。您可以将此目录添加到$PATH
环境变量,这样在执行任意 iODBC 命令时,便无需每次都指定完整路径名。
备注
iODBC 提供了用于配置驱动程序和 DSNs 的 GUI 管理员工具;但是,此工具尚未经过 Snowflake 测试,因此不应用于创建或管理 DSNs。
第 1 步:安装 ODBC 驱动程序¶
要安装适用于 macOS 的 Snowflake ODBC 驱动程序,请执行以下操作:
如果您尚未下载驱动程序,请立即下载。有关详细信息,请参阅 下载 ODBC 驱动程序。
打开下载的 .dmg 文件
snowflake_odbc_mac-<version>.dmg
。打开安装程序文件
snowflakeODBC_<version>.pkg
,然后按照提示操作。系统可能会提示您输入要安装驱动程序的机器的管理员/sudo 密码。
如果您在收到提示时选择默认目录,安装程序将在以下目录中安装 ODBC 驱动程序文件:
/opt/snowflake/snowflakeodbc
/Library/ODBC
第 2 步:配置 ODBC 驱动程序¶
要配置适用于 macOS 的 ODBC 驱动程序,请创建一个或多个数据源 (DSNs),它们存储在以下文件中,具体取决于您创建的 DSN 类型。
用户 DSNs:
~/Library/ODBC/odbc.ini
系统 DSNs:
/Library/ODBC/odbc.ini
要创建 DSN,请编辑适当的 odbc.ini
文件。
通过在 odbc.ini
文件中添加条目创建 DSN¶
如果已为驱动程序创建了用户或系统 DSN,请将新条目添加到 odbc.ini
文件中,该文件已存在于您要创建的 DSN 类型的相应目录中。如果要为驱动程序创建第一个 DSN,则必须手动创建 odbc.ini
文件并将条目添加到该文件中。
对于每个 DSN,请指定:
DSN 名称和驱动程序名称 (Snowflake),形式为
<dsn_name> = <driver_name>
。驱动程序文件的目录路径和名称,形式为
Driver = /opt/snowflake/snowflakeodbc/lib/universal/libSnowflake.dylib
。连接参数,例如
server
和uid
(用户登录名)。添加到 DSN 的任何连接参数不需要在 ODBC 连接字符串中指定。任何其他参数,例如默认
role
、database
和warehouse
。
参数指定形式为 <parameter_name> = <value>
。有关可为每个 DSN 设置的参数的详细信息,请参阅 ODBC 配置和连接参数。
以下示例说明了一个 odbc.ini
文件,该文件配置两个数据源,这两个数据源在 server
URL 中使用不同形式的 账户标识符:
testodbc1
使用一个使用 账户标识符 的账户标识符,该账户标识符在组织myorganization
中指定账户myaccount
。testodbc2
使用 账户定位器xy12345
作为账户标识符。请注意,
testodbc2
使用 AWS US 西部(俄勒冈)区域中的账户。如果账户位于不同的区域,或者账户使用不同的云提供商,则需要 在账户定位器之后指定其他分段。[ODBC Data Sources] testodbc1 = Snowflake testodbc2 = Snowflake [testodbc1] Driver = /opt/snowflake/snowflakeodbc/lib/universal/libSnowflake.dylib Description = uid = peter server = myorganization-myaccount.snowflakecomputing.cn role = sysadmin [testodbc2] Driver = /opt/snowflake/snowflakeodbc/lib/universal/libSnowflake.dylib Description = uid = mary server = xy12345.snowflakecomputing.cn role = analyst database = sales warehouse = analysis
请注意以下事项:
testodbc1
和testodbc2
都有默认角色。testodbc2
还有默认的数据库和仓库。
第 3 步:测试 ODBC 驱动程序¶
您可以使用 iODBC 提供的 iodbctest
命令行实用程序来测试您创建的 DSNs。
当系统提示输入 ODBC 连接字符串时,输入所需的连接参数(DSN 名称、服务器、用户登录名和密码),以及您想要作为连接字符串的一部分输入的任何其他参数。连接字符串采用 <parameter_name>=<value>
形式的参数,例如 dsn=testodbc2
,每个参数用分号 (;
) 分隔,并且没有空格。有关支持的参数列表,请参阅 ODBC 配置和连接参数。
备注
如果在 DSN 中设置服务器和用户登录名,则连接字符串中唯一需要的参数是 DSN 名称和用户密码。
例如:
$ "/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>