Laravel 4: Zmień "host" w app/config/database.php
plik z „localhost” do „127.0.0.1”
Laravel 5+: Zmień „DB_HOST” w .env
plik z „localhost” do „127.0.0.1”
Miałem dokładnie ten sam problem. Żadne z powyższych rozwiązań nie zadziałało dla mnie. Problem rozwiązałem, zmieniając „host” w pliku /app/config/database.php z „localhost” na „127.0.0.1”.
Nie jestem pewien, dlaczego "localhost" domyślnie nie działa, ale znalazłem tę odpowiedź w podobnym pytaniu rozwiązanym w poście symfony2. https://stackoverflow.com/a/9251924/1231563
Aktualizacja: Niektórzy pytali, dlaczego ta poprawka działa, więc przeprowadziłem trochę badań w tym temacie. Wygląda na to, że używają różnych typów połączeń, jak wyjaśniono w tym poście https://stackoverflow.com/a /9715164/1231563
Problem, który się tutaj pojawił, polega na tym, że „localhost” używa gniazda UNIX i nie może znaleźć bazy danych w standardowym katalogu. Jednak „127.0.0.1” używa protokołu TCP (Transmission Control Protocol), co zasadniczo oznacza, że działa przez „lokalny Internet” na twoim komputerze, będąc w tym przypadku znacznie bardziej niezawodnym niż gniazdo UNIX.