【问题标题】:Connection actively refused C# to Ubuntu MySQL Server连接主动拒绝 C# 到 Ubuntu MySQL 服务器
【发布时间】:2019-01-11 21:45:23
【问题描述】:

我无法通过 C# 应用程序从不同的 IP 连接到 MySQL 服务器。

MySQL 服务器从 localhost 可以正常工作

SocketException: 无法建立连接,因为目标机器主动拒绝了它XXX.XXX.XX.XX:3306

我尝试过的:

  • 用户可以使用 % 主机名访问 GRANT,所以应该没问题 来自外部 IP
  • 目前 Ubuntu 防火墙被禁用以解决此问题
  • 我已将bind-address = 0.0.0.0 和#skip-networking 放入MySQL 中

不过,尝试连接时仍会出现相同的错误消息。

string connstring = string.Format("Server=XXX.XXX.XX.XXX;Port=3306; database={0}; UID=user; password=pswd", databaseName);
connection = new MySqlConnection(connstring);
connection.Open();

有什么建议吗?谢谢!

【问题讨论】:

  • 如果您尝试从与您的应用程序相同的机器连接到 MySQL 数据库,但使用 Workbench,是否成功?
  • 不,工作台的连接也失败
  • 这不是 mysql 权限问题,因为这会导致“访问被拒绝”错误。套接字异常意味着,端口 3306 上没有侦听服务(至少对于远程主机不可见)。正如您所提到的,您禁用了防火墙并设置了绑定地址和#skip-networking,所以请原谅我问:您确定您连接到正确的主机吗?设置了这些选项后你重启了mysql服务吗?
  • 我试图对配置文件进行的更改以允许所有 IP 地址都是正确的,它们只是没有应用于服务器,因为正在编辑错误的配置文件......我'已回答以下问题。

标签: c# mysql


【解决方案1】:

解决方案:由于 MySQL 服务器版本,配置文件位于不同的位置。通过遵循版本> = 5.7的此答案解决

Remote Connections Mysql Ubuntu

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-10-20
    • 1970-01-01
    • 2022-10-15
    • 2020-03-18
    • 2012-05-25
    • 1970-01-01
    • 1970-01-01
    • 2020-01-26
    相关资源
    最近更新 更多