我在运行php artisan migrate
SQLSTATE [HY000] [2002] php_network_getaddresses:getaddrinfo失败:提供了nodename或servname,或者未知
我的环境
.env文件
APP_ENV=local
APP_URL=http://localhost/
APP_DEBUG=true
APP_KEY=****
DB_HOST=http://localhost/
DB_DATABASE=name-local
DB_USERNAME=root
DB_PASSWORD=
UNIX_SOCKET = /tmp/mysql.sock
我的本地数据库中存在该数据库name-local
。
任何提示/建议对我都有很大的帮助。
答案 0 :(得分:10)
检查DB_HOST
文件中的.env
DB_HOST=http://localhost/
- > DB_HOST=localhost
结果:
我现在可以和平地迁移。
php artisan migrate
Migration table created successfully.
Migrated: 2014_10_12_000000_create_users_table
答案 1 :(得分:6)
设置DB_HOST=localhost
并运行以下artisan命令
php artisan config:clear
它会帮助你,清除缓存的配置
答案 2 :(得分:4)
我终于弄清楚是什么导致了这个错误。我正在使用 docker,但我没有从容器中的 shell 运行 php artisan migrate
。导航到 Laravel 项目文件夹后,我只是在终端中运行它。
转到您的 docker 仪表板并为您项目的映像中的 laravel 容器启动 CLI。然后运行迁移命令。
答案 3 :(得分:2)
如果你使用的是sail,你也可能会得到这个错误,并且你运行
php artisan migrate
而不是:
sail artisan migrate