當我嘗試在 Navicat(App Store 版)中建立與 SQL Server 的連線時,收到一條錯誤訊息,指出需要 SQL Server ODBC 驅動程式。那是什麼,我該做什麼?
更新於
可應用作業系統:macOS
可應用 Navicat 產品:Navicat for SQL Server、Navicat Premium(App Store 版)
必須安裝 Microsoft ODBC Driver for SQL Server,才能建立至 Microsoft SQL Server 執行個體的直接連線。
為什麼我會看到此錯誤?
在 macOS 上,強化安全性的應用程式與 Mac App Store 應用程式會在由 Apple 強制的安全沙盒內執行。
當你透過如 Homebrew 這類標準套件管理員安裝 Microsoft ODBC 驅動程式時,驅動程式二進位檔(libmsodbcsql.18.dylib)及其資源會被安裝在資料夾內(例如 Apple Silicon 晶片上的 /opt/homebrew 或 Intel 晶片上的 /usr/local)。由於嚴格的沙盒政策,系統嚴格禁止 App Store 應用程式讀取這些使用者空間的 Homebrew 目錄。
為了解決這個問題,必須將 SQL Server ODBC 驅動程式放置在全系統、沙盒可存取的資料夾(/Library/ODBC/)中,並在系統設定中正確註冊。
步驟 1:安裝 Microsoft ODBC 驅動程式
首先,請確保你的 Mac 上已安裝官方的 Microsoft SQL Server ODBC 驅動程式。
- 開啟終端機應用程式。
- 如果你尚未安裝 Homebrew,請按照 brew.sh 上的指示進行安裝。
-
執行以下指令來安裝 Microsoft ODBC 驅動程式與標準 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. 使指令碼可執行
- 開啟終端機應用程式。
- 瀏覽至你儲存指令碼的資料夾(例如 Downloads 資料夾): cd ~/Downloads
-
將指令碼標示為可執行:
chmod +x configure_mac_mssql_odbc.sh
3. 執行指令碼
使用 sudo 執行指令碼,以取得寫入系統 /Library/ODBC/ 目錄的權限:
sudo ./configure_mac_mssql_odbc.sh
步驟 3:驗證連線
重新啟動 Navicat 並測試連線。
-
合作夥伴