Linux WEB

 PHP에서 MS-SQL 서버를 연동하기 위한 방법입니다

- PHP의 mssql extension을 컴파일 하기 위해서는 FreeTDS 라이브러리가 필요합니다.
  본문에서는 APM은 이미 설치되어 있는 것으로 가정하고 Freetds는 소스 설치, mssql 모듈은 extension으로 설치 하겠습니다.


(1) FreeTDS 설치

   # wget http://ibiblio.org/pub/Linux/ALPHA/freetds/stable/freetds-stable.tgz

   # tar xvzf freetds-stable.tgz

   # cd freetds-0.91

   # ./configure --prefix=/usr/local/freetds --with-tdsver=8.0 --disable-odbc --disable-debug --enable-msdblib

   # make && make install

 

(2) freetds.conf 설정 및 ms-sql 접속 Test

   # vi /usr/local/freetds/etc/freetds.conf

 

- 아래의 항목 추가

   [TestMSSQL]
   host = IP주소
   port = 1433
   tds version = 8.0
   client Charset = UTF-8
  * tds version : 접속 하고자 하는 SQL Server 버젼에 맞게 수정.


(3) MS-SQL 접속 테스트

   # /usr/local/freetds/bin/tsql -H ip주소 -p 1433 -U db계정 -P 비밀번호


(4) mssql 모듈 설치

   # cd /usr/local/src/php-5.2.9/ext/mssql

   # /usr/local/php/bin/phpize

   # ./configure --with-mssql=/usr/local/freetds --with-php-config=/usr/local/php/bin/php-config

   # make

   # cp .libs/mssql.so /PHP Extension 디렉토리

   # vi /usr/local/php/lib/php.ini
     extension=mssql.so <---- 추가

    # apache 재구동


(5) 모듈 설치 확인 - phpinfo의 mssql 항목 확인 및 php -i 옵션으로 확인

   # /usr/local/php/bin/php -i | grep mssql
   mssql
   mssql.allow_persistent => On => On
   mssql.batchsize => 0 => 0
   mssql.charset => no value => no value
   mssql.compatability_mode => Off => Off
   mssql.connect_timeout => 5 => 5
   mssql.datetimeconvert => On => On
   mssql.max_links => Unlimited => Unlimited
   mssql.max_persistent => Unlimited => Unlimited
   mssql.max_procs => Unlimited => Unlimited
   mssql.min_error_severity => 10 => 10
   mssql.min_message_severity => 10 => 10
   mssql.secure_connection => Off => Off
   mssql.textlimit => Server default => Server default
   mssql.textsize => Server default => Server default
   mssql.timeout => 60 => 60

번호 제목 글쓴이 날짜 조회 수
83 PHP 컴파일시 에러 메세지가 나오는 경우 조치방법-2 호스트웨이 2012.12.20 6123
82 Alternative PHP Cache 설치 & 설정 호스트웨이 2015.09.18 6517
81 apache 쓸모없는 로그 남기지 않는 방법. 호스트웨이 2012.12.28 6758
80 CentOS6 64bit openssl 설치시 에러 조치사항 호스트웨이 2012.11.02 7605
79 failed to open stream: Too many open files in 에러메시지 출력 시 해결방법 호스트웨이 2012.10.03 7621
78 Indexes 값 제거 호스트웨이 2015.09.18 7911
77 cronlog 설정 호스트웨이 2015.09.18 8047
76 아파치 특정폴더에 암호걸기 호스트웨이 2012.12.28 8163
75 Ubuntu 아파치 웹서버에서 index.php 다운로드 창이 뜰 경우 호스트웨이 2012.12.13 8181
74 외부 링크 도용을 막기 위한 아파치 설정 호스트웨이 2015.09.11 8417
73 64bit 에서 php 컴파일시 에러 메세지 발생 시 대처방법-3 호스트웨이 2012.12.28 8583
72 웹페이지에 사용자 인증 사용하기 호스트웨이 2012.05.18 8972
71 웹부하 테스트 - httperf 호스트웨이 2015.09.18 8988
70 Apache 동시접속자 수 알아내기 호스트웨이 2015.09.13 9306
69 apache 구동시 "파일 크기 제한을 초과함 $HTTPD -DSSL" 에러메시지 출력에 대한 해결방법 호스트웨이 2012.10.11 9399
68 SSL config error 조치사항 호스트웨이 2012.06.29 9631
67 [Apache] Image 관련 Log 남기지 않기 호스트웨이 2012.07.13 9705
66 PHP 업로드 파일 용량 제한 설정 호스트웨이 2012.07.06 10042
65 apache ssl 시작시 오류 메세지 호스트웨이 2012.05.11 10054
64 WEB에 특정 IP접근 차단 호스트웨이 2015.09.10 10056