服务器报错:MySQL server error report: Error:由于系统缓冲区空间不足或队列已满,不能执行套接字上的操作。 Errno:2002 mysql_error_report
客户没有进行任何操作,重启服务器后正常一下,没多久又报错,什么原因呢?
网上能搜到的最多的介绍是以下这篇:
windows socket error: 由于系统缓冲区空间不足或队列已满,不能执行套接字上的操作(10055),on API connect
解决方法:
1、重启电脑,最简单方法。
2、虚拟内存太小或者C盘满了。如果是这种,请加大虚拟内存量,并保证C盘还有充足的空间。
如果是这种,右键单击我的电脑——>属性——>高级——>性能设置——>高级——>将虚拟内存的值加大。
3、开始-运行依次输入以下命令,输完这些命令后重新启动windows,然后打开IE看看。
regsvr32 Shdocvw.dll
regsvr32 Shell32.dll
regsvr32 Oleaut32.dll
regsvr32 Actxprxy.dll
regsvr32 Mshtml.dll
regsvr32 Urlmon.dll
4、是你电脑里面某个软件的问题。
这个错误可能是你计算机的Socket句柄资源用尽导致的,能够造成这种现象的一种情况就是你的计算机的某个程序不断的向某个连接发出连接申请,但是始终没能连上,没连上就会引发一个错误,如果软件编程的人没有写释放资源的代码,那么这个连接就始终占据着着一个句柄,于是由于不断的连接,最终导致 Socket句柄资源耗尽。
5、注册表中的以下二项出现错误
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Winsock
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Winsock2
解决办法:备份,然后找一台相同系统的机器,将以下注册表分支导出存为二个文件,
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Winsock
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Winsock2
最后将这二个导出的注册表文件导入到有问题的机器中即可。
6、运行Hijackthis,选择do a system Scan only,在下列选项前打上勾,然后关闭其他程序和IE窗口,点“Fix Checked”,出现提示时一路点“是”让它继续:
O23 - Service: IEXPLORER - Unknown - C:\WINNT\IEXPLORER.exe 灰鸽子
重启电脑按F8进安全模式,打开我的电脑 工具 文件夹选项 查看 设置windows显示所有隐藏文件、受保护的系统文件和文件夹,然后手动删除:C:\WINNT\IEXPLORER.exe 及同一时间生成的.DLL文件。
但经万维景盛工程师研究发现,客户的服务器不属于这些情况。
客户服务器的报错来自mysql,通过将my.ini的配置改为my-huge.ini进行观察,目前没有再报错。