본문 바로가기
database/mysql

FreeTDS 를 이용한 php mssql (WhatsUp 데이터 가져오기)


WhatsUp은 DB를 MSSQL 을 사용한다.
php환경에서 해당 데이터를 가져와서 활용하기 위해서는  PHP 에 FREE TDS 모듈을 이용해야 한다.

[root@localhost src]# tar xvzf freetds-0.82.tar.gz 
[root@localhost src]# cd freetds-0.82
[root@localhost freetds-0.82]# ./configure --prefix=/usr/local/freetds \
--with-tdsver=8.0 \
--enable-msdblib \
--enable-dbmfix \
--enable-shared \

--enable-static

[root@localhost freetds-0.82]# make && make install
[root@localhost freetds-0.82]# vi /usr/local/freetds/etc/freetds.conf 
----------------------------------------------------------------------------
 [global]
...
        client charset = CP949     ; 어떤 시스템은 이 설정내용을 인식하지 못한다. 못하면 빼버린다.
                                        
...

----------------------------------------------------------------------------

php 설치 할때  -with-mssql=/usr/local/freetds
-----------------------------------------------------------------------------
연동 테스트

<?

$hostname = "123.123.123.1231433"; // 서버 ip
$username = "cy"; //db 접근 user
$password = "123123"; //db 접근 user password
$dbname = "WhatsUp"; //DB 이름

$mscon=MSSQL_CONNECT($hostname, $username, $password) or DIE("DATABASE FAILED TO RESPOND.");
mssql_select_db($dbname, $mscon) or DIE("Table unavailable");

$sql="select nDeviceID,sDisplayName,sStatus from Device where nWorstStateID like 10";
$result=mssql_query($sql, $mscon);
while ($row = mssql_fetch_row($result)) {


        echo "<a target=blank href=http://test.com/NmConsole/Workspace/DeviceStatus/DeviceStatus.asp?nDeviceID=$row[0]>";
        echo $row[1];
        echo $row[2];
        echo "</a><p>";
}


mssql_close($mscon);




?>


반응형