【问题标题】:Connect mySQL via SSH error 2002通过 SSH 连接 mySQL 错误 2002
【发布时间】:2012-08-15 12:09:20
【问题描述】:

我正在尝试通过 SSH 隧道使用 C 接口连接到我的 mySQL 服务器。

我目前做的是打开 SSH 隧道:

ssh user@IP -L 10293:127.0.0.1:3306

然后在代码中:

    MYSQL *conn = mysql_init(NULL);
    mysql_real_connect(conn, "localhost", "username", "password", "production", 10293, NULL, 0);

    unsigned int error = mysql_errno(conn);

连接后我收到错误 2002。错误 2002 是“无法通过套接字连接到本地 MySQL 服务器”。但是,为什么我没有在连接中指定任何套接字时尝试通过套接字连接?

还有什么可能出错的?

用户名、密码和表名当然已经检查过多次了。

【问题讨论】:

  • 它基本上告诉你它无法连接。套接字无处不在:en.wikipedia.org/wiki/Internet_socket 我的猜测是你没有足够的权限连接到 MySQL 主机。
  • 谢谢,知道了。我需要指定“127.0.0.1”而不是“localhost”,因为我绑定到该 IP 和实际的 localhost。

标签: mysql c ssh


【解决方案1】:

我需要指定“127.0.0.1”而不是“localhost”作为地址,因为我绑定的是 IP 本身,而不是实际的 localhost。

【讨论】:

    猜你喜欢
    • 2014-10-17
    • 2021-11-01
    • 1970-01-01
    • 2011-02-25
    • 2021-08-07
    • 1970-01-01
    • 2019-07-18
    • 2018-10-06
    • 1970-01-01
    相关资源
    最近更新 更多