Bagikan melalui


Menginstal driver Microsoft ODBC untuk SQL Server (macOS)

Artikel ini menjelaskan cara menginstal Microsoft ODBC Driver untuk SQL Server di macOS. Ini juga mencakup instruksi untuk alat baris perintah opsional untuk SQL Server (bcp dan sqlcmd) dan header pengembangan unixODBC.

Artikel ini menyediakan perintah untuk menginstal driver ODBC dari shell bash. Jika Anda ingin mengunduh paket secara langsung, lihat Mengunduh Driver ODBC untuk SQL Server.

Catatan

Driver Microsoft ODBC untuk SQL Server di macOS hanya didukung pada arsitektur x64 melalui versi 17.7. Dukungan Apple ARM64 (M1, M2, M3, dan chip Apple Silicon yang lebih baru) ditambahkan mulai versi 17.8. Rumus Homebrew mendeteksi arsitektur dan secara otomatis menginstal paket yang benar. Jika prompt perintah Anda beroperasi dalam mode emulasi x64 pada ARM64, itu berarti paket x64 sudah terinstal. Jika Anda tidak berjalan dalam mode emulasi, paket ARM64 diinstal. Selain itu, direktori default Homebrew berubah dengan arsitektur ARM64, menjadi /opt/homebrew. Jalur di bagian File driver menggunakan jalur Homebrew x64, yang default ke /usr/local, sehingga jalur file Anda akan bervariasi sesuai.

Driver Microsoft ODBC untuk macOS dirancang untuk bekerja dengan unixODBC (diinstal oleh Homebrew). Jika Anda menggunakan iODBC sebagai manajer driver, Anda mungkin mengalami kesalahan arsitektur yang tidak cocok seperti incompatible architecture (have 'arm64', need 'x86_64'). Untuk mengatasi masalah ini, gunakan unixODBC alih-alih iODBC. Homebrew secara otomatis menginstal unixODBC sebagai dependensi paket msodbcsql18 .

Microsoft ODBC 18

Untuk menginstal driver Microsoft ODBC 18 untuk SQL Server di macOS, jalankan perintah berikut:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
brew tap microsoft/mssql-release https://github.com/Microsoft/homebrew-mssql-release
brew update
HOMEBREW_ACCEPT_EULA=Y brew install msodbcsql18 mssql-tools18

Versi sebelumnya

Bagian berikut ini menyediakan instruksi untuk menginstal versi driver Microsoft ODBC sebelumnya di macOS.

Microsoft ODBC 17

Untuk menginstal driver Microsoft ODBC 17 untuk SQL Server di macOS, jalankan perintah berikut:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
brew tap microsoft/mssql-release https://github.com/Microsoft/homebrew-mssql-release
brew update
HOMEBREW_ACCEPT_EULA=Y brew install msodbcsql17 mssql-tools

Penting

Jika Anda menginstal paket v17 msodbcsql yang hanya tersedia sebentar, Anda harus menghapusnya sebelum menginstal paket msodbcsql17. Ini akan menghindari konflik. Paket msodbcsql17 dapat diinstal berdampingan satu sama lain dengan paket msodbcsql v13.

ODBC 13.1

Gunakan perintah berikut untuk menginstal driver Microsoft ODBC 13.1 untuk SQL Server pada OS X 10.11 (El Capitan) dan macOS 10.12 (Sierra):

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
brew tap microsoft/mssql-release https://github.com/Microsoft/homebrew-mssql-release
brew update
brew install msodbcsql@13.1.9.2 mssql-tools@14.0.6.0

File driver

Driver ODBC di macOS terdiri dari komponen berikut:

Komponen Deskripsi
libmsodbcsql.18.dylib atau libmsodbcsql.17.dylib atau libmsodbcsql.13.dylib File pustaka dinamis (dylib) yang berisi semua fungsionalitas driver. File ini diinstal di /usr/local/lib/.
msodbcsqlr18.rll atau msodbcsqlr17.rll atau msodbcsqlr13.rll Berkas sumber daya yang menyertai pustaka driver. File ini diinstal untuk [driver .dylib directory]../share/msodbcsql18/resources/en_US/ Driver 18, [driver .dylib directory]../share/msodbcsql17/resources/en_US/ untuk Driver 17, dan di [driver .dylib directory]../share/msodbcsql/resources/en_US/ untuk Driver 13.
msodbcsql.h File header yang berisi semua definisi baru yang diperlukan untuk menggunakan driver.

Catatan: Anda tidak dapat mereferensikan msodbcsql.h dan odbcss.h dalam program yang sama.
msodbcsql.h diinstal di /usr/local/include/msodbcsql18/ untuk Driver 18, di /usr/local/include/msodbcsql17/ untuk Driver 17, dan di /usr/local/include/msodbcsql/ untuk Driver 13.
LICENSE.txt File teks yang berisi ketentuan Perjanjian Lisensi Pengguna Akhir. File ini ditempatkan untuk /usr/local/share/doc/msodbcsql18/ Driver 18, /usr/local/share/doc/msodbcsql17/ untuk Driver 17, dan di /usr/local/share/doc/msodbcsql/ untuk Driver 13.
Catatan Rilis File teks yang berisi catatan rilis. File ini ditempatkan untuk /usr/local/share/doc/msodbcsql18/ Driver 18, /usr/local/share/doc/msodbcsql17/ untuk Driver 17, dan di /usr/local/share/doc/msodbcsql/ untuk Driver 13.

Pemuatan file sumber daya

Driver perlu memuat file sumber daya agar berfungsi. File ini disebut msodbcsqlr18.rll, msodbcsqlr17.rll, atau msodbcsqlr13.rll tergantung pada versi driver. Lokasi .rll file relatif terhadap lokasi driver itu sendiri (so atau dylib), seperti yang tercantum dalam tabel komponen. Pada versi 17.1 driver juga mencoba memuat .rll dari direktori default jika pemuatan dari jalur relatif gagal. Jalur file sumber daya default di macOS adalah /usr/local/share/msodbcsql18/resources/en_US/

Pemecahan Masalah

Beberapa pengguna mengalami masalah saat mencoba terhubung setelah menginstal driver ODBC dan menerima kesalahan seperti: "[01000] [unixODBC][Driver Manager]Can't open lib 'ODBC Driver 18 for SQL Server' : file not found (0) (SQLDriverConnect)". Mungkin kasus bahwa unixODBC tidak dikonfigurasi dengan benar untuk menemukan driver terdaftar. Dalam kasus ini, membuat tautan simbolis dapat menyelesaikan masalah.

Jalur yang benar bergantung pada arsitektur Mac Anda. Jalankan brew --prefix untuk menentukan awalan penginstalan Homebrew Anda:

  • Apple Silicon (ARM64) — Awalan homebrew adalah /opt/homebrew
  • Intel (x64) — Awalan homebrew adalah /usr/local

Untuk Apple Silicon (ARM64) Mac:

sudo ln -s /opt/homebrew/etc/odbcinst.ini /etc/odbcinst.ini
sudo ln -s /opt/homebrew/etc/odbc.ini /etc/odbc.ini

Untuk Intel (x64) Mac:

sudo ln -s /usr/local/etc/odbcinst.ini /etc/odbcinst.ini
sudo ln -s /usr/local/etc/odbc.ini /etc/odbc.ini

Catatan

Di macOS 15 (Sequoia) dan yang lebih baru, /usr/local/etc/ direktori mungkin tidak ada secara default, terutama di Apple Silicon Macs. Jika direktori tidak ada, file konfigurasi ODBC terletak di bawah awalan Homebrew Anda. Jalankan brew --prefix untuk memverifikasi jalur yang benar untuk sistem Anda.

Untuk kasus lain di mana Anda tidak dapat membuat koneksi ke SQL Server menggunakan driver ODBC, lihat artikel masalah yang diketahui tentang pemecahan masalah koneksi.

Jika brew mengalami masalah saat menemukan rumus, pastikan Anda tidak melewati langkah penginstalan: brew tap microsoft/mssql-release https://github.com/Microsoft/homebrew-mssql-release