无法 运行 Laravel 迁移到 Homestead

Cannot run Laravel migration on Homestead

我从昨天开始就一直在尝试 运行 迁移,但是数据库连接阻止了它 注意:我可以从其他项目很好地访问数据库。这只发生在 laravel 在宅基地上。这是 php artisan migrate 命令的输出:

SQLSTATE[HY000] [1045] Access denied for user 'abdellah'@'192.168.10.10' (using password: YES) (SQL: select * from information_schema.tables where table_schema = furbook and table_name = migrations and table_type = 'BASE TABLE')

这是我的 .env 数据库配置

DB_CONNECTION=mysql
DB_HOST=localhost
DB_PORT=3306
DB_DATABASE=furbook
DB_USERNAME=abdellah
DB_PASSWORD=bonjour1

这是 database.php 文件

      'mysql' => [
            'driver' => 'mysql',
            'url' => env('DATABASE_URL'),
            'host' => env('DB_HOST', 'localhost'),
            'port' => env('DB_PORT', '3306'),
            'database' => env('DB_DATABASE', 'furbook'),
            'username' => env('DB_USERNAME', 'abdellah'),
            'password' => env('DB_PASSWORD', 'bonjour1'),
            'unix_socket' => env('DB_SOCKET', ''),
            'charset' => 'utf8mb4',
            'collation' => 'utf8mb4_unicode_ci',
            'prefix' => '',
            'prefix_indexes' => true,
            'strict' => true,
            'engine' => null,
            'options' => extension_loaded('pdo_mysql') ? array_filter([
                PDO::MYSQL_ATTR_SSL_CA => env('MYSQL_ATTR_SSL_CA'),
            ]) : [],
        ],

我运行正在使用 Homestead 环境。 谢谢。

您确定所有内容都拼写正确了吗?

我唯一能想到的是在端口末尾添加一个额外的 0 (DB_PORT=33060)。

这很奇怪,但我有一个使用 homestead 的新 Laravel 项目,我可以在终端中访问 DB artisan 命令的唯一方法是在端口上添加一个 0,但后来我不得不将其取下再次通过 HTTP 访问它。

通过将 DB 用户名设置为 homestead 并将 DB 密码设置为 secret,我能够 运行 迁移成功。

DB_USERNAME=homestead
DB_PASSWORD=secret