我相信我已经成功地部署了我的(非常基本的)网站到fortrabbit,但只要我连接到SSH运行一些命令(如php artisan migrate或php artisan db:seed),我得到一个错误消息:
[PDOException]
SQLSTATE[HY000] [2002] No such file or directory
在某种程度上,迁移一定是有效的,因为我的表在那里——但这并不能解释为什么它现在不适合我。
我相信我已经成功地部署了我的(非常基本的)网站到fortrabbit,但只要我连接到SSH运行一些命令(如php artisan migrate或php artisan db:seed),我得到一个错误消息:
[PDOException]
SQLSTATE[HY000] [2002] No such file or directory
在某种程度上,迁移一定是有效的,因为我的表在那里——但这并不能解释为什么它现在不适合我。
当前回答
这发生在我身上是因为MySQL没有运行。MySQL无法启动,因为我丢失了/usr/local/etc/my.cnf.d/目录。
这是我的/usr/local/etc/my.cnf配置文件作为glob include(包括/usr/local/etc/my.cnf.d/*.cnf)所要求的。
运行mkdir /usr/local/etc/my.cnf.d,然后启动MySQL,解决了这个问题。
其他回答
我在访问Drupal网站时也遇到了类似的问题。我通过打开命令行,重新启动我的MySQL服务器或服务来修复它:
service mysqld restart
这应该有用。如果没有,重启你的本地web服务器:
service httpd restart
这应该足够了。希望它也适用于其他环境。注意,这些命令通常需要超级用户权限。
在可能的情况下,我只是简单地使用
vagrant up
而不是
homestead up
为了我的熔炉幼虫装置。我假设这意味着站点正在得到服务,但MySQL服务器从未启动过。当我使用后一个命令启动我的流浪者盒子时,错误消失了。
这发生在我身上是因为MySQL没有运行。MySQL无法启动,因为我丢失了/usr/local/etc/my.cnf.d/目录。
这是我的/usr/local/etc/my.cnf配置文件作为glob include(包括/usr/local/etc/my.cnf.d/*.cnf)所要求的。
运行mkdir /usr/local/etc/my.cnf.d,然后启动MySQL,解决了这个问题。
我只是在。env文件中做了一个更改
我有如下一行代码。
DB_CONNECTION=mysql
DB_HOST=localhost
DB_PORT=3306
DB_DATABASE=database_name
DB_USERNAME=root
DB_PASSWORD=
修改主机名localhost为127.0.0.1
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=database_name
DB_USERNAME=root
DB_PASSWORD=
这是在我的情况下工作,因为它不能找到任何主机名,如localhost
并在更改主机名后编写以下命令
php artisan config:clear
php artisan migrate:install
php artisan migrate
解决了
在我的情况下,这是代码中的逻辑问题,连接值在if语句中:
if($_SERVER['HTTP_HOST'] == "localhost")
所以解决方案是添加一个管道,并添加127.0.0.1,这解决了我的问题
if($_SERVER['HTTP_HOST'] == "localhost" || $_SERVER['HTTP_HOST'] == "127.0.0.1")