Laravel по-русски

Русское сообщество разработки на PHP-фреймворке Laravel.

Ты не вошёл. Вход тут.

#1 09.01.2020 11:06:29

Как исправить ошибку при попытке миграции?

Здравствуйте.
Я впервые работаю с laravel, только изучаю курсы. До сих пор проблем вроде не было, но перешел к миграциям и не могу разобраться как исправить ошибку.

Я работаю с laradock локально.
Вот настройки файла .env из директории с проектом.

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

В каталоге laradock в файле .env версия mysql была latest, я заменил на 5.7
Настройка PHP_FPM_INSTALL_MYSQLI в том же файле установлена в true.

Я захожу в папку laradock и потом захожу в workspace через терминал

docker-compose exec --user=laradock workspace bash

Потом захожу в папку с проектом и пытаюсь сделать миграцию

php artisan migrate

И получаю ошибку

 [PDOException]                             
  SQLSTATE[HY000] [2002] Connection refused  
                                            

Подскажите пожалуйста, я все правильно делаю?

Заранее благодарен за подсказку.

Не в сети

#2 09.01.2020 12:03:36

Re: Как исправить ошибку при попытке миграции?

Где-то ты ошибся, но мы не сможем сказать, т.к. это зависит от твоих местных настроек laradock.
Вот тема, читай, пробуй: https://github.com/laradock/laradock/issues/1299


There are two hard things in computer science: cache invalidation, naming things, and off-by-one errors.

Не в сети

#3 09.01.2020 12:07:01

Re: Как исправить ошибку при попытке миграции?

Я бы сначала убедился что MySQL работает и доступен, любым доступным способом. Потом перепроверил бы под каким именем мапится контейнер с БД. Может быть так вернее:

DB_HOST=mysql

и уж точно не использовал бы вход под root


There are two hard things in computer science: cache invalidation, naming things, and off-by-one errors.

Не в сети

#4 09.01.2020 12:12:39

Re: Как исправить ошибку при попытке миграции?

Спасибо, я уже нашел решение.
Может кому-то тоже поможет.

Я распишу все по-порядку:
1.В файле с проектом поменял для опции DB_HOST c 127.0.0.1 на mysql.
2.В файле .env в директории laradock поменял версию mysql с latest на 5.7
3.Удалил директорию ~/.laradock/data/mysql и прописал в терминале, находясь в директории laradock,

docker-compose build mysql

4.Далее нужно создать базу данных, я создал через phpmyadmin, только теперь в поле host нужно прописать не как прежде localhost, а mysql.

И потом уже зайти в контейнер, в папку проекта и сделать миграцию.

docker-compose exec --user=laradock workspace bash
php artisan migrate

Надеюсь, что мой ответ кому-то поможет.

Не в сети

Подвал раздела