用workerman官网下载的静态php,无法连接sqlserver,用自己安装的php正常。

jianqi

问题描述

centos和ubuntu系统环境都测试了 同样现象,php版本都是8.1 ,已经安装好了sqlsrv驱动。 同样的代码,在同一台服务器上,使用系统安装的php start.php start 运行webman ,可以正常连接到数据库,使用官网下载的静态二进制php运行 ./php start.php start 数据库查询数据时报错

报错提示

SQLSTATE[01000]: [unixODBC][Driver Manager]Can't open lib '/opt/microsoft/msodbcsql17/lib64/libmsodbcsql-17.10.so.6.1' : file not found

截图报错信息里报错文件相关代码

实际上这个文件 libmsodbcsql-17.10.so.6.1 是存在的,权限也设置了777, 但还是报错。

总结:同样的代码在同样的环境下,连接同一个sqlver数据库, 只要是官网下载的二进制php启动就会报错,自己安装的就不会, 搞不懂哪个环节不对, 老铁帮忙指导一下

操作系统及workerman/webman等框架组件具体版本

webman版本 1.6
数据库版本 sqlerver 2012
php版本 8.1.13 正常
静态php版本:8.1.30 异常
orm : thinkphp-orm 3.0

183 1 0
1个回答

walkor 打赏

从这里下载 https://dl.static-php.dev/static-php-cli/common/ 静态php试下

  • 暂无评论
×
🔝