mysql远程连接失败的解决方法

今天搭建LAMPLinuxapachemysqlphp)环境,由于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

困扰两天的问题终于解决啦!

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值