Nath
Nath

Reputation: 57

Illuminate\Database\QueryException

I have created database in localhost

Illuminate\Database\QueryException  : SQLSTATE[HY000] [1045] Access denied for user 'root'@'localhost' (using password: YES
(SQL: select * from information_schema.tables where table_schema = laravel5 and table_name = migrations)

at F:\full stack\laravel\laravel5\vendor\laravel\framework\src\Illuminate\Database\Connection.php: 664
660:         // If an exception occurs when attempting to run a query, we'll format the error
661:         // message to include the bindings with SQL, which will make this exception a
662:         // lot more helpful to the developer instead of just the database's errors.
663:         catch (Exception $e) {
664:             throw new QueryException(
665:                 $query, $this->prepareBindings($bindings), $e
666:             );
667:         }
668:
669:         return $result;

Exception trace:

PDOException::("SQLSTATE[HY000] [1045] Access denied for user 'root'@'localhost' (using password: YES)") F:\full stack\laravel\laravel5\vendor\laravel\framework\src\Illuminate\Database\Connectors\Connector.php : 68

PDO::__construct("mysql:host=127.0.0.1;port=3306;dbname=laravel5", "root", "pwd", []) F:\full stack\laravel\laravel5\vendor\laravel\framework\src\Illuminate\Database\Connectors\Connector.php : 68

Please use the argument -v to see more details.

Upvotes: 0

Views: 23271

Answers (2)

Nikhil Warvatkar
Nikhil Warvatkar

Reputation: 136

To fix the error, go to app/Providers/AppServiceProvider.php and add a boot function as follows.

(Make sure to import the Schema facade from Illuminate\Support\Facades\Schema.

<?php

namespace App\Providers;

use Illuminate\Support\ServiceProvider;
use Illuminate\Support\Facades\Schema;


public function boot()
{
    Schema::defaultStringLength(191);
}

Upvotes: 2

user320487
user320487

Reputation:

Check your user privileges for 'root'@'localhost' in your database. You likely either need to create an entry for root@localhost or use [email protected]

To create a new user/supplement an existing one, run the following commands:

// change your_db_user to root or the user name you specify
// change login_from to 127.0.0.1 or any valid hostname/ip address
// change your_db_password to the password you set in your .env file

$ mysql -u root -p
$ create user your_db_user (skip this step if you're adding a new entry for root or a user that already exists)
$ grant all on your_db_name.* to 'your_db_user'@'login_from' identified by 'your_db_password';
$ flush privileges

Upvotes: 2

Related Questions