Linux下使用给php7.1安装SQLServer扩展

原文转自https://www.jianshu.com/p/e9f2b5b5e12c

因细微差别做一些修改


环境:

CentOS 7.2 64位

PHP 7.1

SQL Server 2008

Freetds-1.00.109

首先,安装扩展

PHP有很多数据库扩展,针对不同的数据库系统,这里我们选择使用PDO方式连接SQL Server数据库,那么我们还需要一个具体数据库的 PDO 驱动来访问数据库服务,即"pdo_dblib"扩展。

找到php-7.1的源码,进入到ext下面,我们可以看到一个pdo_dblib的文件夹,即./usr/src/php7.1.6/php-src-php-7.1.6/ext/pdo_dblib

切换到./usr/src/php7.1.6/php-src-php-7.1.6/ext/pdo_dblib之后,按正常操作应该是执行:

# /usr/local/php7.1/bin/phpize

# ./configure --with-php-config=/usr/local/php7.1/bin/php-config

但是,那会报一个错误 ,就是找不到FreeTDS,如下图:

error : Cannot find FreeTDS in knowsinstallaction directories

下载安装FreeTDS

# wget ftp://ftp.freetds.org/pub/freetds/stable/freetds-patched.tar.gz 

     //此处下载太慢的话请复制到浏览器里下载,再导入

# tar -zxvf freetds-patched.tar.gz

# cd freetds-1.00.48/

# ./configure --prefix=/usr/local/freetds --with-tdsver=7.3 --enable-msdblib

# make && make install

注:1. 什么是FreeTDS  2. tdsver为什么是7.3

测试FreeTDS

# /usr/local/freetds/bin/tsql -C

# /usr/local/freetds/bin/tsql -H

127.0.0.1 -p 1433 -U xxx -P xxx    //此处填写数据库IP端口账号密码测试

/usr/local/freetds/bin/tsql -C

安装pdo_dblib扩展

//这部请在./usr/src/php7.1.6/php-src-php-7.1.6/ext/pdo_dblib目录下执行

# /usr/local/php7.1/bin/phpize

# ./configure --with-php-config=/usr/local/php7.1/bin/php-config --with-pdo-dblib=/usr/local/freetds/

# make && make install

# vim php.ini  添加extension="pdo_dblib.so"

查看扩展及重启PHP

# service php7.1-fpm restart

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容