Skip to content

2010.01.05 02:20

PHP FreeTDS 사용 (MS-SQL)

조회 수 16944 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부

PHP에서 ODBC, Microsoft SQL, SyBase 등을 사용할때에 mssql 익스텐션을 컴파일 하기 위해서는 Free TDS 라이블러리가 필요하다.

이때 사용되는 프로토콜은 Microsoft SQL 4.2, 7.0, 8.0 프로토콜을 지원하고 있다.

설치 방법은 아래와 같다.

사이트 : http://www.freetds.org
다운로드 : FreeTDS 0.82

다운로드를 적당한 디렉토리 (ex: /usr/local/src) 에 wget등을 이용해서 다운로드 받는다.
(편의상 root로 작업)

Free TDS 라이블러리 설치
# tar zxvf freetds-stable.tgz
# cd freetds-0.82
# ./configure (기본으로 /usr/local 에 라이블러리가 설치됨)
# make
# make install
# ldconfig (vi /etc/ld.so.conf 파일에서 /usr/local/lib 를 추가해준다)

PHP mssql 익스텐션 컴파일
PHP 설치 때 압축을 해제 하였던 디렉토리로 이동한다.
# cd /usr/local/src/php-5.x.x
# cd ext/mssql
# phpize (configure 파일 생성)
# ./configure --with-mssql=/usr/local --enable-mssql --with-php-config=/usr/local/php/bin/php-config
# make
# cp .libs/mssql.so /(PHP 익스텐션이 들어 있는 디렉토리*)
* PHP 익스텐션 디렉토리는 php.ini 파일내의 extension_dir 에서 지시한 디렉토리이다. 일반적으로 "./" 으로 설정이 되어 있으나 직접 설정을 했을 경우 다른 디렉토리가 설정이 되어 있을 수 있다.


 

(추가되는 모듈을 정리하기 위해서 /usr/loca/php/php_module라는 폴더를 만들고 거기에 넣고
php.ini 에서extension_dir을 /usr/local/php/php_module라고 변경해 주었다.)


# vi /usr/local/lib/php.ini

[mssql]
extension_dir = /usr/local/php/php_module/
extension = mssql.so 
를 추가해준다.
php.ini  파일이 없을 때는 /usr/local/src/(PHP소스디렉토리)/php.ini-dist 파일을 /usr/local/lib 에 복사 해놓으면 된다. 하지만 PHP 컴파일시에 ini 디렉토리를 다른게 설정했다면 그 해당 디렉토리에 복사를 해주면 된다.

# php -m | grep mssql (Apache 를 기동하기 전에 mssql 익스텐션이 올라왔나 확인한다.)
# /etc/init.d/httpd restart 또는 /usr/local/apache/bin/apachectl restart

PHP info 를 확인한다.

1197093563.gif

위와 같이 MSSQL 익스텐션이 설정이 되어 있다면 정상적으로 연동이 된것이다 .
하지만 freetds 설정을 해야 정상적으로 사용이 가능한데 이 부분은 다음에 다루기로 하겠다.

  1. No Image 09Jan
    by ADMINPLAY
    2010/01/09 by ADMINPLAY
    Views 15437 

    4.1.0이상 php 버전에서 register_globals = Off 일때 기존변수 그대로 사용하기

  2. No Image 04Jun
    by ADMINPLAY
    2009/06/04 by ADMINPLAY
    Views 8433 

    call undefined mysql connect 에러 발생시 해결 방안

  3. No Image 04Jun
    by ADMINPLAY
    2009/06/04 by ADMINPLAY
    Views 9017 

    call undefined mysql connect 와 같은 mysql 라이브러리를 호출하지 못할경우 조치법

  4. No Image 18May
    by ADMINPLAY
    2010/05/18 by ADMINPLAY
    Views 21873 

    configure: error: utf8_mime2text() has new signature, but U8T_CANONICAL is missing. This should not happen. Check config.log for additional information.

  5. No Image 10Dec
    by ADMINPLAY
    2008/12/10 by ADMINPLAY
    Views 8782 

    DB 관리 : phpmyadmin

  6. No Image 04Jun
    by ADMINPLAY
    2009/06/04 by ADMINPLAY
    Views 9253 

    DBA: Could not find necessary header file 발생시 대처법

  7. No Image 31Dec
    by ADMINPLAY
    2009/12/31 by ADMINPLAY
    Views 17350 

    Fatal error: Call to undefined function domxml_open_mem()

  8. No Image 01Jun
    by ADMINPLAY
    2009/06/01 by ADMINPLAY
    Views 9063 

    Fedora 및 CentOs 에서 Imap PHP 연동시 에러가날때

  9. No Image 18May
    by ADMINPLAY
    2009/05/18 by ADMINPLAY
    Views 9599 

    freetds 설치 (php로 외부 MS-SQL 서버에 접속 사용하기)

  10. No Image 04Jun
    by ADMINPLAY
    2009/06/04 by ADMINPLAY
    Views 10721 

    Freetds 설치 참고 (sybase)

  11. No Image 01Jun
    by ADMINPLAY
    2009/06/01 by ADMINPLAY
    Views 10128 

    ini_set("allow_url_fopen", 1); -- allow_url_fopen = Off 일때 해결법

  12. No Image 28Sep
    by ADMINPLAY
    2009/09/28 by ADMINPLAY
    Views 17386 

    Maximum execution time of 30 seconds exceeded

  13. No Image 24Feb
    by ADMINPLAY
    2010/02/24 by ADMINPLAY
    Views 71264 

    oracle10g + php5.2.11 error [OCIEnvNlsCreate() failed]

  14. No Image 31Dec
    by ADMINPLAY
    2009/12/31 by ADMINPLAY
    Views 17322 

    pear 1.9 업그레이드 및 패치설치

  15. No Image 31Dec
    by ADMINPLAY
    2009/12/31 by ADMINPLAY
    Views 15937 

    PEC HTTP Setup

  16. PHP - eAccelerator 설치

  17. php 5.1.4 인데 ZipArchive() 사용하기 --enable-zip

  18. PHP FreeTDS 사용 (MS-SQL)

  19. No Image 07Sep
    by ADMINPLAY
    2013/09/07 by ADMINPLAY
    Views 8922 

    php mysql에 insert시 싱글쿼츠(홑따옴표) 입력 처리 (magic_quotes_gpc에 대한 이해)

  20. No Image 04Jun
    by ADMINPLAY
    2009/06/04 by ADMINPLAY
    Views 10240 

    php 명령어 이용 phpinfo 확인

Board Pagination Prev 1 2 3 Next
/ 3

Copyright ADMINPLAY corp. All rights reserved.

abcXYZ, 세종대왕,1234

abcXYZ, 세종대왕,1234