记录一下在PHP5.6或7.x 有PDO方法连接SQL Server遇到的问题
之前在用5.6版本的时候也遇到连接SQL
Serve数据库的各种问题,在试了几种不同的连接方式均以失败告终,连接本地MySql的时用哪种方法可正常,但是连接SQL
Server的时候就各种报错及连接不上,最后用了PDO方式才连接上,其中也是试了好久,也在网上找了好多资料,最终才成功连接上。
两个版本之间的问题也是大同小异,基本处理方式都差不多,最近有用7.x版本做测试(目前php最新版本到了8.2.9了),就顺便记录一下踩坑的过程。
下面以7.x版本为例
遇到Connection failed: SQLSTATE[HY000] [2002] 错误
解决方法
- 确定连接的服务器与账号密码正确后,安装ODBCSQL驱动,首先要确保本机有ODBC的驱动(文章最后有资源下载)。
- 安装后重启一下PHP服务。
如果问题还是没有解决那就进行下面这一步:
在PHP根目录下找到php.ini配置文件,打开文件后找到以下几行,把前面的分号去掉,然后保存文件再重启PHP服务:
extension=php_openssl.dll
extension=php_pdo_mysql.dll
extension=php_pdo_odbc.dll
extension=php_pdo_pgsql.dll
extension=php_pdo_sqlite