Macbook docker 本地部署 php 和 mysql nginx 坑记录

本地 php 容器 连接 本地 mysql 容器 账号密码 端口 都对 的情况下 ,使用的thinkphp5 用pdo连接 php版本 7.1 
mysql版本 8.0.31
使用 host 如下时

1. 本地地址 127.0.0.1 或 0.0.0.0
 2. mysql 容器ip地址 10.10.0.9 
 3. mysql容器名称mysql

都会报错  SQLSTATE[HY000] [2002] Connection refused

使用 localhost ,会报 SQLSTATE[HY000] [2002] No such file or directory

只有使用 WIFI 自动DHCP 分配的 静态地址才能正常连接 

但是使用软件 navicat 或是 phpstorm 去连接则不会有任何问题 ,原因不知道,猜测和docker 容器挂载目录 php容器啥的有关系 不确定是不是因为mac的原因,我也没在windows上部署过,不过linux 好像没有这个问题

ps:百度的 和 谷歌的时候 排查了很多无关原因 ,先确定自己的配置没有问题后,百思不得其解,stackoverflow上一个关联度很高的问题

PHP 连接失败:SQLSTATE[HY000] [2002] 连接被拒绝

我差点以为我找到解决方法了,实际上对我的问题并没有帮助 ,他们的原因很复杂,但我确信我的问题和他们不一样,终于灵机一动 想到了用静态地址 回车连接成功

另外再多说一句 百度上面很多答案是机翻过来的,包括CSDN上面,误人子弟,你去谷歌搜基本都能找到原回答(我的建议是只要看起来像机翻的,一律去谷歌找原回答),百度只适合查查简单的问题,面向谷歌编程

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值