본문 바로가기
Programming/PHP

PHP7.0에서 mssql 사용하기

by 신규하 2017. 4. 20.

php7.0 부터는 mssql_connect 함수가 바로 지원되지 않습니다. 그래서 다른 방법으로 mssql을 사용 해야 합니다.
그 중 한가지 방법인 sqlsrv를 사용해서 mssql을 사용하는 방법을 정리 해 봤습니다.

Ubuntu 16.04

sudo su 
curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add -
curl https://packages.microsoft.com/config/ubuntu/16.04/prod.list > /etc/apt/sources.list.d/mssql-release.list
exit
sudo apt-get update
sudo ACCEPT_EULA=Y apt-get install -y msodbcsql mssql-tools unixodbc-dev
sudo pecl install sqlsrv
sudo pecl install pdo_sqlsrv

CentOS 7

sudo su
curl https://packages.microsoft.com/config/rhel/7/prod.repo > /etc/yum.repos.d/mssql-release.repo
exit
sudo yum update
sudo ACCEPT_EULA=Y yum install -y msodbcsql mssql-tools unixODBC-devel 
sudo yum groupinstall "Development Tools"
sudo pecl install sqlsrv
sudo pecl install pdo_sqlsrv

sqlsrv 설정하기

php.ini 파일에 아래 내용을 추가해 줍니다.

extension=sqlsrv.so
extension=pdo_sqlsrv.so

또는 /etc/php/7.0/mods-available 위치에 sqlsrv.ini 파일을 만들어 넣으시고 위 내용을 넣으시고, /etc/php/7.0/fpm/conf.d와 같이 conf.d 폴더에 심볼릭 링크를 연결 해 주셔도 됩니다.

사용해 보기

<?php
$serverName = "localhost";
$connectionOptions = array(
    "Database" => "SampleDB",
    "Uid" => "sa",
    "PWD" => "your_password"
);
//Establishes the connection
$conn = sqlsrv_connect($serverName, $connectionOptions);
if($conn)
    echo "Connected!"
?>

참고

댓글