Apache + PHP7 설치는 이전글 참고

이전글 : http://oerun.tistory.com/2 

SQL Server 연결을 위해서는 리눅스용 드라이버가 필요하다.

아래 사이트에서 "CentOS7.tar" 파일을 내려받는다. 현재 최신버전은 4.0.6이다.


https://github.com/Microsoft/msphpsql/releases


내려받은 압축파일에는 아래와 같이 파일이 들어있으며, 필요한 파일은 "php_sqlsrv_7_nts.so" 파일이다.

* php_pdo_sqlsrv_7_nts.so 파일을 사용해야 할 것 같으나 로드 시 오류가 발생한다.


"php_sqlsrv_7_nts.so" 파일을 /etc/php.ini에서 설정한 extension_dir 경로(/usr/lib64/php/modules)에 복사한다.


복사 후 권한을 설정한다.

# chmod 755 /usr/lib64/php/modules/php_sqlsrv_7_nts.so

/etc/php.ini 파일을 열어 적당한 위치에 아래와 같이 추가한다.


Apache를 재시작한다.

# systemctl restart httpd


● SQL Server 연결을 위한 FreeTDS 설치

# yum install -y freetds-devel libxml2-devel
# cp -a /etc/freetds.conf /etc/freetds.conf.original
# sed -i '13,15s/;/ /' /etc/freetds.conf
# sed -i '13,15s/tds version = 4.2/tds version = 8.0\n        client charset = EUC-KR/' /etc/freetds.conf
# cp -a /etc/locales.conf /etc/locales.conf.original
# sed -i '2,2s/date format = %b %e %Y %I:%M:%S:%z%p/date format = %Y-%m-%d %H:%M:%S\n        charset = euc-kr/' /etc/locales.conf


● 연결을 위한 PHP 소스

<?
$DB_HOST = "HOST_IP"; 
$DB_NAME = "TEST"; 
$DB_USER = "USER"; 
$DB_PW   = 'DBPW'; 

try {
	$Conn = new PDO("dblib:host=$DB_HOST:1433; dbname=$DB_NAME;", $DB_USER, $DB_PW);
	$Conn -> setAttribute( PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION );
} catch(Exception $e) {
	die( print_r( $e -> getMessage() ) );
}

try {
	$Qry = "SELECT * FROM [TABLE_NAME]"; 
	$Rslt = $Conn -> prepare($Qry); 
	$Rslt -> execute();
	$Rslt_Data = $Rslt -> fetchAll(PDO::FETCH_ASSOC);
} catch(Exception $e) {
	echo $e -> getMessage();
	exit;
}

foreach ( $Rslt_Data as $LIST ) {
	echo "$LIST[FIELD_NAME]<br>";
}
?>



+ Recent posts