参考自:https://blog.csdn.net/lwprain/article/details/109598560
关键步骤是一二三,结合 pecl install 正常安装(先安装dnf install unixODBC-devel)即可搞定
-------------------------------------------------------------------------------------------------------------
网上目前还没有一个可用的方法,这是这两天刚弄出来的。
一、加入微软的源
curl https://packages.microsoft.com/config/rhel/8/prod.repo > /etc/yum.repos.d/mssqlrelease.repo
二、防止冲突先卸载原有版本(可选)
yum remove unixODBC
三、安装驱动(三个都要装上,缺一不可)
yum install msodbcsql17 mssql-tools unixODBC-devel
四、下载pdo_sqlsrv扩展包
https://github.com/microsoft/msphpsql/releases
下载扩展5.7.1的扩展
从5.8.0开始,sqlsrv扩展不再支持SQL Server2008R2,所以需要老一点的版本。
https://github.com/microsoft/msphpsql/releases/download/v5.7.1-preview/CentOS8-7.4.tar
五、解压
tar -zxvf CentOS8-7.4.tar
六、进入解压目录
cd CentOS8-7.4
七、执行命令
将 php_pdo_sqlsrv_74_ts.so复制到对应的extension目录
我的位置是:
/myweb/php/lib/php/extensions/no-debug-zts-20190902/
八、更新php.ini
修改/myweb/php/etc/php.ini 最后一个extension= 后面添加上extension = php_pdo_sqlsrv_74_ts
九、修改ssl协议的版本
nano /etc/crypto-policies/back-ends/opensslcnf.config
将MinProtocol=TLSv1.3改为
MinProtocol=TLSv1
如果不修改,在连接sqlserver2008r2数据库时,会提示:SSL routines:ssl_choose_client_version:unsupported protocol
然后重启服务器reboot
启动服务器即可搞定。