Docker MySQL соединение не удается с Laravel - PullRequest
0 голосов
/ 29 сентября 2018

Поэтому у меня проблемы с подключением моего приложения Laravel к контейнеру MySQL.Со следующим docker-compose я получаю сообщение об ошибке:

Соединение отклонено (SQL: выберите * из information_schema.tables, где table_schema = hometead и table_name = миграции)

database:
  image: mysql:5.7
    volumes:
      - dbdata:/var/lib/mysql
     environment:
      - "MYSQL_ROOT_PASSWORD=secret"
      - "MYSQL_DATABASE=homestead"
      - "MYSQL_USER=root"
      - "MYSQL_PASS=secret"
    ports:
      - "33061:3306"

Если я изменяю свой образ на mysql, я получаю сообщение об ошибке:

Сервер запрашивает метод аутентификации, неизвестный клиенту (SQL: select * from information_schema.tables, где table_schema = homestead и table_name = migrations)

Сервер запросил метод аутентификации, неизвестный клиенту [caching_sha2_password]

Мой laravel .env выглядит так:

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

Я попытался DB_HOST = база данных какхорошо.

Любая помощь будет отличной.Спасибо!

ОС: OSX

1 Ответ

0 голосов
/ 29 сентября 2018

Я полагаю, у вас есть старые данные в папке dbdata, и они вызывают проблемы.Если вам не нужна старая БД, просто удалите содержимое этой папки и запустите контейнер mysql с нуля.Еще одна проблема - порт.Вы публикуете MySQL через порт 33061, поэтому Laravel должен быть настроен на DB_PORT=33061.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...