【问题标题】:Can't connect to MySQL with DataGrip via unix socket无法通过 unix 套接字使用 DataGrip 连接到 MySQL
【发布时间】:2021-01-21 00:29:58
【问题描述】:

这是我第一次使用 DataGrip 尝试在 Ubuntu 18.04 服务器中连接到 MySQL。

我已经向 MySQL 添加了一个新用户。当我尝试使用命令MySQL -u user -p 连接到 MySQL 时。

但在 DataGrip 上,我创建了一个 ssh 隧道,它可以毫无问题地建立连接。

但是当尝试连接到 MySQL 时,它给出了这个错误The specified database user/password combination is rejected: [28000][1698] Access denied for user 'user'@'localhost'

我确定密码是正确的,并且在日志文件中显示它正在建立 ssh 连接,但是在连接到 MySQL 时它会拒绝访问。如果有人可以帮助我,我将不胜感激。

【问题讨论】:

  • 使用mysql -u <user> -p <password> 连接与通过网络连接不同。尽管您的用户可能有权访问本地连接(我相当确定默认情况下它将使用 unix 套接字而不是 tcp 端口),但该用户无权通过网络连接。这篇文章应该可以帮助stackoverflow.com/questions/8348506/…
  • @Grizzle 我看到了帖子,但在这种情况下,我不应该因为 SSH 隧道而无法连接吗?
  • 正如我所提到的,当您从 cli 使用 mysql 命令时,它使用的是 unix 套接字而不是 over tcp。如果你运行mysql -h localhost -u <user> -p <password>,它将使用网络套接字,你应该得到同样的错误。 dev.mysql.com/doc/refman/5.7/en/mysql-command-options.html
  • 可能是您的帐户无权访问localhost。您能否运行此查询并发布结果。它将为您的用户显示所有允许的主机。 Select host from mysql.user where user = 'user'@HenriqueDotCom

标签: mysql ubuntu-18.04 datagrip


【解决方案1】:

要使用 unix 套接字连接到 MySQL 服务器,请遵循 an article in DataGrip documentation

DataGrip 自 2021.1 版起通过套接字进行连接。

【讨论】:

猜你喜欢
  • 2021-10-04
  • 1970-01-01
  • 2017-10-10
  • 1970-01-01
  • 2019-07-24
  • 2011-10-03
  • 2021-08-24
  • 1970-01-01
  • 2011-01-12
相关资源
最近更新 更多