이 글에서는 CentOS7에서 PHP용 MSSQL 확장 프로그램을 설치하는 방법을 소개합니다. 도움이 필요한 친구들이 모두 참고할 수 있기를 바랍니다.
freetds
freetds
依次执行以下脚本:
cd /usr/local/src/ wget ftp://ftp.freetds.org/pub/freetds/stable/freetds-patched.tar.gz tar -zxvf freetds-patched.tar.gz
即,进入 /usr/local/src
目录(我一般习惯把编译用到的源代码放在这里),下载 freetds
的源码,然后解压。
freetds
依次执行以下脚本:
cd freetds-1.2/ ./configure --prefix=/usr/local/freetds --with-tdsver=7.4 --enable-msdblib make && make install
注意上面的 freetds-1.2
,根据你自己下载的不同 freetds
版本,这里可能会有所不同,反正就是进入你解压出来得到的文件夹。然后 --with-tdsver=7.4
这里,根据 SqlServer
的不同版本灵活选择,具体可以参考下图自行选择,我使用的是 SqlServer 2012
,所以选择的 7.4
版本:
以上版本选择的内容来自 freetds
的官方文档,文档地址:https://www.freetds.org/userguide/ChoosingTdsProtocol.html
freetds
依次执行以下命令来初始化 freetds
配置:
echo "/usr/local/freetds/lib/" > /etc/ld.so.conf.d/freetds.conf ldconfig
其他的配置不需要,网上有一些教程写要在 freetds.conf
中配置 MSSQL
的连接信息。其实大可不必,在调用的时候配置就可以了,也就是在 PHP
代码中配置,这样多灵活。
freetds
执行以下命令来查看 freetds
版本:
# /usr/local/freetds/bin/tsql -C Compile-time settings (established with the "configure" script) Version: freetds v1.2 freetds.conf directory: /usr/local/freetds/etc MS db-lib source compatibility: yes Sybase binary compatibility: no Thread safety: yes iconv library: yes TDS version: 7.4 iODBC: no unixodbc: no SSPI "trusted" logins: no Kerberos: no OpenSSL: yes GnuTLS: no MARS: yes
执行以下命令来测试 freetds
连接:
# /usr/local/freetds/bin/tsql -H example.com -p 1433 -U username -P password locale is "en_US.UTF-8" locale charset is "UTF-8" using default charset "UTF-8" 1> select @@version 2> go Microsoft SQL Server 2012 - 11.0.2100.60 (X64) Feb 10 2012 19:39:15 Copyright (c) Microsoft Corporation Standard Edition (64-bit) on Windows NT 6.2 <X64> (Build 9200: ) (Hypervisor) (1 row affected)
其中 example.com
是 MSSQL
的 host
地址, username
和 password
分别是 MSSQL
的用户名和密码。
PHP-5.6.40
源码依次执行以下脚本:
cd /usr/local/src/ wget https://www.php.net/distributions/php-5.6.40.tar.gz tar -zxvf php-5.6.40.tar.gz
和上面下载 freetds
一样,这里不再赘述。
PHP-5.6.40-MSSQL
扩展依次执行以下脚本:
cd php-5.6.40/ext/mssql/ /www/server/php/56/bin/phpize ./configure --with-php-config=/www/server/php/56/bin/php-config --with-mssql=/usr/local/freetds/ make && make install
上面的 /www/server/php/56/bin/
路径,因为的在宝塔中使用的 php
的安装路径是这个,所以路径就写成这样,大家根据自己情况调整。
得到类似如下的输出,说明扩展安装完成了:
... Build complete. Don't forget to run 'make test'. Installing shared extensions: /www/server/php/56/lib/php/extensions/no-debug-non-zts-20131226/
php.ini
这里在哪里修改大家就随意了,我就直接用宝塔前端修改了,没用命令行。在 php.ini
中添加如下几行:
[mssql] extension=mssql.so
修改完成之后保存,然后重启 php
服务。
查看 phpinfo
,可以看到 mssql
다음 스크립트를 순서대로 실행합니다.
즉, /usr/local/src
디렉터리를 입력합니다. (저는 일반적으로 컴파일에 사용되는 소스코드를 여기에 넣는 것이 익숙합니다.) freetds
의 소스코드를 다운로드한 후 압축을 풀어줍니다.
freetds
설치다음 스크립트를 순서대로 실행하세요.
rrreee다른 에 따라 위의 <code>freetds-1.2
에 주의하세요. >다운로드한 freetds 버전은 여기서 다를 수 있습니다. 어쨌든 압축을 푼 후 받은 폴더를 입력하세요. 그러면 --with-tdsver=7.4
여기서는 SqlServer
버전에 따라 유연하게 선택할 수 있습니다. 아래 그림을 참고하여 를 사용하고 있습니다. >SqlServer 2012, 따라서 선택된 <code>7.4
버전:
freetds
공식 문서에서 가져온 것입니다. 문서 주소: https://www.freetds.org /userguide/ChoosingTdsProtocol.html🎜 🎜3. freetds
구성🎜 freetds
구성을 초기화하려면 다음 명령을 실행하세요. 🎜rrreee🎜다른 구성은 필요하지 않습니다. freetds.conf
에서 MSSQL의 연결 정보 구성
에 작성된 몇 가지 튜토리얼이 인터넷에 있습니다. 실제로는 필요하지 않습니다. 즉, PHP
코드에서 구성하면 됩니다. 🎜🎜4. freetds
테스트🎜다음 명령을 실행하여 freetds
버전을 확인하세요. 🎜rrreee🎜다음 명령을 실행하여 freetds 연결 :🎜rrreee🎜여기서 <code>example.com
은 MSSQL
의 호스트
주소, 사용자 이름
및 password code>는 각각 MSSQL
의 사용자 이름과 비밀번호입니다. 🎜🎜5. PHP-5.6.40
소스 코드 다운로드🎜다음 스크립트를 순서대로 실행하세요. 🎜rrreee🎜위의 freetds
다운로드와 동일하므로 제가 이겼습니다. 여기서 자세히 설명하지 마세요. 🎜🎜6. PHP-5.6.40-MSSQL
확장을 설치하세요.🎜다음 스크립트를 순서대로 실행하세요: 🎜rrreee🎜위의 /www/server/php/56/ bin/ 경로는 파고다에서 사용하는 <code>php
설치 경로가 이렇기 때문에 자신의 상황에 맞게 경로를 조정하시면 됩니다. 🎜🎜확장 설치가 완료되었음을 나타내는 다음과 유사한 출력을 얻습니다. 🎜rrreee🎜7. php.ini
수정🎜여기에서 자유롭게 수정할 수 있습니다. 저는 직접 사용하겠습니다. Pagoda 프런트 엔드 수정, 명령줄을 사용할 필요가 없습니다. php.ini
에 다음 줄을 추가합니다. 🎜rrreee🎜완료 후 변경 사항을 저장한 다음 php
서비스를 다시 시작합니다. 🎜🎜phpinfo
를 확인하면 mssql
확장이 활성화된 것을 확인할 수 있습니다. 🎜🎜🎜🎜🎜완료되었습니다. 🎜🎜추천 학습: 🎜php 비디오 튜토리얼🎜🎜위 내용은 CentOS7에서 PHP용 MSSQL 확장을 설치하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!