美文网首页
YII2进行MySQL数据库操作时出现Database Exce

YII2进行MySQL数据库操作时出现Database Exce

作者: marility | 来源:发表于2017-05-26 17:48 被阅读0次

    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

    相关文章

      网友评论

          本文标题:YII2进行MySQL数据库操作时出现Database Exce

          本文链接:https://www.haomeiwen.com/subject/jvpxfxtx.html