Ali Shaukat
Ali Shaukat

Reputation: 965

Laravel 5: php artisan migrate issue

I have correctly specified the configuration in database.php file.

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

when i run this on console

php artisan migrate

It gives the error Access denied for user 'homestead'@'localhost' (using password: YES)'

Why is it is giving this error and what is the solution?

Upvotes: 1

Views: 176

Answers (2)

Imtiaz Pabel
Imtiaz Pabel

Reputation: 5443

In laravel first priority is .env file so that if there is already set a configuration in .env file that will work first,if not found any configuration in .env file then your database.php file will work.In .env file

DB_HOST=localhost
DB_DATABASE=database
DB_USERNAME=root
DB_PASSWORD=password

If you want to use database.php for configuration then you don't need to use env() function. After removing the env() function the updated code will be

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

Upvotes: 2

Vinod VT
Vinod VT

Reputation: 7149

Check the .env file, You need to specify the database information on .env file

DB_HOST=localhost
DB_DATABASE=laravel5
DB_USERNAME=root
DB_PASSWORD=abc123

Upvotes: 2

Related Questions