新公司數(shù)據(jù)庫用sqlserver,費勁的在ubuntu下給php裝了連接sqlserver的擴展实愚。
首先確認下你的php版本棍掐,目前我看到的是擴展只支持7届宠。自己嘗試php5.6安裝了下,反正鸟蜡。膜赃。失敗了。
先貼出來官網(wǎng)教程的步驟
步驟 1. 安裝 PHP(這一步是如果你沒有安裝php7)
sudo su
add-apt-repository ppa:ondrej/php -y
apt-get update
apt-get install php7.2 php7.2-dev php7.2-xml -y --allow-unauthenticated
步驟 2. 安裝先決條件
Ubuntu 按照的說明安裝的 ODBC 驅(qū)動程序Linux 和 macOS 安裝頁揉忘。
進入上邊頁面跳座,查看自己對應的系統(tǒng),然后照著運行命令就可以了泣矛。
這里我是ubuntu 14.04
sudo su
curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add -
#Download appropriate package for the OS version
#Choose only ONE of the following, corresponding to your OS version
#Ubuntu 14.04
curl https://packages.microsoft.com/config/ubuntu/14.04/prod.list > /etc/apt/sources.list.d/mssql-release.list
#Ubuntu 16.04
curl https://packages.microsoft.com/config/ubuntu/16.04/prod.list > /etc/apt/sources.list.d/mssql-release.list
#Ubuntu 17.10
curl https://packages.microsoft.com/config/ubuntu/17.10/prod.list > /etc/apt/sources.list.d/mssql-release.list
#Ubuntu 18.04
curl https://packages.microsoft.com/config/ubuntu/18.04/prod.list > /etc/apt/sources.list.d/mssql-release.list
exit
sudo apt-get update
sudo ACCEPT_EULA=Y apt-get install msodbcsql17
# optional: for bcp and sqlcmd
sudo ACCEPT_EULA=Y apt-get install mssql-tools
echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bash_profile
echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrc
source ~/.bashrc
# optional: for unixODBC development headers
sudo apt-get install unixodbc-dev
步驟 3. 安裝用于 Microsoft SQL Server PHP 驅(qū)動程序
sudo pecl install sqlsrv
sudo pecl install pdo_sqlsrv
exit
*系統(tǒng)要求看這里
https://docs.microsoft.com/zh-cn/sql/connect/php/system-requirements-for-the-php-sql-driver?view=sql-server-2017
總共需要裝兩個東西 1.odbc driver 1. php 兩個擴展 sqlsvr和pdo_sqlsvr
第一步是因為php的兩個擴展現(xiàn)在只支持php7
最后把好不容易生成的兩個 pdo_sqlsrv.so sqlsrv.so 加入php.ini擴展疲眷。
開始我是php5 折騰了半天,覺得不行您朽,安了php7, 直接去pecl官網(wǎng)找包自己編譯pdo_sqlsrv 和 sqlsrv狂丝, 然后odbc driver 也是下載的官網(wǎng)的deb包安裝的 后來一直有問題 再后來一怒之下環(huán)境恢復,按著官網(wǎng)的教程重新裝一遍好了哗总。還有一定要先看系統(tǒng)要求几颜。
我安的時候 unixodbc是2.3.1 這時候會出現(xiàn)unixodbc-dev用apt安裝不上,因為版本依賴的問題讯屈,never mind蛋哭,pecl直接去install擴展,如果出現(xiàn)少頭文件涮母,不要慌谆趾,找個unixodbc2.3.1的源碼包,然后里面有缺少的庫叛本,復制過去就行了沪蓬。
什么?不知道庫在哪里来候?locate sql.h 跷叉。。