PDOException SQLSTATE[HY000][2002]沒有此類文件或目錄我相信我已經成功地將我的(非?;镜?站點部署到fortrabbit,但是一旦我連接到SSH來運行一些命令(例如php artisan migrate或php artisan db:seed)我收到一條錯誤消息:[PDOException]SQLSTATE[HY000] [2002] No such file or directory在某種程度上,遷移一定起作用了,因為我的表在那里-但這并不能解釋為什么它現在不適合我。
3 回答

慕仙森
TA貢獻1827條經驗 獲得超8個贊
錯誤消息指示嘗試通過套接字進行MySQL連接(不支持這種連接)。
在Laravel(技工)的上下文中,您可能希望使用不同的/正確的環境。例:php artisan migrate --env=production
(或任何環境)。

嚕嚕噠
TA貢獻1784條經驗 獲得超7個贊
[PDOException]SQLSTATE[HY000] [2002] No such file or directory
打開終端并通過以下方式連接到MySQL: mysql -u root -p
它會問你相關的密碼。然后,一旦得到MySQL promt,輸入下一個命令: mysql> show variables like '%sock%'
你會得到這樣的東西: +-----------------------------------------+-----------------+| Variable_name | Value |+-----------------------------------------+-----------------+| performance_schema_max_socket_classes | 10 || performance_schema_max_socket_instances | 322 || socket | /tmp/mysql.sock |+-----------------------------------------+-----------------+
保留最后一行的值: /tmp/mysql.sock
在你的 laravel
項目文件夾,查找 database.php文件中有配置DB連接參數的位置。在 MySQL節在末尾添加下一行: 'unix_socket' => '/tmp/mysql.sock'
你一定有這樣的東西: 'mysql' => array( 'driver' => 'mysql', 'host' => 'localhost', 'database' => 'SchoolBoard', 'username' => 'root', 'password' => 'venturaa', 'charset' => 'utf8', 'collation' => 'utf8_unicode_ci', 'prefix' => '', 'unix_socket' => '/tmp/mysql.sock', ),
添加回答
舉報
0/150
提交
取消