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

Php SQLSTATE[HY000][2002]没有这样的文件或目录,php,mysql,laravel,docker,Php,Mysql,Laravel,Docker,我是拉雷维尔的新手。我正在尝试创建一个带有资源控制器的laravel积垢。但是,当我尝试运行php artisan migrate时,出现以下错误: SQLSTATE[HY000][2002]没有这样的文件或目录(SQL:select*from 信息\u schema.tables,其中table\u schema=宅地和 表(名称=迁移) 这是我的database.php 'mysql' => [ 'driver' => 'mysql', 'hos

我是拉雷维尔的新手。我正在尝试创建一个带有资源控制器的laravel积垢。但是,当我尝试运行
php artisan migrate
时,出现以下错误:

SQLSTATE[HY000][2002]没有这样的文件或目录(SQL:select*from 信息\u schema.tables,其中table\u schema=宅地和 表(名称=迁移)

这是我的database.php

 'mysql' => [
        'driver' => 'mysql',
        'host' => env('DB_HOST', '127.0.0.1'),
        'port' => env('DB_PORT', '3306'),
        'database' => env('DB_DATABASE', 'design'),
        'username' => env('DB_USERNAME', 'homestead'),
        'password' => env('DB_PASSWORD', 'secret'),
        'unix_socket' => env('DB_SOCKET', ''),
        'charset' => 'utf8mb4',
        'collation' => 'utf8mb4_unicode_ci',
        'prefix' => '',
        'strict' => true,
        'engine' => null,
    ],
这是我的环境文件:

    APP_NAME=Laravel
APP_ENV=local
APP_KEY=base64:hLJn+XHKPjf5qEvROeyMMLIjw56Kg9RkXhZIlbjjne4=
APP_DEBUG=true
APP_LOG_LEVEL=debug
APP_URL=http://localhost

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=design
DB_USERNAME=homestead
DB_PASSWORD=secret

这是一个常见的问题,我尝试了很多解决方案,但都不起作用。请帮忙

尝试使用端口3306并将localhost更改为127.0.0.1

比如说

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE= 
DB_USERNAME=
DB_PASSWORD=

我从未使用过homestead,但通常db端口是3306,您确定您的db凭据正确吗?最初我尝试使用3306,但在阅读了一些答案后,我将其更改为33060最初它是3306,但仍然给我相同的错误。我根据我在netOn上找到的解决方案更改了它,将本地主机更改为127.0.0.1,我得到以下错误:
SQLSTATE[HY000][1045]拒绝用户'homestad'@'172.20.0.1'的访问(使用密码:YES)(SQL:select*from information_schema.tables,其中table_schema=homestad和table_name=migrations)
您的新错误消息非常清楚-您使用了错误的用户名/密码。
DB\u HOST
应更改为DB container name