我在 Ubuntu 16.04.5 LTS
如果我这样做,mysql -h localhost -u root
我可以毫无问题地连接。但如果我这样做,mysql -h 127.0.0.1 -u root
我得到:
错误 1698 (28000):拒绝用户“root”@“localhost”访问
我该如何解决?
答案1
MySQL 认为127.0.0.0/8
地址不同,localhost
因此在创建用户时如果指定一个用户,则需要使用该引用进行连接。
此外,一些 MySQL 连接器在连接时将使用套接字localhost
,但在连接时使用 TCP/IP127.0.0.1
最后,最近的一个区别是,如果localhost
使用套接字身份验证,则完成 - 如果您以 root 用户身份登录,则可以不使用密码登录 MySQL。当我第一次发现那个备份脚本时,我玩了一些愚蠢的玩意儿,我想通过它来运行它cron
......