天天看點

Centos7.0 PHP5.3以上連接配接SqlServer2008

前言

一定要重新編譯安裝,之前是用lnmp安裝,ext目錄下都有.so檔案,一直在配置檔案上修改,結果耗費了幾個小時,如果之前安裝了FreeTDS的

先yum search 查找,然後yum remove就可以。

1、環境說明

OS:CentOS 7.0 64位  AP:nginx1.8.0 語言:php版本:php5.3.28 DB:Sqlserver 2008

2、FreeTDS安裝過程

2.1 編譯安裝FreeTDS

下載下傳位址: http://download.csdn.net/detail/high5/9459575 

安裝FreeTDS:

# tar -zxvf freetds-patched.tar.gz

# cd freetds-0.95.19

需要注意的就是這裡的--with-tdsver=7.1。

# ./configure --prefix=/usr/local/freetds --with-tdsver=7.1 --enable-msdblib

# make && make install

2.2 配置FreeTDS

# cd ../

# echo "/usr/local/freetds/lib/" > /etc/ld.so.conf.d/freetds.conf

# ldconfig

# /usr/local/freetds/bin/tsql -H 資料庫伺服器IP:XXX -p 1433 -U 使用者名 -P 密碼

或者直接

# /usr/local/freetds/bin/tsql -H 資料庫伺服器IP -p 1433 -U 使用者名 -P 密碼

# cd /usr/local/freetds/etc/freetds.conf

# vim vim freetds.conf

[Server2008]              [程式中調用]

        host = 127.0.0.1 【sql server伺服器IP位址】

        port = 8053      【sql server服務端口】

        tds version = 7.1【版本】

        client charset  = utf8

3、增加PHP擴充pdo的pdo_dblib   【最關鍵一步】

3.1 安裝mssql.so

一定要到這個目錄下:

# cd /usr/local/src/lnmp1.1-full/php-5.3.28/ext/mssql/   [php安裝包的ext檔案夾]

linux下用phpize給PHP動态添加擴充

# /usr/local/php/bin/phpize    【運作這個指令】

# ./configure --with-php-config=/usr/local/php/bin/php-config --with-mssql=/usr/local/freetds/

# make && make install

同理:

# cd /usr/local/src/lnmp1.1-full/php-5.3.28/ext/pdo_dblib/   [php安裝包的ext檔案夾]

linux下用phpize給PHP動态添加擴充

# /usr/local/php/bin/phpize

# ./configure --with-php-config=/usr/local/php/bin/php-config --with-pdo-dblib=/usr/local/freetds/

# make && make install

在php.ini檔案中增加

extension="mssql.so"

extension="pdo_dblib.so"

4、重新開機php-fpm,nginx。