php连接数据库报错:SQLSTATE[HY000] [2002] No such file or directory 的处理方法

2019-07-15 PHP 1469

PHP链接数据库报 SQLSTATE[HY000] [2002] No such file or directory 错误

  • 原因

php配置找不到mysql的socket路径,导致无法建立连接。

  • 解决办法

  1. 找到php.ini文件

  2. 查找 pdo_mysql.default_socketmysqli.default_socket ,改为mysql的路径,我的服务器配置如下:

# PDO
pdo_mysql.default_socket=/var/lib/mysql/mysql.sock
# MySQLi
mysqli.default_socket=/var/lib/mysql/mysql.sock
  1. 重启php-fpm

    #杀死php-fpm进程
    ps -ef|grep php-fpm|awk -F ' ' '{print $2}'|xargs kill -9
    #找到php-fpm路径重启
    ./php-fpm

  • 解决方法2 【网上搜集,未验证】

将PDO连接中的dsn的host由“localhost”改为“127.0.0.1”即可

0