본문 바로가기

프로그래밍/PHP

SQL Server 2008 Express + PHP 연동하기 (Autoset 4.3.2)


서버환경
OS : Windows XP SP3
APM : Autoset 4.3.2 [사이트]
DB : SQL Server 2008 Express

SQL Server 2005 버전부터는 mssql_*() 함수들을 이용하여 접근이 불가능합니다.
ntwdblib.DLL 을 최신버전으로 교체하면 된다고하던데 저는 그래도 안되더군요.

설치하기

우선 SQLServerDriverForPHP 를 다운로드 합니다.

다운받은 파일을 실행해서 적당한곳에 풉니다.


위와같이 파일이 풀리고 php_sqlsrv.dll, php_sqlsrv_ts.dll 을 PHP가 설치된 폴더의 ext 폴더로 이동시킵니다
AutoSet으로 예를 든다면 C:\AutoSet\Server\php5.2\ext 가 되겟죠

이제는 Microsoft SQL Server Native Client 을 설치해야 합니다.
이것은 아까 푼 폴더에보면 SQLServerDriverForPHP_Readme.htm 을 보시면 다운로드 받을수 있게 링크가 있습니다

편의를 위하여 링크를 제공합니다.
Download the X86 package
Download the X64 package
Download the IA64 package

서버 환경에 맞는걸로 다운로드 받고 설치하세요. 위의 다운로드 링크는 microsoft 사의 링크입니다.

설치하는것은 이것으로 완료되었습니다. 이제는 설정을 손을 봐야합니다.
만약 SQL Server Native Clinet 를 설치하지않고 php에서 연결을 테스트할 경우 ODBC가 설정안되어 있다는 내용의에러 메시지를 제공할겁니다.

설정하기
AutoSet 설정하기
아까 추가한 확장모듈이 보이요? 그것을 선택하고 변경사항을 저장한다음 웹서버를 재시작합니다.

SQL Server 2008 Express 연결하기
Express 버전의 경우 기본적으로 원격연결이 허용되어 있지않습니다.

SQL Server 구성관리자를 실행시킵니다.
SQL Server 네트워크 구성을 보시면 TCP/IP, 명명된 파이프 가 사용 안 함으로 되어있을텐데 이것을 사용으로 바꿉니다.

TCP/IP를 더블클릭하거나 속성창을 엽니다.
사용을 '예'로 변경 TCP포트를 1433으로 지정, IPALL의 TCP포트를 1433입력하시고 SQL Server를 재시작하면 됩니다.