我试图按照本指南: https://laravel.com/docs/5.2/quickstart用PHP工匠Laravel错误迁移
我在AWS上运行Ubuntu 14.04。我正在使用laravel 5.2。我对laravel很陌生(对于这个问题也很关注),我已经完成了指南中的所有内容,并得到了这个错误。
当我运行:
php artisan migrate
我得到以下错误:
[PDOException]
SQLSTATE[28000] [1045] Access denied for user 'homestead'@'localhost' (usin g password: YES)
的.ENV文件看起来是这样的:
APP_ENV=local APP_DEBUG=true APP_KEY=hXP0uBJkQos3cHK7D8f6LVx2SLuLAuyv
DB_HOST=localhost
DB_DATABASE=homestead
DB_USERNAME=homestead
DB_PASSWORD=secret
CACHE_DRIVER=file
SESSION_DRIVER=file
QUEUE_DRIVER=sync
REDIS_HOST=localhost
REDIS_PASSWORD=null
REDIS_PORT=6379
MAIL_DRIVER=smtp
MAIL_HOST=mailtrap.io
MAIL_PORT=2525 MAIL_USERNAME=null
MAIL_PASSWORD=null MAIL_ENCRYPTION=null
编辑:好了,所以我想这个问题是由于对Ubuntu,MySQL和laravel缺乏了解。我完全按照上面的链接中的指导,但我想这是为运行宅基地的人。它看起来像在Ubuntu服务器上,你必须手动创建数据库(猜测这似乎很明显)。
所以与登录到mysql:系统提示您输入它的时候
mysql -u root -p
然后输入密码。
使用root可能不是一个好主意,但我只是在学习。 您在此处输入的密码与您必须在laravel根目录中的.env文件中输入的密码相同。
一旦登录到mysql的输入:
mysql> create database homestead;
这将创建具有相同名称作为.ENV文件DB_DATABASE指定的宅基地=数据库。我应该为我不使用宅基地从宅基地改变:/
的DB_USERNAME是我们用来登录到MySQL所以
DB_USERNAME = root
相同的用户名当密码是我们使用相同的密码登录到MySQL。
这可能似乎都很明显,但我是新的,不知道。它也没有在Laravel网站的快速入门指南中介绍。也许我没有准确地遵循它,如果是的话,让我知道。
干杯
您是否已经在AWS上安装MySQL? – enriqg9
我输入了mysql --version并得到:mysql Ver 14.14 Distrib 5.5.46,对于使用readline的debian-linux-gnu(x86_64)6.3 –
什么是DB_DATABASE,DB_USERNAME,DB_PASSWORD,数据库是否会自动使用这些凭证创建?或者我必须手动执行它? DB_PASSWORD是否意味着我用来登录到mysql的密码?我使用以下命令登录到mysql:“mysql -u root -p”<然后我输入密码>。这个密码应该和DB_PASSWORD一样吗? –