Memasang Driver SQL Server Untuk PHP 7.1 di OS Ubuntu 16.0.4

Memasang Driver SQL Server Untuk PHP 7.1 di OS Ubuntu 16.0.4

Baiklah, sebetulnya ada tutorial resmi berbahasa Inggris yang dibuat oleh Microsoft yang awak kira sudah lengkap, karena di sana juga dijelaskan mengenai pemasangan SQL Servernya di localhost. Di sini awak hanya bantu menerjemahkan ke bahasa awak ini dan spesifik membahas pemasangan ODBC, Driver PHP7.1 saja yang untuk ubuntu16.0.4 (sebetulnya awak pakai Elementary OS versi Loki) karena derivatifnya juga Ubuntu 16.0.4, juga di PHP versi 7.1.x. Selain itu belum pernah pakai.

Mengapa pakai SQL Server? Karena di tempat kerja memang menggunakan itu. Lisensinya ada, tinggal mau pake apa tidak, kata Pak Dhe.

Awak anggap klen belum punya PHP7.1 di dalam sistemnya, karena awak pun membikeunnya dari OS yang masih kosbar PHPnya.
Pertama pasang Http Apache Server

sudo apt-get install -y apache2

Coba dulu buka browser lalu ketik http://localhost/
untuk memastikan localhost di port standar : 80 sudah nyala.

Kedua tentu pasang PPA PHP karena keluarga Ubuntu tidak menyertakan repo ini secara default

sudo add-apt-repository ppa:ondrej/php -y
sudo apt update

Lanjut dengan PHPnya

sudo apt-get install -y php7.1 libapache2-mod-php7.1 php7.1-cli php7.1-common php7.1-mbstring php7.1-gd php7.1-intl php7.1-xml php7.1-mysql php7.1-mcrypt php7.1-zip php7.1-bcmath php7.1-gmp php7.1-dev php7.1-curl --allow-unauthenticated

Sebagai catatan : php7.1-dev itu diperlukan untuk proses compiling extensi php SQL Server.

Untuk menguji apakah PHP sudah dikenali oleh Apache. Coba buat sebuah file info.php di direktory /var/www/html
yang isinya berikut:

 <?php phpinfo(); ?>

Simpan lalu jalankan browser dengan mengakses http://localhost/info.php

Jika muncul seperti gambar di bawah, maka dijamin PHP sudah oke.

Lanjut ke ODBC Driver. Ini adalah penghubung PC/Server milik anda dengan Server SQL (Oh Iya, Ubuntu, Debian, Suse dan Redhat linux sekarang ini juga sudah bisa diinstall SQL Server Lho), jadi konek ke SQL Server di localhost anda bisa dilakukan. Ingat, SQL Server itu lisensinya berbayar.

Ada 2 cara memasang ODBC Driver

1. Dengan mendownload package .deb langsung
Saat tulisan ini dibuat ODBC ada pada versi terakhir : ODBC 17.2.0.1-1_amd64 silahkan klik saja untuk Download. Linknya langsung ke Microsoft bukan ke AdFly (awak nggak cari makan di blog). Untuk versi lain silahkan klik di sini Index Of ODBC Driver Ubuntu

Untuk memasang package .deb bisa pakai bantuan Mas Eddy Biasanya sudah disediakan dalam AppCenter (Elementary) atau di Ubuntu Software Center.

2. Melalui CLI (yang lebih disukai)

sudo apt install curl
sudo curl https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add -
sudo curl https://packages.microsoft.com/config/ubuntu/16.04/prod.list | sudo tee /etc/apt/sources.list.d/mssql-tools.list
sudo apt-get update
sudo ACCEPT_EULA=Y apt-get install mssql-tools
sudo apt-get install unixodbc-dev
echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bash_profile
echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrc
source ~/.bashrc

Kita uji dulu konek ke SQL Server

sqlcmd -S servername -U sa -P yourpassword
1> # You're connected! Type your T-SQL statements here. Use the keyword 'GO' to execute each batch of statements.

Catatan : servername bisa diganti IP address, sa adalah username standar SQL Server

Jika teks You’re connected! muncul, maka dijamin tokcer.

Langkah selanjutnya adalah mengcompile dan memasang PHP SQL Driver

sudo pecl install sqlsrv pdo_sqlsrv
sudo echo "extension= pdo_sqlsrv.so" >> `php --ini | grep "Loaded Configuration" | sed -e "s|.*:\s*||"`
sudo echo "extension= sqlsrv.so" >> `php --ini | grep "Loaded Configuration" | sed -e "s|.*:\s*||"`

Proses ini membutuhkan waktu, tergantung kekuatan PC.

Berikutnya mengaitkan PHP ke Apache2

sudo su
apt-get install libapache2-mod-php7.1 apache2
a2dismod mpm_event
a2enmod mpm_prefork
a2enmod php7.1
echo "extension=pdo_sqlsrv.so" >> /etc/php/7.1/apache2/conf.d/30-pdo_sqlsrv.ini
echo "extension=sqlsrv.so" >> /etc/php/7.1/apache2/conf.d/20-sqlsrv.ini
sudo service apache2 restart

Setelah semua rampung, kita akan coba menguji kembali dengan mengakses halaman http://localhost/info.php yang kita buat sebelumnya.

Pastikan pada tabel PDO sudah ada sqlsrv dan juga ada judul tabel pdo_sqlsrv
Jangan lupa file info.php dihapus ya!

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *