2015-02-08 11 views
8

Używam polecenia php artisan migrate do migracji mojego połączenia z bazą danych, ale wciąż dostaję ten sam błąd i sprawdziłem wszystko, nic złego. Użyłem tego samego połączenia, które zawsze używam w laravel 4,2problemy z połączeniem z bazą danych w laravel 5

Oto komunikat pojawia się na mojej konsoli:

exception 'PDOException' with message 'SQLSTATE[HY000] [1045] Access denied for user 'homestead'@'localhost' (using password: YES)' in C:\xampp\htdocs\Projects\blog\vendor\laravel\framework\src\Illuminate\Database\Connectors\Connector.php:47 
+0

Proszę wysłać database.php z ustawieniami połączenia (z hasłami XXX) – baao

+0

@michael 'mysql' => [ \t \t \t 'kierowca' => 'mysql', \t \t \t 'gospodarza' => env ('DB_HOST', localhost) \t \t \t 'bazy danych' => env ('DB_DATABASE', 'korzeń') \t \t \t 'nazwę użytkownika' => env ('DB_USERNAME' ' „), \t \t 'password' => env ('DB _password ' ''), \t \t \t 'zestaw znaków'=> 'utf8' \t \t \t 'sortowanie'=> 'utf8_unicode_ci' \t \t \t 'przedrostek'=> '' \t \t \t' strict '=> false, \t \t], –

Odpowiedz

5

Spójrz na swojej config/database.php i .env file.Maybe Twoje dane w bazie jest inna.

20

trzeba zmienić wartości w pliku .env, znajduje się w folderze głównym twojego projektu.

Jeśli nie ma pliku .env, skopiuj plik .env.example do .env.

Laravel używa tego pliku do ochrony swoich haseł. Wartości, które ustawiasz, są używane tylko wtedy, gdy w pliku .env nie ma dostępnej konfiguracji, domyślnym użytkownikiem jest homestead.

+0

dziękuję bardzo ... działa !! –

+0

Wow ...! Plik '.env' nie był widoczny w moim projekcie netbeans (zastanawiam się) niż znajdowanie w przeglądarce i gotowe ... Dzięki ...! –

6

Możesz przejść do pliku .env. Plik dostępny w folderze Project Root.

Następnie niektóre z nich związane z bazą danych.

enter image description here

Następnie uruchom poniżej polecenia, aby usunąć starą pamięć podręczną konfiguracji.

php rzemieślnik config: jasne

3

Masz również ten problem. Po aktualizacji .env i uruchomieniu php artisan config:clear problem nadal występował! Następnie po zatrzymaniu serwera i ponownym uruchomieniu serwera ponownie z php artisan serve, problem został rozwiązany!

+0

Uruchom te dwie komendy do rozwiązywania SQLSTATE [HY000] [1049] Nieznana baza danych ............ –

1

zmienić następujące atrybut z database.php

'mysql' => [ 
      'driver' => 'mysql', 
      'host'  => env('DB_HOST', 'localhost'), 
      'database' => env('DB_DATABASE', 'forge'), 
      'username' => env('DB_USERNAME', 'forge'), 
      'password' => env('DB_PASSWORD', ''), 
      'charset' => 'utf8', 
      'collation' => 'utf8_unicode_ci', 
      'prefix' => '', 
      'strict' => false, 
] 

do

'mysql' => [ 
      'driver' => 'mysql', 
      'host'  => 'localhost', 
      'database' => 'laravel', 
      'username' => 'root', 
      'password' => '', 
      'charset' => 'utf8', 
      'collation' => 'utf8_unicode_ci', 
      'prefix' => '', 
      'strict' => false, 
     ], 

To musi działać dobrze następnie uruchom następujące polecenie:

php artisan migrate:install 
1

rozwiązać ten problem przez aktualizację Plik .env z plikiem config/database.php.

tutaj jest mój config/database.php struktura (używam mysql)

'mysql' => [ 
     'driver' => 'mysql', 
     'host'  => env('DB_HOST', 'localhost'), 
     'database' => env('DB_DATABASE', 'larablog'), 
     'username' => env('DB_USERNAME', 'root'), 
     'password' => env('DB_PASSWORD', ''), 
     'charset' => 'utf8', 
     'collation' => 'utf8_unicode_ci', 
     'prefix' => '', 
     'strict' => false, 
    ], 

I .env złożyć strukturę (tak samo jak config/bazy danych.php)

DB_HOST=localhost  // Host name 
DB_DATABASE=larablog // Database name 
DB_USERNAME=root  // Database User 
DB_PASSWORD=   // Db password(No password here) 
0

Jeśli używasz SQLite jako bazy danych, upewnij się, że php5-sqlite zainstalowany

sudo apt-get install php5-sqlite 

Jeśli jest zainstalowany, to może być problem z .env plik. Wymienić

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

z tym

DB_CONNECTION=sqlite 
DB_HOST=127.0.0.1 
DB_PORT=3306 
1

I był już tego samego błędu po aktualizacji informacji bazy danych w moim pliku .env. Naprawiono problem z wierszem polecenia wyjścia i ponownie uruchom php artisan serve Komenda pomógł mi i może być pomocny dla ciebie.

+0

Czy możesz uczynić swoją odpowiedź bardziej czytelną? –

Powiązane problemy