日期:2014-05-16  浏览次数:20749 次

[收集]mysql 无法联接故障现象及原因
初学的mysql网友好象经常会碰到mysql无法连接的错误。特开贴收集这样问题的现象和原因。

先自己扔块砖头出来。

=====================================================================================================
故障现象 : 无法连接 mysql 
错误信息 :ERROR 2003 (HY000): Can't connect to MySQL server on 'hostxxxxx' (10061)
原因 : mysqld数据库服务没有启动。
检查 :在windows 的任务管理器,或者 unix/linux 下 ps -aux | grep mysql 看一下。确认服务已经启动。
处理 :启动mysqld 服务
=====================================================================================================


------解决方案--------------------
占个沙发先!
------解决方案--------------------
有时候创建的用户不能登录数据库,其中有可能是用户本身没有权限创建用户,请版主解释一下什么权限的用户才可以创建用户。
------解决方案--------------------
==========================================================================
故障现象 : 无法连接 mysql 
错误信息 :ERROR 1130: Host xx.xx.xx.xx is not allowed to connect to this MySQL server 
原因 : mysql服务器没有赋予此客户端远程连接的权限。 
检查 :在mysql服务器本地查询mysql库里user表对应的host是否包含客户端机器的IP(%为不限制IP允许远程连接)。 
处理 :修改mysql库下的user表:update user set host = '%' where user ='XXX';flush privileges;
====================================================================================
------解决方案--------------------
在mysql中对应的具体权限是哪个呢?是不是mysql数据库的insert权限就可以创建用户了,我试了不能创建用户啊。
------解决方案--------------------
明白了,后面加一个with grant option就可以了。
------解决方案--------------------
不懂……
------解决方案--------------------
。。。???
------解决方案--------------------
不知道你收集这些问题有什么意思!

------解决方案--------------------
路过!
------解决方案--------------------
????????????????
------解决方案--------------------
顶顶!!!!
------解决方案--------------------
在此鄙视一下所有喜欢乱转别人文章的人,每每在百度谷歌搜索一些技术问题,总能搜到一大堆内容一样的blog,讨厌的是他们都是转载而来,也不看看文章是否正确,是否完整,通常如果有错,那么所有的转载都是错误的,每个链接都一样。
-----------------------
废话不说了,我前两天就碰到一个,不知道算不算。
把mysql库中的user表中user字段为“root”值的记录的host字段改成了“*”(这个就是网上那些该死的转载blog的误导,说是能支持所有ip访问)

这样改的结果是死活都进不去了,输入密码后就“嘟”一声没了,包括在本机localhost进。

解决方法是备份mysql安装路径下的data文件夹,接着把mysql完全卸载,然后重启电脑,重新安装mysql,最后将data文件夹下除了“mysql”文件夹之外的所有文件夹和文件复制到新装的mysql的路径下,即可解决。

mysql库中的user表中user字段为“root”值的记录的host字段的默认值是“localhost”,远程连接报错的朋友们只需要重新运行一下mysql的配置程序,在输入密码的界面有一个checkbox的地方打上勾(允许远程连接),就行了,根本不是网上那n多狗屁blog转载的那样,第一是改表法,第二是授权法,真是狗屁。
------解决方案--------------------


你的用户没有使用 root 账户,或者你的root账户没有授予登录权限,需要使用
GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
授权
------解决方案--------------------
接分!
------解决方案--------------------
接分!
------解决方案--------------------
感谢分享!!
------解决方案--------------------
学习
------解决方案--------------------
关注中......
------解决方案--------------------