在 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