84669 人學習
152542 人學習
20005 人學習
5487 人學習
7821 人學習
359900 人學習
3350 人學習
180660 人學習
48569 人學習
18603 人學習
40936 人學習
1549 人學習
1183 人學習
32909 人學習
我相信我已經成功地將我的(非常基本的)網站部署到fortrabbit,但是一旦我連接到SSH 來運行一些命令(例如php artisan migrate 或php artisan db :seed),我就會收到一條錯誤訊息:
php artisan migrate
php artisan db :seed
[PDOException] SQLSTATE[HY000] [2002] No such file or directory
在某些時候,遷移一定是有效的,因為我的表就在那裡 - 但這並不能解釋為什麼它現在對我不起作用。
導致此錯誤的最簡單原因之一是 MySQL 伺服器未執行。所以先確認一下。如果它已啟動,請繼續執行其他建議:
我遇到了完全相同的問題。上述解決方案都不適合我。我透過將 /app/config/database.php 檔案中的“主機”從“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 套接字可靠得多。
錯誤訊息表示嘗試透過套接字進行 MySQL 連線(不支援)。
在 Laravel(工匠)的上下文中,您可能想要使用不同/正確的環境。例如:php artisan migrate --env=product(或任何環境)。請參閱此處。
php artisan migrate --env=product
導致此錯誤的最簡單原因之一是 MySQL 伺服器未執行。所以先確認一下。如果它已啟動,請繼續執行其他建議:
我遇到了完全相同的問題。上述解決方案都不適合我。我透過將 /app/config/database.php 檔案中的“主機”從“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 套接字可靠得多。
錯誤訊息表示嘗試透過套接字進行 MySQL 連線(不支援)。
在 Laravel(工匠)的上下文中,您可能想要使用不同/正確的環境。例如:
php artisan migrate --env=product
(或任何環境)。請參閱此處。