mysql提示2002错误的解决方法

前两天,负责的一个项目出现问题,总是提示"SQLSTATE[HY000] [2002] 由于目标计算机积极拒绝,无法连接",由于负责服务器的同事联系不到,我无法登陆服务器查看原因,只好翻看mysql手册,

发现出现这个错误要查找mysql安装目录下的include/ermsg.h文件,

我发现里面有"#define CR_CONNECTION_ERROR 2002"这语句,

然后又查为何会出现"CR_CONNECTION_ERROR",发现手册上说原因是"Can't connect to local MySQL server through socket",

可是此项目运行在window系统上,好奇怪啊,windows怎么会通过socket连接mysql呢,看手册验证一下:

链接:http://dev.mysql.com/doc/refman/5.7/en/connecting.html

--protocol ValueConnection ProtocolPermissible Operating Systems
TCP TCP/IP connection to local or remote server All
SOCKET Unix socket file connection to local server Unix only
PIPE Named-pipe connection to local or remote server Windows only
MEMORY Shared-memory connection to local server Windows only

通过表格可以确定,windows不能通过socket连接,那原因是什么呢?

结合自己的猜测和网上的资料,强烈怀疑是mysql服务停止了,

下午同事来了,经过检查,确定:mysql服务的确停止了.

心里纳闷,好端端,怎么停了呢,

然后开启mysql服务,访问项目,正常了

再点击链接(需查询数据库),又报错了

怎么回事?????????????

后来一看mysql服务又停止了( ⊙ o ⊙ )

好奇怪啊!怎么老停?

后来发现,C盘满了,只剩下100多KB,汗!

赶紧清理C盘.

一切恢复正常.

原文地址:https://www.cnblogs.com/ch459742906/p/5946936.html