2002 yii2 mysql_YII2进行MySQL数据库操作时出现Database Exception – yii\db\Exception SQLSTATE[HY000] [2002] No ...

YII2进行MySQL操作时出现Database Exception – yii\db\Exception SQLSTATE[HY000] [2002] No such file or directory错误的解决方法

在进行数据库操作时出现如下类似错误,实际则是PHP配置文件php.ini中未指定mysql.sock(或mysqld.sock)文件路径导致的PDO无法链接数据库

解决方法是在php.ini文件中自己手动指向mysql.sock路径

如果没有php.ini文件,请先行安装php-common扩展

find / -iname php.ini 找到php.ini文件

vim php.ini

mysql.default_socket = /tmp/mysql.sock

pdo_mysql.default_socket = /tmp/mysql.sock

mysqli.default_socket = /tmp/mysql.sock

以上三个mysql的值默认是空,将其修改为mysql.sock的路径即可

部分人的mysql.sock值并不一定在/tmp下面,可以进入mysql后进行查找

MariaDB [(none)]> show variables like '%sock%';

+---------------+------------------------+

| Variable_name | Value |

+---------------+------------------------+

| socket | /work/mysql/mysql.sock |

+---------------+------------------------+

1 row in set (0.00 sec)

如上例中,mysql.sock路径就并不是/tmp目录下。不能查看phpinfo,有时候phpinfo信息会出现一定的bug

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值