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 6131
82 Alternative PHP Cache 설치 & 설정 호스트웨이 2015.09.18 6520
81 apache 쓸모없는 로그 남기지 않는 방법. 호스트웨이 2012.12.28 6760
80 CentOS6 64bit openssl 설치시 에러 조치사항 호스트웨이 2012.11.02 7609
79 failed to open stream: Too many open files in 에러메시지 출력 시 해결방법 호스트웨이 2012.10.03 7626
78 Indexes 값 제거 호스트웨이 2015.09.18 7916
77 cronlog 설정 호스트웨이 2015.09.18 8050
76 아파치 특정폴더에 암호걸기 호스트웨이 2012.12.28 8167
75 Ubuntu 아파치 웹서버에서 index.php 다운로드 창이 뜰 경우 호스트웨이 2012.12.13 8241
74 외부 링크 도용을 막기 위한 아파치 설정 호스트웨이 2015.09.11 8426
73 64bit 에서 php 컴파일시 에러 메세지 발생 시 대처방법-3 호스트웨이 2012.12.28 8586
72 웹페이지에 사용자 인증 사용하기 호스트웨이 2012.05.18 8972
71 웹부하 테스트 - httperf 호스트웨이 2015.09.18 8994
70 Apache 동시접속자 수 알아내기 호스트웨이 2015.09.13 9313
69 apache 구동시 "파일 크기 제한을 초과함 $HTTPD -DSSL" 에러메시지 출력에 대한 해결방법 호스트웨이 2012.10.11 9405
68 SSL config error 조치사항 호스트웨이 2012.06.29 9632
67 [Apache] Image 관련 Log 남기지 않기 호스트웨이 2012.07.13 9705
66 PHP 업로드 파일 용량 제한 설정 호스트웨이 2012.07.06 10044
65 apache ssl 시작시 오류 메세지 호스트웨이 2012.05.11 10058
64 WEB에 특정 IP접근 차단 호스트웨이 2015.09.10 10078