SQLSTATE [HY000] [2002] yii2中没有这样的文件或目录

问题描述 投票:8回答:6

我用ubuntu 16.04. PHP Version 7.0.4-7ubuntu2Apache/2.4.18 (Ubuntu)PHP extension: mysqli(在phpmyadmin撰写)。

我从15.10 to 16.04升级了我的ubuntu,我有这个错误:

我的项目在我的服务器中正确运行但我无法在我的操作系统中运行:

Database Exception – yii\db\Exception
SQLSTATE[HY000] [2002] No such file or directory
↵
Caused by: PDOException
SQLSTATE[HY000] [2002] No such file or directory

in /var/www/html/iicitySite/vendor/yiisoft/yii2/db/Connection.php at line 579
php mysql yii2 apache2
6个回答
34
投票

将“localhost”更改为“127.0.0.1”作为主持人

return [
    'components' => [
        'db' => [
            'class' => 'yii\db\Connection',    
            'dsn' => 'mysql:host=127.0.0.1;dbname=abc',
            'username' => 'root',
            'password' => '',
            'charset' => 'utf8',
        ],

2
投票

对于MAMP用户解决方案是

'components' => [
    'db' => [
        'class' => 'yii\db\Connection',
        'dsn' => 'mysql:host=localhost;port=8889;dbname=mydbname;unix_socket=/Applications/MAMP/tmp/mysql/mysql.sock',
        'username' => 'myuser',
        'password' => 'mypassword',
        'charset' => 'utf8',
    ],
],

1
投票

如果你使用mamp,不要在MAC OS中使用“php”命令,而是在mamp中使用“php”,例如/Applications/MAMP/bin/php/php5.6.30/bin/php yii migrate


0
投票

希望这个答案能帮到你:

将主机名从localhost更改为127.0.0.1

这是在backend \ common \ config \ main-local.php中

现在你运行php yii migrate。

希望,它将成功创建数据库中的表


0
投票

我也有同样的问题。改变localhost并没有解决我的问题。相反,添加您的数据库端口,如下所示:

'dsn'=>'mysql:host=localhost:3307;dbname=geep'

0
投票

我正在运行MAMP环境,使用上面的两个解决方案很好

  1. localhost改为127.0.0.1
  2. 保留为localhost并定义mysql端口甚至使用默认端口(localhost:3306
© www.soinside.com 2019 - 2024. All rights reserved.