我在非托管机架空间云服务器上有一个 mysql 数据库。我可以毫无问题地连接到 phpmyadmin。我检查了端口 3306 是否正在监听,确实如此。 /etc/mysql/my.conf
显示bind-address = 127.0.0.1
。
当我使用navicat通过ssh连接时,它显示SSH隧道:无效的用户名或密码!
我已经重置了密码并重新启动了mysql和服务器只是为了确保,但我仍然可以'连接。接下来我可以尝试什么来使其正常工作?
最佳答案
请连接到MySQL并运行
SELECT USER(),CURRENT_USER();
这个输出什么???
-
USER()
报告您如何尝试在 MySQL 中进行身份验证 -
CURRENT_USER()
报告如何允许您在 MySQL 中进行身份验证
如果这两个函数的输出不匹配,您将需要创建一个与 USER()
或 CURRENT_USER()
匹配的用户。
如果都是root@localhost
,请运行
SELECT user,host,password FROM mysql.user;
现在,可以比较所有 root 用户是否具有相同的密码。
另外,请检查服务器上/etc/hosts
的内容。
这不完全是答案,但我希望这有帮助!!!
关于mysql - 无法通过navicat连接远程mysql数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14569479/