linux站点服务连接sqlsrv数据库

技术知识
0 895
小师傅 小师傅2022-06-01
积分:2337

1.      由于使用的sql server数据库,所以需要安装sqlsrv驱动来连接,我先使用的时centos7作为服务器系统,用的thinkphp6框架,页面能正常访问打开,每次连接数据库查询时就报错,apache报错503,nginx报错502;一直没找到解决办法,网上查询的办法也都试过了,也不行;

2.      后面用BC-Linux系统来安装服务器,该系统是在centos的基础上改进的,我用的是Bc-Linux8.2版本,下载地址:http://mirrors.bclinux.org/;安装好后,我使用宝塔面板,安装apache和php74;,

3.      加入微软的源

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

4.      防止冲突先卸载原有版本(可选)

yum remove unixODBC

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

yum install msodbcsql17 mssql-tools unixODBC-devel

6.      下载pdo_sqlsrv扩展包

https://github.com/microsoft/msphpsql/releases

7.      下载扩展5.10.0的扩展
5.8.0开始,sqlsrv扩展不再支持SQL Server2008R2,所以需要老一点的版本。

这里我用的5.10.0的扩展
https://github.com/microsoft/msphpsql/releases/download/v5.10.0-preview/CentOS8-7.4.tar

8.     解压
tar xf CentOS8-7.4.tar

9.     进入解压目录
cd CentOS8-7.4

10. 执行命令
php_pdo_sqlsrv_74_nts.so, php_ sqlsrv_74_nts.so复制到对应的extension目录

我的位置是:

/www/server/php/lib/php/extensions/no-debug-zts-20190902/

11.  更新php.ini
修改/server/php/etc/php.ini 最后一个extension= 后面添加上extension = php _sqlsrv_74_ntsextension = php_pdo_sqlsrv_74_nts

或通过宝塔修改该配置;

12.  修改ssl协议的版本
vi /etc/crypto-policies/back-ends/opensslcnf.config
MinProtocol=TLSv1.3改为
MinProtocol=TLSv1

 

如果不修改,在连接sqlserver2008r2数据库时,会提示:SSL routines:ssl_choose_client_version:unsupported protocol
然后重启服务器reboot
启动服务器即可搞定。


精选帖子
百度文库下载器 v1.0免费下载百度文库 38
Android FV助手 v99.99.99钉钉虚拟定位打卡 30
Android 得间免费小说 v4.7.2.1解锁会员版 28
区块链撸空投从小白到财富自由,普通人如何通过撸空投赚钱,新手入门教程 67
Android 红果免费短剧 v6.2.1.32解锁会员版 50
Android 可可影视 v3.2.0无广告纯净版 47
手慢无!iOS影视神器又上架了! 57
Android 可映短剧 v2.1.1去广告纯净版 45
Android 小黄人影视 v1.1.4去广告清爽版 155
热门帖子
【免费和收费VPN分享】七款手机电脑都能用的免费+收费上外网梯子,文末附免费SSR节点 257
用里程积分兑换机票售卖赚差价,纯手机操作,小白兼职月入10万+ 225
一天收入1500+,玩转心理学情感思维,抖音最新流量密码 204
微信阅读挂机实现躺着单窗口20+单机150+小白可以轻松上手 193
Android 小黄人影视 v1.1.4去广告清爽版 155
【永久免费梯子推荐】三款永久免费的全球Top.3梯子推荐,手机电脑均可用 127
2024最新全网独家小游戏全自动,单机40~60,稳定躺赚,小白都能月入过万 108
Android Reface Pro 换脸视频 v4.7.0解锁专业版 98
不囤货,零成本,最新躺赚玩法,执行就有收益 85