SQLSTATE[HY000] [2002] No such file or directory错误

今天,同事发现公司网站打不开了,提示:

SQLSTATE[HY000] [2002] No such file or directory错误_第1张图片

原因:

连接MYSQL数据库报错,原因是PDO无法找到mysql.sock或者mysqld.sock

解决办法:

1、查看mysql配置文件,确认下socket目录

我这里mysql配置文件地址如下是:

caixin@cs1:~$ sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf 

 显示socket地址:/var/run/mysqld/mysqld.sock

 

 2、找到php.ini文件

caixin@cs1:/etc/php/7.0/apache2$ sudo vim php.ini 

 找到pdo_mysql.default_socket,把值填写上面mysql 的socket路径

 SQLSTATE[HY000] [2002] No such file or directory错误_第2张图片

 3、重新php与apache,网站恢复正常

caixin@cs1:/etc/php/7.0/apache2$ sudo /etc/init.d/php7.0-fpm restart
[ ok ] Restarting php7.0-fpm (via systemctl): php7.0-fpm.service.
caixin@cs1:/etc/php/7.0/apache2$ sudo /etc/init.d/apache2 restart
[ ok ] Restarting apache2 (via systemctl): apache2.service.
caixin@cs1:/etc/php/7.0/apache2$ 

你可能感兴趣的:(Linux,mysql,数据库,服务器)