2017-04-02 193 views
-1

我想建立学习laravel这个过程如下: https://laracasts.com/series/laravel-from-scratch-2017/episodes/4PHP工匠迁移 - SQLSTATE [HY000] [1045]访问被拒绝的用户“laravel” @“localhost”的

当我尝试使用命令php artisan migrate我得到这个错误:

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

[PDOException]                    
    SQLSTATE[HY000] [1045] Access denied for user 'laravel'@'localhost' (using password: NO) 

Tryied寻找答案,我想我可以做的.ENV文件中的一些变化,但不知道是什么,什么迄今工作。

DB_CONNECTION=mysql 
DB_HOST=127.0.0.1 
DB_PORT=3306 
DB_DATABASE=laravel 
DB_USERNAME=laravel 
DB_PASSWORD= 

我使用的是Ubuntu 16.04而不是Mac OS X中的视频,因此我不知道该怎么做不同?有没有我没有做的一些MySQL设置?

+2

你的mysql服务正在运行吗?并检查'.env'文件中的mysql凭证 –

+1

'sudo /etc/init.d/mysql start' for this command我得到:'[ok]启动mysql(通过systemctl):mysql.service.'仍然出错是一样的。我应该检查什么凭证? – MattSom

+0

laravel用户是否存在于数据库中?你有没有尝试在你的数据库上创建一个表laravel并向用户添加所有权限? – suecarmol

回答

3

您没有名为'laravel'的用户。 您应该将DB_USERNAME更改为实际用于访问数据库的DB_USERNAME。 多数是由默认根所以.ENV的变化应该是

DB_CONNECTION=mysql 
DB_HOST=127.0.0.1 
DB_PORT=3306 
DB_DATABASE=laravel 
DB_USERNAME=root 
DB_PASSWORD= 
+0

是的,你是对的。谢谢你,先生 :) – MattSom

0

当我有这个问题,那是因为我忘记了当地的环境比3306对我以外的端口上运行MySQL,这是如果你使用XAMPP,我会检查你使用的是什么端口,并确保它匹配你的.env文件。

0

如果使用甲基苯丙胺和默认root用户名/密码,您.ENV文件数据库配置应使用“本地主机”,而不是127.0.0.1和“根”对于这两个用户名和密码:

DB_CONNECTION=mysql 
DB_HOST=localhost 
DB_PORT=3306 
DB_DATABASE=laravel 
DB_USERNAME=root 
DB_PASSWORD=root 
相关问题