这个问题已经被问过很多次了,但是我似乎无论如何都不能让它工作。
我正试图迁移迁移我刚刚用laravel创建到我新创建的数据库。然而,每次我输入php artisan migrate
时,我都会得到上面的错误
PDOException SQLSTATE[HY000] [2002] No such file or directory
我所做的是:
创建数据库和数据库用户
CREATE DATABASE openletter CHARACTER SET utf8;
CREATE USER 'openletter'@'%' IDENTIFIED BY 'secret';
GRANT ALL PRIVILEGES ON openletter.* TO 'openletter'@'%';
将这些配置添加到.env
DB_HOST=localhost
DB_DATABASE=openletter
DB_USERNAME=openletter
DB_PASSWORD=secret
创建迁移
php artisan make:migration create_letters_table --create=letters
迁移迁移
php artisan migrate
然后,出现了上面列出的错误。
What I tried
重启MySQL服务:vagrant ssh && sudo service mysqld restart
重新加载Homestead/Vagrant: vagrant reload --provision
设置config/database.php
很多人告诉别人链接mysql套接字,但那些人引用的是MAMP或XAMPP或其他东西。然而,我使用Homestead
还有什么问题呢?
好了,伙计们,我修复了这个问题。我是个白痴,应该感到羞耻。它不工作的原因,是因为我不在我的流浪机器。
在做vagrant ssh
导航到我的项目cd work/OpenLetter
和做php artisan migrate
之后,它当然工作了。