gpt4 book ai didi

c# - 无法连接到远程 mySQL 数据库

转载 作者:可可西里 更新时间:2023-11-01 08:05:33 26 4
gpt4 key购买 nike

我一直在尝试使用以下代码来尝试连接到我在 digital ocean 上托管的远程数据库。

    MySqlConnection myConnection = new MySqlConnection("Server = 104.236.197.146; Port = 3306; Database = BattleRoyale; Uid = root; Pwd = password");
try
{
myConnection.Open();
}
catch (Exception e)
{
MessageBox.Show( e.ToString(), "Database connection error" , MessageBoxButtons.OK, MessageBoxIcon.Error);
}

每当我尝试运行这段代码时,我都会收到以下错误:

MySql.Data.MySqlClient.MySqlException (0x80004005): 无法连接到任何指定的 MySql 主机。

我认为问题出在托管数据库上。我尝试了以下操作:

授予 上的所有权限。 给 root@"%"IDENTIFIED BY 'rootPass';

我一直在尝试检查是否启用了 TCP/IP,但我无法通过 phpMyAdmin 找到它,也无法通过 putty 或任何其他工具找到它。

如您所知,我对 Linux 机器了解不多,我只是想连接到这个数据库来处理一个学校项目。谁知道我为解决此问题所做的工作。任何帮助将不胜感激。

最佳答案

可能的原因包括:

  1. MySQL 配置为仅监听“本地主机”或 127.0.0.1 - 无论防火墙配置如何,这根本不允许远程连接
  2. 防火墙可以配置为不允许 3306 端口上的通信通过
  3. MySQL 可能不在标准端口 3306 上运行,而是在其他端口上运行

很可能是 1. 或 2。尤其是 1. 是您一开始没有想到的。

请注意,许多托管商不允许从他们自己的网络外部访问数据库。这就是为什么 PhpMySQL 通常可以工作但远程连接不能工作的原因。

关于c# - 无法连接到远程 mySQL 数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29554721/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com