Day: October 14, 2021

  • PDO连接数据库报错:“SQLSTATE[HY000] [2002] No such file or directory”

    PDO连接数据库报错:“SQLSTATE[HY000] [2002] No such file or directory”

    出现这个问题的原因是PDO无法找到mysql.sock或者mysqld.sock。 解决方法:找到相应的.sock文件.mysql> show variables like ‘%sock%’;+—————————————–+—————————+| Variable_name | Value |+—————————————–+—————————+| performance_schema_max_socket_classes | 10 || performance_schema_max_socket_instances | -1 || socket | /var/lib/mysql/mysql.sock |+—————————————–+—————————+3 rows in set (0.00 sec) 并设置php.ini文件中的pdo_mysql.default_socket的值为.sock文件的路径。pdo_mysql.default_socket = /var/lib/mysql/mysql.sock 另外一种解决方法,将PDO连接中的dsn的host由“localhost”改为“127.0.0.1”,没试过。