环境介绍、服务版本、测试服务是否正常,可参考:
docker could not find driver_龙枫995的博客-CSDN博客docker容器中,php和mysql互动时,解决出现could not find driverhttps://blog.csdn.net/longfeng995/article/details/130704949?spm=1001.2014.3001.5502
本篇的问题是,运行sql时,出现了 "Connection refused"
翻译成中文就是:"连接被拒绝"
这种情况,一般是我们在配置 .env 文件中, DB_HOST 填写的是 127.0.0.1 或者 localhost
换做以前我们本地搭建环境时,没有使用 docker 容器,这样基本上就是ok的
但是我们这里使用的就是 docker,php、mysql、nginx 它们分别是一个容器,而我们填写 localhost 时,找到的就是它本身,所以我们就无法找到 mysql
解决方案:
将 DB_HOST 中的IP,填写成我们母机的IP地址即可
有同学会问,我们本地(一般都是用的windows),在公司、在家,我们的IP地址是多少呢?
以下是 windows10/11 的方式:
按下 "windows+R" 键,会弹出 "运行", "windows"键 一般都是在键盘 "CTRL" 和 "ALT" 之间的键
弹出的 "运行",我们在里面输入 "cmd" 然后回车键确认
随后我们就进入了终端
输入 "ipconfig -all" 再按下回车,就能看到 相关信息
找到 IPv4 地址,一般都是这个,然后将后面的 IP地址拿到就可以了
回到 laravel框架中,找到 .env 文件,将其改掉即可
最后我们再去执行 sql 时,就能正常运行了