You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在AWS Linux2023 ARM架构安装MS SQL PHP驱动遇问题求助

AWS Linux 2023安装SQL Server PHP驱动问题解决指南

问题根源

你碰到的加载失败错误,核心原因是驱动版本和AWS Linux 2023的系统环境不匹配,如果你的EC2是ARM架构(比如Graviton实例),还存在官方预编译驱动缺失的问题:

  • AWS Linux 2023基于RHEL 9内核,和CentOS7/8的依赖库版本差异很大,直接用旧版本驱动肯定加载失败
  • 微软目前只提供x86_64架构的预编译驱动,ARM架构得自己编译

分架构解决方案

1. x86_64架构实例

别再用CentOS7/8的驱动了,直接选RHEL 9对应的预编译版本:

  • 下载匹配你PHP版本的RHEL9标注驱动包
  • 解压后把.so文件复制到PHP模块目录(用php -i | grep extension_dir查具体路径,一般是/usr/lib64/php/modules/)
  • 在/etc/php.d/目录新建两个配置文件:
    • 30-sqlsrv.ini里写:extension=sqlsrv.so
    • 31-pdo_sqlsrv.ini里写:extension=pdo_sqlsrv.so
  • 重启PHP-FPM或者Apache,用php -m | grep sqlsrv检查是否加载成功

2. ARM架构(Graviton)实例

官方没预编译包,只能手动编译:

  • 先装依赖:
    sudo dnf install php-devel php-pear gcc-c++ make unixODBC-devel
    
  • 用PECL编译安装:
    sudo pecl install sqlsrv pdo_sqlsrv
    
  • 编译完之后按照上面x86的步骤添加配置文件,重启服务验证

额外排查点

  • 如果复制.so后还是报错,检查文件权限:
    sudo chmod 755 /usr/lib64/php/modules/sqlsrv.so /usr/lib64/php/modules/pdo_sqlsrv.so
    
  • 确保系统装了unixODBC:
    sudo dnf install unixODBC
    

内容的提问来源于stack exchange,提问作者Alec Smythe

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.25 23:42:45