Centos下php7版本装mssql扩展

首先安装Centos上的Microsoft ODBC Driver for SQL Server,官网文档连接如下,centos使用的是RedHat Enterprise Server 6 和 7

https://docs.microsoft.com/zh-cn/sql/connect/odbc/linux-mac/installing-the-microsoft-odbc-driver-for-sql-server?view=sql-server-2017

官网教程如下所述:

添加微软官方repo,我使用的是centos7,所以使用下面的命令行

curl https://packages.microsoft.com/config/rhel/7/prod.repo > /etc/yum.repos.d/mssql-release.repo

为了防止冲突需要删除以下依赖包,但是我没有删除。

yum remove unixODBC-utf16 unixODBC-utf16-devel #防止冲突

ACCEPT_EULA=Y yum install msodbcsql17

# 可选:用于bcp和sqlcmd

ACCEPT_EULA=Y yum install mssql-tools

echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bash_profile

echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrc

source ~/.bashrc

# 可选: 用于unixODBC开发标头

yum install unixODBC-devel

我使用的是:yum install msodbcsql mssql-tools unixODBC-devel

下载扩展源码包:http://pecl.php.net/package/pdo_sqlsrv

我选择如下版本

Centos下php7版本装mssql扩展_第1张图片

命令行如下:

wget http://pecl.php.net/get/pdo_sqlsrv-5.3.0.tgz

tar -zxvf pdo_sqlsrv-5.3.0.tgz

cd pdo_sqlsrv-5.3.0/

/usr/local/php/bin/phpize

./configure --with-php-config=/usr/local/php/bin/php-config

make && make install

php.ini中添加extension="pdo_sqlsrv.so",重启php-fpm或web服务器

(尴尬的是gcc8.2.0编译的不可以用,哎还是我用低版本的gcc编译后拿过来的)

此时使用:php -m 看一下是否存在pdo_sqlsrv,如果存在说明安装成功了。

Centos下php7版本装mssql扩展_第2张图片

看一下phpinfo信息,多了以下信息,看到下图的信息说明php的sqlserver扩展安装成功。

Centos下php7版本装mssql扩展_第3张图片

如果还想用一个例子测试一下,我这有一个简单的测试代码:

query('SELECT * FROM dbo.your_table_name') as $row) {
        var_dump($row);
        return;
      }

 

你可能感兴趣的:(php,sqlserver,centos,mssql)