Centos7.5 PHP7.2 連線sql_server 遇到fatal error: sql.h: No such file or directory
阿新 • • 發佈:2018-11-24
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了。