Centos7.5 php7.2 安装pdo_sqlsrv 连接 sql server,转

转:https://blog.csdn.net/gdali/article/details/82912542

一、加入微软的源

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

二、防止冲突先卸载原有版本(可选)

yum remove unixODBC

三、安装驱动(三个都要装上,缺一不可)

yum install msodbcsql mssql-tools unixODBC-devel

四、下载pdo_sqlsrv扩展包

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

七、执行命令

  1. /usr/local/php/bin/phpize

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

八、编译安装

make && make install





解决编译错误问题:
sudo yum install centos-release-scl
sudo yum install devtoolset-7
scl enable devtoolset-7 bash

九、更新php.ini

修改/usr/local/php/etc/php.ini 查找:extension = 再最后一个extension= 后面添加上extension = "pdo_sqlsrv.so"

十、重启lnmp

lnmp restart

POD 连接示例:

  1. define('MSSQL_HOST','111.15.25.222,6666');

  2. define('MSSQL_USER','sa');

  3. define('MSSQL_PASSWORD','password');

  4. define('MSSQL_DBNAME','demo');

注意:端口号跟地址之间是逗号。

  1. $this->dbms = 'sqlsrv';

  2. $this->host = MSSQL_HOST;

  3. $this->user = MSSQL_USER;

  4. $this->password = MSSQL_PASSWORD;

  5. $this->dbname = MSSQL_DBNAME;

  6. $this->dsn = "$this->dbms:Server=$this->host;Database=$this->dbname";

  7. $this->DB = new PDO($this->dsn, $this->user, $this->password);

注意:dsn部分,跟mysql和dblib是不一样的。

大功告成。