You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在M1苹果芯片Mac上成功安装Snowflake的ODBC驱动?

M1芯片Mac Snowflake ODBC驱动故障解决方案

问题1:iodbctest测试提示no matching architecture in universal wrapper

该报错核心原因为你使用的2.24.1版本Snowflake ODBC驱动仅支持x86_64架构,M1芯片原生运行 iodbc 工具时无法识别对应架构镜像,可通过以下两种方案解决:

  • 优先升级ODBC驱动到2.25.0及以上版本,该版本起驱动提供适配arm64架构的通用二进制包,可原生运行在M1芯片设备上
  • 若必须使用2.24.1版本,可通过Rosetta 2转译运行测试终端:打开访达→应用程序→实用工具,右键点击「终端」选择「显示简介」,勾选「使用Rosetta打开」,重启终端后再次执行iodbctest测试即可

你可运行以下命令验证当前驱动支持的架构:

lipo -info /opt/snowflake/snowflakeodbc/lib/universal/libSnowflake.dylib

适配M1的驱动会输出 x86_64 arm64,若仅输出x86_64说明当前驱动无arm64支持。

问题2:R语言DBI连接报错Unable to locate SQLGetPrivateProfileString function

该报错是因为Snowflake ODBC驱动依赖iODBC框架的库函数,系统或R会话未正确加载对应库路径导致,可按以下步骤修复:

  • 首先确认已安装iODBC运行库,若使用Homebrew可直接执行命令brew install libiodbc完成安装
  • 编辑当前用户的shell配置文件(zsh对应~/.zshrc,bash对应~/.bash_profile),添加以下环境变量:
export ODBCINI=/etc/odbc.ini
export ODBCSYSINI=/etc
export DYLD_LIBRARY_PATH=/opt/snowflake/snowflakeodbc/lib:/usr/local/lib:$DYLD_LIBRARY_PATH
  • 执行source ~/.zshrc(或对应bash配置文件)让环境变量生效,完全重启R会话后再次尝试连接
  • 若仍报错,可修改/etc/odbcinst.ini中的Snowflake驱动配置,补充DriverODBCVer = 03.80参数,同时确认Setup配置项路径和Driver路径一致,均指向/opt/snowflake/snowflakeodbc/lib/universal/libSnowflake.dylib

内容的提问来源于stack exchange,提问作者kgilvi3

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.03 12:30:04