1. 程式人生 > >Centos7.5 PHP7.2 連線sql_server 遇到fatal error: sql.h: No such file or directory

Centos7.5 PHP7.2 連線sql_server 遇到fatal error: sql.h: No such file or directory

FreeTD的安裝過程這裡就不寫,以免囉嗦。

下面要講的是PHP的sql server 拓展安裝。

php5.6等老版本預設帶mssql的擴充套件,但php7.1以上就沒有,所以需要手動下載並編譯。

pdo_sqlsrv擴充套件包 http://pecl.php.net/package/pdo_sqlsrv

我下的4.3.0

tar -zxvf pdo_sqlsrv-4.3.0.tgz

cd pdo_sqlsrv-4.3.0

/usr/local/php/bin/phpize    

這裡要看php安裝目錄,我這裡編譯安裝的,位置如上,如果找不到phpize,請確認php安裝路徑,相應調整。

./configure --with-php-config=/usr/local/php/bin/php-config

配置同樣需要確認php路徑

make && make install

遇到問題:fatal error: sql.h: No such file or directory

提示缺少標頭檔案,直接安裝unixodbc的工具包即可,yum install unixODBC-devel。

完成安裝即可

然後開啟php中的擴充套件。

修改php.ini,位置根據安裝及配置自行確認。

extension = pdo_sqlsrv.so

在擴充套件位置,加上或者開啟上述擴充套件配置。

重啟apache2或者ngix,然後開phpinfo,確認pdo配置結中pdo driver中有sqlsrv即可。

然後在php中就可以用pdo方式連線mssql了。