MySQL登录失败提示Access denied时,如何核实root用户密码及权限配置?
- 内容介绍
- 文章标签
- 相关推荐
本文共计644个文字,预计阅读时间需要3分钟。
直接说结论:
为什么 mysql -u root -p 失败,但 mysql -u root -p -h 127.0.0.1 能成功
MySQL 把 localhost 和 127.0.0.1 当作两个完全不同的 host:
– localhost 走 UNIX socket,匹配的是 user 表中 host = 'localhost' 的记录;
– 127.0.0.1 走 TCP/IP,匹配的是 host = '127.0.0.1' 或 host = '%' 的记录。
常见现象就是查 SELECT user, host FROM mysql.user WHERE user = 'root';,发现只有 'root'@'127.0.0.1' 或 'root'@'%',唯独没有 'root'@'localhost'。
本文共计644个文字,预计阅读时间需要3分钟。
直接说结论:
为什么 mysql -u root -p 失败,但 mysql -u root -p -h 127.0.0.1 能成功
MySQL 把 localhost 和 127.0.0.1 当作两个完全不同的 host:
– localhost 走 UNIX socket,匹配的是 user 表中 host = 'localhost' 的记录;
– 127.0.0.1 走 TCP/IP,匹配的是 host = '127.0.0.1' 或 host = '%' 的记录。
常见现象就是查 SELECT user, host FROM mysql.user WHERE user = 'root';,发现只有 'root'@'127.0.0.1' 或 'root'@'%',唯独没有 'root'@'localhost'。

