当我尝试在 Navicat(APP Store版本)创建 SQL Server 连接时,出现“需要 SQL Server ODBC 驱动程序。”的报错消息,这是什么意思,我该怎么办?
更新于
适用操作系统:macOS
适用 Navicat 产品:Navicat BI,Navicat BI Viewer(App Store 版本)
若需要直接连接 Microsoft SQL Server 实例,则需要使用SQL Server 的 Microsoft ODBC Driver 的驱动程序。
为什么会出现这个错误呢?
在 macOS 上,经过安全加固且来自 Mac App Store 的应用程序都在由 Apple 强制执行的安全沙箱环境中运行。
当你通过像 Homebrew 这样的标准包管理器来安装微软 ODBC 驱动程序时,驱动程序二进制文件(libmsodbcsql.18.dylib)及其相关资源会被安装在特定的文件夹内(例如,在苹果芯片系统上为 /opt/homebrew,而在英特尔系统上为 /usr/local)。由于严格的沙箱机制,App Store 应用程序被严格禁止读取这些用户空间的 Homebrew 文件夹。
为了解决这个问题,必须将 SQL Server ODBC 驱动程序放置在系统范围内且可被沙箱访问的文件夹中(/Library/ODBC/),并按照系统配置的要求进行正确注册。
步骤 1:安装 Microsoft ODBC Driver
首先,请确保你的 Mac 上已安装了Microsoft SQL Server 的官方 ODBC 驱动程序。
- 打开系统的“终端”应用程序。
如果你尚未安装 Homebrew,请按照 brew.sh 上的说明进行安装。
-
通过运行以下命令来安装Microsoft ODBC Driver 驱动程序和标准的 unixODBC 工具:
# Add Microsoft's tap brew tap microsoft/mssql-release [https://github.com/Microsoft/homebrew-mssql-release](https://github.com/Microsoft/homebrew-mssql-release) # Update brew formulas brew update # Install the driver (Accept the EULA when prompted) ACCEPT_EULA=Y brew install msodbcsql18 mssql-tools18
步骤 2:配置可访问沙箱的驱动程序
如果在通过 Homebrew 安装后,在应用程序内部仍出现报错,请运行我们的配置脚本。该脚本会将驱动程序及其相关的本地化资源复制到一个安全且可进行沙箱访问的系统路径中。
1.下载配置脚本
请从以下链接下载 Microsoft ODBC 配置脚本:https://dn.navicat.com/drivers/configure_mac_mssql_odbc.sh
2.使脚本可执行
- 打开系统的“终端”应用程序。
导航至你保存脚本的文件夹所在位置(例如,你的“下载”文件夹):cd ~/Downloads
-
将该脚本标记为可执行文件:
chmod +x configure_mac_mssql_odbc.sh
3.运行脚本
使用“sudo”命令执行此脚本,以授予对系统“/Library/ODBC/”目录进行写入操作的权限:
sudo ./configure_mac_mssql_odbc.sh
步骤 3:验证连接
重新启动 Navicat 并测试连接。
-
合作伙伴