mysql 远程可以连接,但是本地连接拒绝?

我把主机改成了通配符“%”,怎么本地不能连接了!!!
这是用户信息:
图片描述

图片描述

阅读 15.1k
8 个回答
新手上路,请多包涵

Delete FROM user Where User=’’ and Host=’localhost’;
flush privileges;
试一下这种方法

检查一下几项

  1. 是否密码输错了?大小写,数字键等。

  2. 是否更改权限后没有刷新权限?

本地的mysql有没有启动?

题主可以试一下:

mysql -h 127.0.0.1 -u root -p

如果是本地访问的话,你MySQL数据库比如是192.168.1.200 那么你访问的格式:

mysql -h 192.168.1.200 -u root -p 

可以试下

看下host里面有没有localhost跟127.0.0.1的映射。按道理是自动映射的。

亲,远程的那个密码是可以单独设置的,跟你再dos下登录可能不是同一个的

看你截图里,第一行:

@localhost

这里本来是不是应该设置成:

root@localhost

不过,按照当前这个配置,你本地不用输密码都能用了:

mysql 

直接不带参数试试?我猜是可以登上去的。

另:xxx_user@% 并不包含 xxx_user@localhost 的情况,@% 指任意 IP 访问,但 @localhost 是在 UNIX 下是通过域套接字访问的,Windows 下则是通过管道,这两者都不属于通过 IP 访问。

补充:前面有人用这个办法也是可以的

mysql -h 127.0.0.1 -u root -p

这种访问方式是使用回路IP地址访问,也属于IP访问,可以被 root@% 的权限设置覆盖到。而这与 mysql -u root -p 并不相同。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏