您的位置:首页 > 数据库 > MySQL

"Host 'localhost' is not allowed to connect to this MySQL server" 的原因及解决办法

2015-01-10 14:52 961 查看

"Host 'localhost' is not allowed to connect to this MySQL server" 的原因及解决办法

(2010-11-29 16:02:36)


转载▼

标签:

杂谈

今天发现帝国CMS与PHP5.3有问题,一安装就出现"httpd.exe不能为read",我尚未找到解决办法,只有自己重新装了一下PHP5.2.X的版本。连MYSQL也重装了。

重装完毕后,发现MYSQL数据库密码为空,则update了 user表里的root密码,重新连接,发现出现"Host 'localhost' is not allowed to connect to this MySQL server" ,真是离奇的事情一件接一见

后来回想了一下发现,因为只是update了root,但是MYSQL是有个访问控制表,root的访问控制表未更新,就导致了无法访问mysql

网上找到的解决方法,应该是跳过该表就可以直接使用了,但是这个放在服务器上还是会有一定的风险,那就是任何人在任何地方都可以访问你的MYSQL,如果安全重要的话还是重新装一下数据库好了。

解决方法如下:

----------------------------------------

编辑 my.ini linux下为/etc/my.cnf

在[mysqld]的段中加上一句:skip-grant-tables

例如:

[mysqld]

datadir=/var/lib/mysql

socket=/var/lib/mysql/mysql.sock

skip-name-resolve

skip-grant-tables

目的是为了:

跳过MySQL的访问控制,任何人都可以在控制台以管理员的身份进入MySQL数据库。

需要注意的是在修改完密码以后要把MySQL服务器停掉重新启动才会生效

重启mysql服务!

OK!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐