本篇文章給大家介紹一下CentOS7為PHP安裝MSSQL擴(kuò)展的方法。有一定的參考價(jià)值,有需要的朋友可以參考一下,希望對(duì)大家有所幫助。
1、下載 freetds
依次執(zhí)行以下腳本:
cd /usr/local/src/ wget ftp://ftp.freetds.org/pub/freetds/stable/freetds-patched.tar.gz tar -zxvf freetds-patched.tar.gz
即,進(jìn)入 /usr/local/src
目錄(我一般習(xí)慣把編譯用到的源代碼放在這里),下載 freetds
的源碼,然后解壓。
2、安裝 freetds
依次執(zhí)行以下腳本:
cd freetds-1.2/ ./configure --prefix=/usr/local/freetds --with-tdsver=7.4 --enable-msdblib make && make install
注意上面的 freetds-1.2
,根據(jù)你自己下載的不同 freetds
版本,這里可能會(huì)有所不同,反正就是進(jìn)入你解壓出來(lái)得到的文件夾。然后 --with-tdsver=7.4
這里,根據(jù) SqlServer
的不同版本靈活選擇,具體可以參考下圖自行選擇,我使用的是 SqlServer 2012
,所以選擇的 7.4
版本:
以上版本選擇的內(nèi)容來(lái)自 freetds
的官方文檔,文檔地址:https://www.freetds.org/userguide/ChoosingTdsProtocol.html
3、配置 freetds
依次執(zhí)行以下命令來(lái)初始化 freetds
配置:
echo "/usr/local/freetds/lib/" > /etc/ld.so.conf.d/freetds.conf ldconfig
其他的配置不需要,網(wǎng)上有一些教程寫(xiě)要在 freetds.conf
中配置 MSSQL
的連接信息。其實(shí)大可不必,在調(diào)用的時(shí)候配置就可以了,也就是在 PHP
代碼中配置,這樣多靈活。
4、測(cè)試 freetds
執(zhí)行以下命令來(lái)查看 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
執(zhí)行以下命令來(lái)測(cè)試 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
的用戶(hù)名和密碼。
5、下載 PHP-5.6.40
源碼
依次執(zhí)行以下腳本:
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
一樣,這里不再贅述。
6、安裝 PHP-5.6.40-MSSQL
擴(kuò)展
依次執(zhí)行以下腳本:
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/
路徑,因?yàn)榈脑趯毸惺褂玫?php
的安裝路徑是這個(gè),所以路徑就寫(xiě)成這樣,大家根據(jù)自己情況調(diào)整。
得到類(lèi)似如下的輸出,說(shuō)明擴(kuò)展安裝完成了:
... Build complete. Don't forget to run 'make test'. Installing shared extensions: /www/server/php/56/lib/php/extensions/no-debug-non-zts-20131226/
7、修改 php.ini
這里在哪里修改大家就隨意了,我就直接用寶塔前端修改了,沒(méi)用命令行。在 php.ini
中添加如下幾行:
[mssql] extension=mssql.so
修改完成之后保存,然后重啟 php
服務(wù)。
查看 phpinfo
,可以看到 mssql
擴(kuò)展已經(jīng)啟用了。
大功告成。
推薦學(xué)習(xí):php視頻教程