laradock php artisan:迁移SQLSTATE[HY000][2002]
我用拉多克几天。我让它工作,但从今天开始,在跑步时遇到了问题 “php artisan迁移” 错误代码:laradock php artisan:迁移SQLSTATE[HY000][2002],php,mysql,laravel-artisan,laradock,Php,Mysql,Laravel Artisan,Laradock,我用拉多克几天。我让它工作,但从今天开始,在跑步时遇到了问题 “php artisan迁移” 错误代码: "Illuminate\Database\QueryException SQLSTATE[HY000] [2002] php_network_getaddresses: getaddrinfo failed: Name or service not known (SQL: SHOW FULL TABLES WHERE table_type = 'BASE TABLE')" 我的容器都
"Illuminate\Database\QueryException SQLSTATE[HY000] [2002]
php_network_getaddresses: getaddrinfo failed:
Name or service not known
(SQL: SHOW FULL TABLES WHERE table_type = 'BASE TABLE')"
我的容器都已启动并正在运行,我可以访问我的工作区和mysql容器,并在mysql容器中查看(先前创建的)表。
My.env文件显示:
DB_CONNECTION=mysql
DB_HOST=mysql
DB_PORT=3306
DB_DATABASE=default
DB_USERNAME=root
DB_PASSWORD=root
最值得注意的是,我的DB_主机名是mysql,这似乎是我发现的关于该主题的大多数线程中的问题
我的docker容器显示:
$ docker-compose ps
Name Command State Ports
-------------------------------------------------------------------------------
f3acb119d329_laradock docker-entrypoint.sh Up 0.0.0.0:3307->3306/t
_mysql_1 mysqld cp, 33060/tcp
laradock_docker-in- dockerd-entrypoint.sh Up 2375/tcp, 2376/tcp
docker_1
laradock_nginx_1 /bin/bash Up 0.0.0.0:443->443/tcp
/opt/startup.sh , 0.0.0.0:8881->80/t
cp,
0.0.0.0:81->81/tcp
laradock_php-fpm_1 docker-php-entrypoint Up 9000/tcp
php-fpm
laradock_phpmyadmin_1 /docker-entrypoint.sh Exit 128
apac ...
laradock_redis_1 docker-entrypoint.sh Up 0.0.0.0:6379->6379/t
redis ... cp
laradock_workspace_1 /sbin/my_init Up 0.0.0.0:2222->22/tcp
, 0.0.0.0:3000->3000
/tcp, 0.0.0.0:3001->
3001/tcp, 0.0.0.0:80
01->8000/tcp, 0.0.0.
0:8080->8080/tcp
如果有人能帮我解决这个问题,那就太好了,因为我一整天都在试图解决它,但没有成功。如果需要更多信息,请告诉我解决此问题缺少什么。
连接失败:SQLSTATE[HY000][2002]连接被拒绝
请使用docker内部IP作为主机,并尝试连接MySQL
使用
docker inspect
命令获取IP信息。可能重复的-谢谢。将主机更改为docker容器会有所帮助。我的迁移现在又能工作了。我在projects.env文件中更改了以下行:DB_HOST=f3acb119d329_laradock_mysql_1 DB HOST现在是mymymysql容器的docker容器。但是,我想知道这个名称是否会更改,因此每次容器名称更改时,我都必须重新验证这个问题。知识产权会更稳定吗?