浏览 3804 次
锁定老帖子 主题:mysql远程连接失败的解决方法
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2011-04-29
最后修改:2011-04-29
今天搭建LAMP(Linux、apache、mysql、php)环境,由于mysql数据库和php不在同一台电脑上,apache连接mysql时报错。
查看mysql数据库下的user表
原来是mysql没有开启远程登录,只能在本地登录,由于对mysql不熟悉,上网找了写解决方法,update user set host=’%’ where user=’root’,但是执行这个操作之后,远程可以连接mysql了,但是本地登录提示密码错误。
查看user表信息
发现本地登录用的是localhost,不需要密码
不输入密码直接登录,可以连接,证明自己的猜测是对的,但是show databases看不到之前的数据库。
原来是localhost没有权限导致的,看来直接update user set host=’%’ where user=’root’是不行的,更改其中的一个%为127.0.0.1试下
还是不行,如果将另一个%改回localhost,本地可以登录。
但是远程又访问不了了,该怎么办呢?看了下mysql官方的提示,原来这么简单,只需要一个grant语句就可以了。 grant all privilegesI on dbcenter.* to root@'%' identified by 'zhcw123'; 执行flush privileges;使操作立即生效,查mysql数据库下的user表,原来是在user表里加了一条新记录,而不是直接update。 困扰两天的问题终于解决啦!
声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |