关于windows系统 composer、mysql 出现: 由于系统缓冲区空间不足或队列已满,不能执行套接字上的操作的解决方法
主要用来记录踩过的坑和帮助被这个问题困扰的同学
由于本人家用电脑在一段时间没有办公后。 在电脑上跑正常的项目发现mysql频繁报错 :由于系统缓冲区空间不足或队列已满,不能执行套接字上的操作 但是由于是间歇性的出现本人也就没太在意。
但是在composer update的时候出现了XX镜像连接失败 ,无法打开流的报错提示。加上后面详细提示一直是乱码,初步怀疑是镜像的问题,所以更换了阿里云、腾讯云、华为云等等镜像。问题依旧没有得到解决。期间也尝试挂VPN同样无济于事。
随即也排查了 openssl ca证书 以及增加计算机的虚拟内存、设置动态端口的范围、最后修改MaxUserPort、TCPTimedWaitDelay 注册表也同样不行。因为我电脑上面并没有运行任何项目以及多余的软件。
然后把就想着composer卸载掉,但是在卸载的途中也遇到了很多问题,只能手动删除文件后重新安装。但是在安装composer的时候意外发现了XX镜像连接失败 ,无法打开流的报错提示,但是这次后面的详细提示并不是乱码。而是完整的提示出来:
由于系统缓冲区空间不足或队列已满,不能执行套接字上的操作 我才觉得应该是我电脑的问题,但是暂时也不想重装。万幸是最后顺利的解决了这个问题
以下是解决方案
找到注册表
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Winsock
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Winsock2
先备份! 先备份 ! 先备份!
这里我是找的朋友让他把自己电脑的这两个注册表分支拷给我的
现在我就直接放出来了(win10 64x)
https://files.cnblogs.com/files/IAmxl/Winsock.zip
直接导入即可
虽然不知道什么时候注册表损坏了 好在顺利解决了
--我是狗子 希望你幸福

浙公网安备 33010602011771号