laravel 照亮\数据库\查询异常
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/48965876/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
Illuminate\Database\QueryException
提问by Nath
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.
回答by
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]
检查您'root'@'localhost'
的数据库中的用户权限。您可能需要创建一个条目root@localhost
或使用[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
回答by Nikhil Warvatkar
To fix the error, go to app/Providers/AppServiceProvider.php
and add a boot functionas follows.
要修复错误,请转到app/Providers/AppServiceProvider.php
并添加启动功能,如下所示。
(Make sure to import the Schema facade from Illuminate\Support\Facades\Schema
.
(确保从Illuminate\Support\Facades\Schema
.
<?php
namespace App\Providers;
use Illuminate\Support\ServiceProvider;
use Illuminate\Support\Facades\Schema;
public function boot()
{
Schema::defaultStringLength(191);
}