Laravel / усадьба не может подключиться к базе данных через клиента - PullRequest
0 голосов
/ 24 февраля 2019

Я уже некоторое время пытаюсь подключиться к базе данных моей коробки laravel / homstead.Я могу успешно запустить php artisan migrate после запуска vagrant 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 file

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

Я использую TablePlus для Mac в качестве клиента mysql

используемый пароль: секретный

снимок экрана настроек соединения TablePlus

Сообщение об ошибке TablePlus

Решение

удалось подключиться через ssh.Я до сих пор не понимаю, почему клиенты (я тоже пробовал Sequel Pro) каждый раз зависали.

Это настройки, которые я в конечном итоге использовал. Ssh vagrant. Пароль по умолчанию: "vagrant"

Настройки клиента БД

1 Ответ

0 голосов
/ 24 февраля 2019

Я думаю, что ваше приложение установлено в бродячем контейнере.Но ваша база данных находится внутри вашего фактического хост-компьютера Mac, на котором установлен virtulbox.

Когда ваше приложение говорит, что IP-адрес хоста равен 127.0.0.1, это ваш локальный адрес обратной связи для бродячей машины, а не тот компьютер Mac, на котором находится бродяга.Бег.

Таким образом, вы можете попытаться подключить клиент MySQL, установленный на вашем компьютере Mac, к приложению, которое находится в виртуальном контейнере.

Вы можете установить MySQL внутри сервера vagrant, чтобы ваше приложение могло использоватьуказав на хост IP 127.0.0.1.

...