Running SQL Server di MacOS

Salah satu bagian penting di dunia IT adalah database. Dari mulai web server, data transaksi, data karyawan dan masih banyak lagi, pasti menggunakan database. Database ini ada yang sudah bundle dengan suatu aplikasi ataupun database yang di build dari awal oleh admin untuk sekedar menyimpan data-data ataupun di integrasikan dengan aplikasi lain. Tapi jaman sekarang tetap kemampuan untuk mengelola database ini bisa dibilang penting bagi admin IT karena hampir semua software memiliki database.

Untuk mengolah database bisa menggunakan software DBMS (DataBase Management System) yang beredaran dimana-mana, dari mulai yang free sampai yang berbayar, dengan kelebihan dan kelemahan masing-masing tentunya. Beberapa software DBMS yang biasanya digunakan adalah Oracle, Microsoft SQL Server, MySQL Server, MariaDB Server, PostgreSQL. Dari software yang saya sebutkan, semuanya umum digunakan untuk production perusahaan ataupun development. Secara kemampuan, ada 2 software DBMS yang bisa dibilang sangat bagus, yaitu Oracle dan Microsoft SQL Server yang merupakan software berbayar dan menjadi standar di perusahaan berskala besar.

Sekitar 2 pekan lalu, saya diberi tugas oleh dosen saya untuk instal Microsoft SQL Server. Software DBMS milik microsoft ini hanya bisa dijalankan di atas sistem operasi Windows, sedangkan saya sehari-hari menggunakan MacOS. Setelah saya cari ternyata Microsft mengeluarkan MS SQL Server versi 2017 yang bisa dijalankan diatas sistem operasi LInux, akhirnya saya coba cari cara untuk menjalankan MS SQL Server versi 2017 menggunakan Docker di Mac saya dan ternyata bisa.

Dibawah ini saya akan menunjukkan langkah-langkah untuk melakukannya.

Install & Run Docker

Untuk instal Docker di MacOS sangat mudah, tinggal klik-klik saja jadi seharusnya bagian ini tidak sulit.

  • Download file installer Docker untuk MacOS (.dmg) di link berikut https://docs.docker.com/v17.12/docker-for-mac/install/#download-docker-for-mac kita pilih yang Stable saja
  • Klik file installer yang sudah di download
  • Drag&drop icon Docker ke direktori Application
  • Buka aplikasi Docker
  • Klik OK, masukkan password akun administrator
  • Tunggu sampai Docker berstatus “Docker Desktop is running”

Run MS SQL Server

  • Buka terminal MacOS
  • Download images MS SQL Server untuk Linux menggunakan perintah berikut
    Colamen:~ raihan$ docker pull microsoft/mssql-server-linux
    Using default tag: latest
    latest: Pulling from microsoft/mssql-server-linux
    59ab41dd721a: Pull complete 
    57da90bec92c: Pull complete 
    06fe57530625: Pull complete 
    5a6315cba1ff: Pull complete 
    739f58768b3f: Pull complete 
    0b751601bca3: Pull complete 
    bcf04a22644a: Pull complete 
    6b5009e4f470: Pull complete 
    a9dca2f6722a: Pull complete 
    Digest: sha256:9b700672670bb3db4b212e8aef841ca79eb2fce7d5975a5ce35b7129a9b90ec0
    Status: Downloaded newer image for microsoft/mssql-server-linux:latest
  • Jalankan container dari image MS SQL Server. Untuk bagian SA_PASSWORD=…. harus diisi strong password karena jika tidak maka MS SQL Server tidak akan running
    Colamen:~ raihan$ docker run -d --name sql_server -e 'ACCEPT_EULA=Y' -e 'SA_PASSWORD=reallyStrongPwd123' -p 1433:1433 microsoft/mssql-server-linux
    b57581b369be00191d8c2c3db7ad0d13c177e2a2f4f14c8132ee95797442ee83
  • Setelah itu mysql sudah bisa dikoneksikan dari mesin lain ataupun dari MacOS tempat MS SQL Server langsung. Tapi untuk hal itu ada command line tool yang harus di instal terlebih dahulu

Install NodeJs

NodeJs ini adalah semacam tool untuk instal software. NodeJs ini akan kita gunakan untuk instal software command line tool SQL, jadi NodeJs ini buka command line tool yang saya maksud.

Install sql-cli

  • Untuk instal command line tool SQL bisa menggunakan perintah
    Colamen:~ raihan$ sudo npm install -g sql-cli
    npm WARN deprecated sprintf@0.1.5: The sprintf package is deprecated in favor of sprintf-js.
    npm WARN deprecated core-js@1.2.7: core-js@<2.6.5 is no longer maintained. Please, upgrade to core-js@3 or at least to actual version of core-js@2.
    /usr/local/bin/mssql -> /usr/local/lib/node_modules/sql-cli/bin/mssql
    + sql-cli@0.6.2
    added 46 packages from 83 contributors in 7.245s

Koneksi ke MS SQL Server

  • Untuk mengkoneksikan MacOS dengan MS SQL Server yang sudah berjalan di Docker bisa menggunakan perintah berikut
    Colamen:~ raihan$ mssql -u sa -p reallyStrongPwd123
    Connecting to localhost...done
    
    sql-cli version 0.6.2
    Enter ".help" for usage hints.
    mssql> 

2 comments

  1. Permisi kak, aku coba instal sql server pakai docker juga. Tapi kemudian pakai azure sql database. Kalau mau ngeattach database gmana ya kak? Soalnya pakai mac jadi bingung cara”nya

    1. Halo Kak Annisa,

      Bisa coba tambahkan parameter -v saat menjalankan perintah docker. Nanti kurang lebih contoh perintahnya seperti ini jika menggunakan container sql server

      docker run -d -v /path/existing/database:/path/sql-db/di-container --name sql_server -e 'ACCEPT_EULA=Y' -e 'SA_PASSWORD=reallyStrongPwd123' -p 1433:1433 microsoft/mssql-server-linux

Leave a Reply

Your email address will not be published.