본문 바로가기

Story/php

apache + php 환경에서 mssql connection 하기

반응형

apache + php 환경에서 mssql connection 하기

출저 : phpschool.com Tip&Tech

1. 패키지다운 받기

http://www.freetds.org에서 패키지를 다운받습니다.

2. freetds 패키지 설치하기

[root@soma src]# tar -xvzf freetds-stable.tgz
[root@soma src]# cd freetds-0.62.1
[root@soma freetds-0.62.1]# ./configure --prefix=/usr/local/freetds --with-tdsver=8.0 --enable-msdblib
--enable-dbmfix --with-gnu-ld --enable-shared --enable-static

mssql2000 과 connection 할 경우 : --with-tdsver=8.0
msql 7 과 connection 할 경우 : --with-tdsver=7.0 옵션을 주어 설치를 하시길 바랍니다.

[root@soma freetds-0.62.1]# make
[root@soma freetds-0.62.1]# make install

[root@soma freetds-0.62.1]# cd /usr/local/freetds
[root@soma freetds]# cp ./lib/* /usr/lib

[root@soma freetds]# vi ./etc/freetds.conf ( 아래의 부분을 찾아서 주석을 재거해준다 )

# A typical Microsoft SQL Server 7.0 configuration
[MyServer70]
host = ntmachine.domain.com
port = 1433
tds version = 8.0 ( 8.0 으로 수정 )


3. apache 설치하기

[root@soma src]# tar -xvzf apache_1.3.29.tar.gz
[root@soma src]# cd apache_1.3.29
[root@soma apache_1.3.29]# ./configure

4. php 설치하기

[root@soma src]# tar -xvzf php-4.3.4.tar.gz
[root@soma src]# cd php-4.3.4
[root@soma php-4.3.4]# ./configure --with-apache=../apache_1.3.29 --with-sybase=/usr/local/freetds --with-gd
--with-jpeg-dir --with-freetype-dir --disable-debug --enable-track-vars

주의) php-5.X 버전과 설치시 zif_sybase_fetch_object' 오류가 발생하였습니다. 이땐 아래의 옵션을 사용하세요

         --with-mssql=/usr/local/freetds


[root@soma php-4.3.4]# make
[root@soma php-4.3.4]# make install

5. apache 재 설치하기

[root@soma src]# cd apache_1.3.29
[root@soma apache_1.3.29]# ./configure --activate-module=src/modules/php4/libphp4.a
[root@soma apache_1.3.29]# make
[root@soma apache_1.3.29]# make install



아래의 내용은 phpschool에서 muti 란 아이디를 사용하시는 분의 경험담입니다.

저는 경험상 freetds config시 --with-tdsver=4.2 요롷게 옵션을 넣고 있습니다. 위에서처럼 8.0,7.0으로 해서
사용하다 연동이 안될때가 있더라구요.. 가끔가다가요..
실제 서비스에 적용이 돼있는데 갑자기 이미지가 깨지는 경우가 발생하고... 요리저리 찾아보니까 freetds문제
때문이었습니다.(이미지가 컨텐츠업체 내부 MSSQL에 있거든요) 그래서 찾아보니 --with-tdsver=4.2 요롷게 하면
sybase형식(맞나?)으로 연결을 한다는 군요. MSSQL의 전신이 sybase이구 요넘의 회사를 M$가 사서 만든게
MSSQL이라 구러드라구요..
그래서 4.2(MS로 회사넘어가기 바로 직전의 버전)로 컨피그하면 7.0,2000에서도 아무 문제가 없다고 하드라구요..
찾는데 절라 고생 -_-; 지금 반년이상 잘돌고있습니다.(참고로 이놈이 걸린게 그리 작은 서비스가 아니거든요...
울나라 1위 포털 내부에 있어 사용자도 많고 한데 요넘때메 탈나지 않고 잘돌립니다.^^


반응형

'Story > php' 카테고리의 다른 글

utf-8 메일 발송  (0) 2009.01.31
PEAR 를 이용하여 달력 만들기  (0) 2009.01.19
아이디만들때 제약사항 체크  (0) 2009.01.03
PEAR 를 이용하여 달력 만들기  (0) 2009.01.03
PHP 데이터베이스의 다섯 가지 문제  (0) 2009.01.03