2017-10-20 172 views
0

我目前正在致力於Laravel項目。我做了一個共享服務器上部署,但我得到的錯誤信息錯誤SQLSTATE [HY000] [1045]

「SQLSTATE [HY000] [1045]訪問被拒絕的用戶 '根' @ 'localhost' 的(使用密碼:NO)」

Local中的項目正確運行,但在服務器上僅限於錯誤。我在我的配置環境變量.env

我認爲服務器可能不讀取.env文件,這就是問題出現的原因。

+2

第一總之,你應該使用'root'來登錄你的sql數據庫。數據庫應該有它自己的帳戶,具有指定的訪問權限,而不是root獲得的** _ all _ **訪問權限。這非常危險。其次,您的訪問被拒絕,這意味着ROOT可能有一個密碼,您不使用。 – GrumpyCrouton

+0

https://www.google.com/search?q=stackoverflow+SQLSTATE+%5BHY000%5D+%5B1045%5D&oq=stackoverflow+SQLSTATE+%5BHY000%5D+%5B1045%5D&gs_l=psy-ab.3...9710.9888.0.10127 .2.2.0.0.0.0.113.217.0j2.2.0 .... 0 ... 1.1.64.psy-ab..0.1.112 ... 0j​​0i10k1.0.MyOrEX3TrLM – bassxzero

+0

@bassxzero謝謝!我創建了一個新的數據庫並創建了一個新用戶。然後我按照Laravel的規定更改了我的.env文件中的數據。 以前,我將項目加載到Laravel,但我沒有使用數據庫。但問題仍在繼續。 看來我的.env文件中的變化無法被主機識別 –

回答

1

清除通過添加和運行這條路線的現場服務器緩存:

Route::get('/clear-cache', function() { 
    $exitCode = Artisan::call('cache:clear'); 
    // return what you want 
}); 
+0

您不應該修改此文件,這是.env – Option

+0

@Options文件的要點和目的? –

+0

database.php文件 – Option

0

你必須添加適當的數據庫憑據.ENV文件..你可以找到數據庫憑據的cPanel

+0

我已經更改了.env文件中的數據(根據我數據庫中的數據,我也切換到了生產) 我也將「調試」模式更改爲false,但仍顯示錯誤。看來我的.env文件中的更改無法被Hosting識別 –

相關問題