MYSQL频繁掉线,刷新后正常的解决办法Can't connect to MySQL serv
转一个老帖子:近日,一大批服务器出现MYSQL频繁掉线,刷新后又正常的问题。
出现该问题的均是windows主机,并且按照官方常规错误搜索出来的解决方法无效。
症状:Can't connect to MySQL server on 'localhost' (10061) (10048)
原因:微软2009年9月9日发布了TCP/IP更新补丁(KB967723),如果服务器开启自动更新或者有自动更新软件下载更新了这个补丁,那么就会出现这个问题。
有人可能会问,为什么9号出现的补丁,到现在才发现问题?
大家都知道,服务器不是每天都重启的,有的服务器可能一个月或者一年半载重启一次,有的可能在9月9日以后重启过服务器,所以补丁生效了(我个人这么认为)。
补丁卸载方法:登录服务器,进入控制面板 --- 添加和删除程序 -- (勾选上方的“显示更新”)
在里面可以看到更新的KB967723这个补丁,然后就想卸载普通软件一样卸载,卸载中会提示你,如果卸载可能导致程序运行出错,没关系,选择“是”,继续卸载。
卸载完成后程序服务器,一切正常!
至于该补丁修补什么漏洞,卸载后是否会出现服务器安全隐患,这个先不说,要MYSQL正常运行,临时的解决办法只有如此。
修复mysql数据库的方法
有的时候因为掉电或者其他原因导致数据库损坏,我们可以使用mysql自带的mysqlcheck命令来快速修复所有的数据库或者特定的数据库;例如检查优化并修复所有的数据库用:
1.先在运行中输入CMD,启动命令行.
2.进入Mysql的Bin目录:E:\Program Files\MySQL\MySQL Server 5.0\bin,如果不知道如何进入别的目录,就要参考网上的资料补习基础知识了.
常见方式:
运行 E:
运行 CD "E:\Program Files\MySQL\MySQL Server 5.0\bin"
3.运行:mysqlcheck -A -o -r -uroot -p888888
注意,将888888改成你自己的root用户密码
mysql.columns_priv OK
mysql.db OK
mysql.func OK
mysql.help_category OK
mysql.help_keyword OK
mysql.help_relation OK
mysql.help_topic OK
mysql.host OK
mysql.tables_priv OK
mysql.time_zone OK
mysql.time_zone_leap_second OK
mysql.time_zone_name OK
mysql.time_zone_transition OK
mysql.time_zone_transition_type OK
mysql.user OK
......
......
......
注意!
在修复过程中,如果看到有error的提示,表明这个表是坏的,无法修复的,对于含有坏表的的数据库,您只能删除它,或停止它,不然会影响整个Mysql的稳定,造成mysql自动停止.(提示"The storage engine for the table doesn't support repair"的表不需要处理)
如果修复太快看不到结果,可以运行
mysqlcheck -A -o -r -uroot -p888888 >>C:\test.txt
运行后打开test.txe就可以看到了.
页:
[1]