Microsoft Drivers for PHP for SQL Server를 로드 중입니다

이 페이지에서는 MICROSOFT Drivers for PHP for SQL Server를 PHP 프로세스 공간에 로드하기 위한 지침을 제공합니다.

PIE가 있는 Windows에서 드라이버를 설치하세요

PIE(확장 기능 설치 프로그램)는 해당 사전 컴파일된 드라이버 파일을 설치하고 PHP 명령줄 구성에서 이를 활성화합니다. Windows는 빌드 툴체인이 필요하지 않습니다.

  1. 지원되는 PHP 버전과 Microsoft ODBC 드라이버 for SQL Server를 설치하세요.

  2. php --ini을 실행합니다. Loaded Configuration File이 (none) 비어 있으면, PHP 설치 디렉터리의 php.ini-development를 같은 디렉터리의 php.ini로 복사하세요.

  3. php.ini에서 확장 디렉터리를 설정하고 와 zip 확장 기능을 활성화 openssl 합니다:

    extension_dir = "ext"
    extension=openssl
    extension=zip
    
  4. 작성 가능한 작업 디렉터리에서 최신 stable pie.phar파일을 다운로드하세요. 이 명령어는 명령 프롬프트와 PowerShell에서 작동합니다:

    curl.exe -fL --output pie.phar https://github.com/php/pie/releases/latest/download/pie.phar
    

    GitHub CLI가 있다면 PHP 재단이 해당 파일을 공개했는지 확인하세요:

    gh attestation verify --owner php .\pie.phar
    
  5. PHP 실행 파일을 PATH사용하여 두 드라이버 모두 설치하세요:

    php .\pie.phar install microsoft/sqlsrv
    php .\pie.phar install microsoft/pdo_sqlsrv
    
  6. 동일한 PHP 명령줄 런타임이 두 드라이버를 모두 로드하는지 확인하세요:

    php --ri sqlsrv
    php --ri pdo_sqlsrv
    

다른 PIE 설치 방법에 대해서는 PIE 사용 문서를 참조하세요.

드라이버는 리눅스와 macOS에 설치하세요

Linux 및 macOS 설치 튜토리얼에 설명된 대로 PIE로 드라이버와 그 플랫폼 의존성을 설치하세요.

수동으로 미리 구축된 드라이버를 설치하세요

Microsoft PHP for SQL Server 드라이버 페이지에서 미리 구축된 드라이버를 다운로드할 수 있습니다. Windows 다운로드는 지원하는 PHP 버전, 아키텍처, 스레드 세이프티 모드별 SQLSRV 및 PDO_SQLSRV 드라이버 파일이 포함된 ZIP입니다. PHP 환경에 맞는 파일을 선택하세요. 파일 목록은 시스템 요구사항을 참조하세요.

PHP를 빌드할 때 또는 phpize를 사용하여 소스에서 드라이버를 빌드할 수도 있습니다. 소스에서 드라이버를 빌드하기로 선택한 경우, PHP를 빌드할 때 --enable-sqlsrv=static --with-pdo_sqlsrv=static 명령에 --enable-sqlsrv=static --with-pdo-sqlsrv=static(Linux 및 macOS) 또는 ./configure(Windows)을(를) 추가하여 공유 확장으로 빌드하는 대신 정적으로 PHP에 빌드하는 옵션이 있습니다. PHP 빌드 시스템 및 phpize에 대한 자세한 내용은 PHP 설명서를 참조하세요.

드라이버 파일을 확장 디렉터리로 이동

드라이버 파일은 PHP 런타임에서 찾을 수 있는 디렉터리에 있어야 합니다. 드라이버 파일을 기본 PHP 확장 디렉터리에 배치하는 것이 가장 쉽습니다. 기본 디렉터리를 찾으려면 Windows에서는 php -i | sls extension_dir을 실행하고, Linux/macOS에서는 php -i | grep extension_dir을 실행하세요. 기본 확장 디렉터리를 사용하지 않는 경우 extension_dir 옵션을 사용하여 PHP 구성 파일(php.ini)에 디렉터리를 지정합니다. 예를 들어 Windows에서 드라이버 파일을 c:\php\ext 디렉터리에 배치한 경우, php.ini에 다음 줄을 추가하십시오.

extension_dir = "c:\PHP\ext"

PHP 시작 시 드라이버 로드

PHP가 시작될 때 SQLSRV 드라이버를 로드하려면 먼저 드라이버 파일을 확장 디렉터리로 이동합니다. 그런 후 다음 단계를 수행합니다.

  1. SQLSRV 드라이버를 사용하도록 설정하려면 확장 섹션에 다음 줄을 추가하여 php.ini 수정하고 PHP 버전 및 스레드 안전 및 스레드로부터 안전한 비 스레드 설치에 맞게 파일 이름을 변경합니다.

    Windows에서:

    extension=php_sqlsrv_83_ts.dll
    

    Linux에서 배포판용 미리 빌드된 이진 파일을 다운로드한 경우:

    extension=php_sqlsrv_83_nts.so
    

    SQLSRV 바이너리를 소스에서 컴파일했거나 PIE 또는 PECL로 설치했다면, 이름은 sqlsrv.so 입니다:

    extension=sqlsrv.so
    
  2. PDO_SQLSRV 드라이버를 활성화하려면 PHP 데이터 오브젝트(PDO) 확장이 내장된 확장 또는 동적 로드 확장 형태로 제공되어야 합니다.

    Windows에서는 미리 빌드된 PHP 이진 파일에 PDO가 기본 제공되므로 로드하기 위해 php.ini 수정할 필요가 없습니다. 원본에서 PHP를 컴파일하고 별도의 PDO 확장을 지정하여 빌드한 경우, 해당 이름은 php_pdo.dll이며, 이를 확장 디렉터리에 복사하고 php.ini 파일에 다음 줄을 추가해야 합니다.

    extension=php_pdo.dll
    

    Linux에서 시스템의 패키지 관리자를 사용하여 PHP를 설치한 경우 PDO는 pdo.so 명명된 동적으로 로드된 확장으로 설치될 수 있습니다. PDO 확장은 PDO_SQLSRV 확장 전에 로드해야 합니다. 그렇지 않으면 로드가 실패합니다. 확장은 개별 .ini 파일을 사용하여 로드되며 이러한 파일은 php.ini후에 읽습니다. 따라서 pdo.so가 자체 .ini 파일을 통해 로드된 경우 PDO 다음에 PDO_SQLSRV 드라이버를 로드하는 별도의 파일이 필요합니다.

    확장별 .ini 파일이 있는 디렉터리를 찾으려면 php --ini을(를) 실행하고 Scan for additional .ini files in: 아래에 나열된 디렉터리를 확인합니다. pdo.so를 로드하는 파일을 찾습니다. 앞에 숫자(예: 10-pdo.ini)가 접두사로 지정되어야 합니다. 숫자 접두사는 .ini 파일의 로드 순서를 나타내고 숫자 접두사는 없는 파일은 사전순으로 로드됩니다. PDO_SQLSRV 드라이버 파일을 로드하기 위한 파일을 생성하세요. 이 파일은 30-pdo_sqlsrv.ini(이 이름은 pdo.ini보다 큰 숫자로 시작해야 합니다) 또는 pdo_sqlsrv.ini(pdo.ini에 숫자가 붙어 있지 않은 경우)로 이름이 지정되어야 합니다. 그런 다음, 해당 파일에 다음 줄을 추가하고 파일 이름을 적절히 변경하세요.

    extension=php_pdo_sqlsrv_3_nts.so
    

    SQLSRV와 마찬가지로, PDO_SQLSRV 바이너리를 소스에서 컴파일했거나 PIE 또는 PECL로 설치한 경우 이름은 pdo_sqlsrv.so입니다:

    extension=pdo_sqlsrv.so
    

    이 파일을 다른 .ini 파일이 포함된 디렉터리에 복사합니다.

    원본에서 기본 제공 PDO 지원을 포함하여 PHP를 컴파일한 경우, 별도의 .ini 파일이 필요하지 않으며, 이전 줄을 php.ini에 추가할 수 있습니다.

  3. 웹 서버를 재시작하세요.

참고 사항

드라이버가 성공적으로 로드되었는지 확인하려면 phpinfo()를 호출하는 스크립트를 실행합니다.

php.ini 지시문에 대한 자세한 내용은 핵심 php.ini 지시문 설명을 참조하세요.