在 https://packages.microsoft.com/config/ 找對應的源,php
我這裏選擇debian:mysql
curl https://packages.microsoft.com/config/debian/8/prod.list > /etc/apt/sources.list.d/microsoft.listsql
W: GPG error: http://security.ubuntu.com trusty-security Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 40976EAF437D05B5
這個問題的解決辦法:apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 40976EAF437D05B5ubuntu
# apt-get update
curl
# apt-get install msodbcsql mssql-tools unixodbc-dev
url
下載 http://pecl.php.net/package/pdo_sqlsrv.net
# tar -zxvf pdo_sqlsrv-5.2.0.tgz
unix
# cd pdo_sqlsrv-5.2.0
code
# phpize
server
# ./configure
# make && make install
而後 php.ini > extension=pdo_sqlsrv.so;
出現錯誤:undefined symbol: php_pdo_register_driver
是由於php.ini中 pdo_sqlsrv.so 和 pdo.so的加載順序反了,pdo_sqlsrv.so應該在pdo.so以後
出現錯誤:undefined symbol: mysqlnd_allocator
(這個是捎帶說一下),和上面相似是mysqlnd 模塊 和 pdo_mysql 的順序問題,應該先加載 mysqlnd