Laravel / homestead无法通过客户端连接到数据库

问题描述 投票:1回答:1

我一直试图连接到我的laravel / homstead盒子的数据库一段时间。一旦我跑了php artisan migratevagrant up,我就能成功地运行vagrant ssh。我已经尝试了很多解决方案,比如使用localhost而不是127.0.0.1,并尝试了主机文件ip 192.168.10.10都没有用。

主机文件:

127.0.0.1   localhost
255.255.255.255 broadcasthost
::1             localhost
192.168.10.10  vueapp.local
192.168.10.10  laravelapp.local

database.php中:

 'mysql' => [
        'driver' => 'mysql',
        'host' => env('DB_HOST', '127.0.0.1'),
        'port' => env('DB_PORT', '3306'),
        'database' => env('DB_DATABASE', 'forge'),
        'username' => env('DB_USERNAME', 'forge'),
        'password' => env('DB_PASSWORD', ''),
        'unix_socket' => env('DB_SOCKET', ''),
        'charset' => 'utf8mb4',
        'collation' => 'utf8mb4_unicode_ci',
        'prefix' => '',
        'prefix_indexes' => true,
        'strict' => true,
        'engine' => null,
    ],

.env文件

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

我使用TablePlus for Mac作为mysql客户端

密码使用:秘密

TablePlus connection settings screenshot

TablePlus error message

设法通过ssh连接。我仍然不知道为什么客户(我也试过续集专业版)每次都超时。

这些是我最终使用的设置ssh vagrant默认密码是“vagrant”

DB Client settings

mysql database laravel homestead
1个回答
0
投票

我认为你的应用程序安装在一个vagrant容器中。但是您的数据库位于安装virtulbox的实际主机mac机器内。

当你的应用程序将主机IP称为127.0.0.1时,这就是流浪机的本地环回地址,而不是流浪者正在运行的mac机器。

因此,您可以尝试将安装在mac机器中的MySQL客户端连接到驻留在虚拟容器内的应用程序。

您可以在vagrant服务器中安装MySQL,以便您的应用程序可以通过指向主机IP 127.0.0.1来使用它。

© www.soinside.com 2019 - 2024. All rights reserved.