2015-02-07 3 views
3

Я установил homestead 2.0 на хост OSX и использовал Sequel Pro.Laravel; "SQLSTATE [HY000] [2002] Соединение отклонено"

Могу выполнить миграцию и подтвердить, что данные переносятся в Sequel Pro, поэтому это не вызывает проблем с подключением к БД.

Но как только я пытаюсь извлечь данные из приложения Laravel 4.2, он не может получить данные и получить следующую ошибку.

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

Вот моя конфигурация mysql.

'mysql' => array(
      'driver' => 'mysql', 
      'host'  => '127.0.0.1', 
      'port'  => '33060', 
      'database' => 'homestead', 
      'username' => 'homestead', 
      'password' => 'secret', 
      'charset' => 'utf8', 
      'collation' => 'utf8_unicode_ci', 
      'prefix' => '' 

Сиквел про установка же выше,

Name: 127.0.0.1  
Host: 127.0.0.1 
Username: homestead 
Password: secret 
Database:  
Port: 33060 

Я попытался изменить имя хоста «локальными», усадьба не разрушать и вверх, но не работает. Почему? Любое предложение помогает.

+0

Порт MySQL обычно '3306', а не' 33060'. Однако вы можете настроить свою систему несколько иначе. Двойная проверка. –

+0

'33060' корректен для Sequel, потому что это порт, в котором находится гостевая VM, на ваш хост-компьютер. Для вас приложение вам нужно «3306», потому что оно работает внутри виртуальной машины. – cgross

+0

Изменено Продолжение на '33060' и усадьба порт '3306', но нет работы. – Hanimar

ответ

9

У меня была точно такая же проблема, и я не уверен, почему это происходит. Однако изменение

'host'  => '127.0.0.1', 

в

'host'  => 'localhost', 

работал для меня. Всегда проще, чем мы ожидаем!

+0

Это потому, что localhost может быть 127.0.0.1 или :: 1 – maztch

+0

Спасибо за это;) – daneczech

+2

Я сделал это, но не работал –

0
'mysql' => array(
      'driver' => 'mysql', 
      'host'  => 'localhost', 
      'database' => 'homestead', 
      'username' => 'homestead', 
      'password' => 'secret', 
      'charset' => 'utf8', 
      'collation' => 'utf8_unicode_ci', 
      'prefix' => '' 

Попробовать это может работать для вас

1

Для других разработчиков, которые там работают Laravel на это последнюю версию (5.3) Я просто изменить эти строки:

DB_HOST=127.0.0.1 
DB_PORT=3306 

в этом:

DB_HOST=localhost 
DB_PORT=33060 

Очевидно, 33060 будут преобразованы в 3306, но не могу объяснить, почему localhost должен работать.

+0

Это не сработало для меня. – Ryan

0

Я столкнулся с той же проблемой, почему-то ни одно из вышеописанных не работает. Для меня я попробовал это в .env. Я изменил DB_HOST на homestead.local. Усадьба - это имя моего сайта. Это сработало.

DB_HOST=homestead.local 
1

Я решил проблему, заменяющее адрес 127.0.1.1 на локальный от параметра хоста в файле .env в Laravel в. Я работаю над GNU/Linux Debian 8, Laravel 5.6.3, PHP 7.1.8, Apache 2.4.27 и (Mysql) 10.1.26-MariaDB.

Смежные вопросы