在windows上装了一个mysql,以前一直用的很好,但是过了一段时间在启动服务后发现报错,在 本地计算机 无法启动mysql服务 错误1067:进程意外中止。在度娘框里搜索了半天,按照大牛们的方法试了很多,也重新装了一遍,还是报相同的错误。对于windows服务启动失败,如果有明显的报错原因的话很好解决,如果没有可以去网上搜搜,再不行我们只有自己想办法解决,开辟一条前人没走过的解决办法。我觉得应该从两方面入手,一是从程序本身着手,比如配置文件,我们需要仔细辨认配置文件的每一个选项,二是从服务本身需要使用的地址、端口;我这次碰到的问题其实就是mysql的使用的端口被其他进程占用,导致服务启动失败。所以这个问题就很好解决啦!
首先查看端口占用情况,在windows命令行窗口下执行 netstat -aon | findstr "3306",发现果然被2448的进程所占用;
其次根据PID强制关闭进程,taskkill -f /pid 2448;
最后进入到mysql的bin目录下重新启动服务net start mysql;
端口状态:
1 LISTENING状态
FTP服务启动后首先处于侦听(LISTENING)状态。
2 ESTABLISHED状态
ESTABLISHED的意思是建立连接。表示两台机器正在通信。
3 CLOSE_WAIT
对方主动关闭连接或者网络异常导致连接中断,这时我方的状态会变成CLOSE_WAIT 此时我方要调用close()来使得连接正确关闭
4 TIME_WAIT
我方主动调用close()断开连接,收到对方确认后状态变为TIME_WAIT。TCP协议规定TIME_WAIT状态会一直持续2MSL(即两倍的分段最大生 存期),以此来确保旧的连接状态不会对新连接产生影响。处于TIME_WAIT状态的连接占用的资源不会被内核释放,所以作为服务器,在可能的情 况下,尽量不要主动断开连接,以减少TIME_WAIT状态造成的资源浪费。
目前有一种避免TIME_WAIT资源浪费的方法,就是关闭socket的LINGER选项。但这种做法是TCP协议不推荐使用的,在某些情况下这个操作可能 会带来错误。
5 SYN_SENT状态
SYN_SENT状态表示请求连接,当你要访问其它的计算机的服务时首先要发个同步信号给该端口,此时状态为SYN_SENT,如果连接成功了就 变为ESTABLISHED,此时SYN_SENT状态非常短暂。但如果发现SYN_SENT非常多且在向不同的机器发出,那你的机器可能中了冲击波或震荡波之 类的病毒了。这类病毒为了感染别的计算机,它就要扫描别的计算机,在扫描的过程中对每个要扫描的计算机都要发出了同步请求,这也是出现 许多SYN_SENT的原因