P粉7319775542023-08-11 00:43:41
這個錯誤的最簡單原因之一是MySQL伺服器沒有運作。所以首先要進行驗證。如果它正在運行,請繼續其他建議:
我遇到了完全相同的問題。以上解決方案都對我無效。我透過將/app/config/database.php檔案中的"host"從"localhost"更改為"127.0.0.1"來解決了這個問題。
不確定為什麼"localhost"預設情況下不起作用,但我在一個類似的問題中找到了這個答案,它在一個symfony2的帖子中解決了。 https://stackoverflow.com/a/9251924
更新: 有些人問為什麼這個修復方法有效,所以我對這個問題做了一些研究。根據這個帖子的解釋,它們使用了不同的連接類型。 https://stackoverflow.com/a/9715164
這裡出現的問題是"localhost"使用了UNIX套接字,無法在標準目錄中找到資料庫。然而,"127.0.0.1"使用TCP(傳輸控制協定),這意味著它透過電腦上的"本地網路"運行,比UNIX套接字更可靠。
P粉1484347422023-08-11 00:10:06
錯誤訊息表示嘗試透過套接字建立MySQL連線(這是不支援的)。
在Laravel(artisan)的上下文中,您可能想要使用不同的/正確的環境。例如:php artisan migrate --env=production
(或任何其他環境)。請參見這裡。