2015-09-06 40 views
0

我已經得到了幾個不同的錯誤,運行php工匠遷移時嘗試不同的事情。最近的一次是:如何使用MAMP將我的Laravel 5應用程序連接到MySQL?

Access denied for user 'homestead'@'localhost' (using password: YES 

這是我爲database.php

'mysql' => [ 
    'driver' => 'mysql', 
    'host'  => env('DB_HOST', 'localhost'), 
    'unix_socket' => '/Applications/MAMP/tmp/mysql/mysql.sock', 
    'database' => env('DB_DATABASE', 'forge'), 
    'username' => env('DB_USERNAME', 'forge'), 
    'password' => env('DB_PASSWORD', ''), 
    'charset' => 'utf8', 
    'collation' => 'utf8_unicode_ci', 
    'prefix' => '', 
    'strict' => false, 
    'port' => '3306' 
], 

,這是.ENV

APP_ENV=local 
APP_DEBUG=true 
APP_KEY=halMyGPhfVZGrdpibFIwEE0wZipP5lqu 

DB_HOST=localhost *updated 
DB_DATABASE=forge *updated 
DB_USERNAME=forge *updated 
DB_PASSWORD= *updated 

CACHE_DRIVER=file 
SESSION_DRIVER=file 
QUEUE_DRIVER=sync 

MAIL_DRIVER=smtp 
MAIL_HOST=mailtrap.io 
MAIL_PORT=2525 
MAIL_USERNAME=null 
MAIL_PASSWORD=null 
MAIL_ENCRYPTION=null 

UNIX_SOCKET=/Applications/MAMP/tmp/mysql/mysql.sock 
+0

無法從外部連接到虛擬機,反之亦然。 – user2094178

回答

0

試着改變你的.env文件中的以下或刪除所有密鑰與文件中的DB有關。

DB_HOST=localhost 
DB_DATABASE=forge 
DB_USERNAME=forge 
DB_PASSWORD= 

我曾經遇到同樣的問題,但問題是,在database.php文件查找在.env文件的密鑰DB_DATABASE等。因爲,該密鑰存在於.env文件,它不會考慮你在聲明中提供了env('DB_DATABASE', 'forge')

在純英語的默認值forge,「看在.env關鍵DB_DATABASE,如果存在的話,使用其他使用forge默認的」

在你的情況下,密鑰存在於.env文件,因此,雖然你提供forge,它認爲homestead是在.env文件中定義。並因此錯誤訪問被拒絕'homestead'@'localhost'

希望我澄清的事情。

+0

嗨,感謝您的幫助。我做了你的建議,但我得到了'訪問拒絕用戶'''localhost'到數據庫'僞造'' – joejoeso

+0

你試過了哪個選項? 在更改之後,你可以使用.env和database.php的內容更新你的問題嗎? –

+0

我做了更改 – joejoeso

相關問題