首先确认PHP版本及系统类型,下载并安装对应SQLSRV扩展,配置php.ini启用sqlsrv和pdo_sqlsrv扩展,安装ODBC驱动,重启服务后通过测试脚本验证扩展加载与数据库连接。

要在PHP中连接SQL Server(MSSQL),必须安装并配置SQLSRV扩展。这个扩展由微软提供,支持Windows和Linux环境下的PHP与Microsoft SQL Server通信。以下是详细的配置步骤。
1. 确认PHP环境和版本
SQLSRV扩展对PHP版本有明确要求,需先确认当前环境:
- 查看PHP版本:运行 php -v 命令
- 查看是线程安全(TS)还是非线程安全(NTS)版本:可通过 phpinfo() 查看
- 32位或64位系统也影响驱动选择
2. 下载SQLSRV扩展驱动
访问微软官方GitHub发布页面获取驱动:
- 官网地址:https://www.php.cn/link/7322c71e66f72ebb1cf52d9a6abc90ca
- 下载对应版本的 php_sqlsrv_xxx_ts/php_sqlsrv_xxx_nts DLL文件(Windows)或通过PECL安装(Linux)
- 常见文件如:php_sqlsrv_80_ts.dll(PHP 8.0 线程安全版)
3. 安装扩展(Windows)
将下载的DLL文件放入PHP扩展目录(ext):
立即学习“PHP免费学习笔记(深入)”;
- 复制 php_sqlsrv_*.dll 到 php/ext/ 目录下
- 打开 php.ini 文件,在末尾添加:
extension=sqlsrv extension=pdo_sqlsrv说明:sqlsrv用于过程化调用,pdo_sqlsrv支持PDO方式连接。
4. Linux系统安装(以Ubuntu为例)
使用PECL工具安装更方便:
sudo pecl install sqlsrv sudo pecl install pdo_sqlsrv
安装完成后,在 php.ini 中添加:
extension=sqlsrv extension=pdo_sqlsrv
某些发行版还需安装依赖:
sudo apt-get install unixodbc-dev
5. 安装ODBC驱动程序
SQLSRV依赖系统级ODBC驱动:
- Windows:已内置ODBC Driver,可选安装最新版 ODBC Driver 17 for SQL Server
- Linux:需手动安装,命令如下:
# Ubuntu curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add - curl https://packages.microsoft.com/config/ubuntu/20.04/prod.list > /etc/apt/sources.list.d/mssql-release.list sudo apt-get update sudo ACCEPT_EULA=Y apt-get install -y msodbcsql17
6. 重启Web服务并验证
修改配置后重启服务:
- Apache: sudo service apache2 restart
- Nginx + PHP-FPM: sudo service php-fpm restart
创建测试脚本验证扩展是否加载:
7. 测试连接MSSQL数据库
使用以下代码测试连接:
"YourDB",
"Uid" => "your_username",
"PWD" => "your_password"
];
$conn = sqlsrv_connect($serverName, $connectionOptions);
if ($conn) {
echo "连接成功";
} else {
print_r(sqlsrv_errors());
}
?>
基本上就这些。确保每一步都匹配环境,特别是版本一致性和ODBC驱动安装。











