首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >远程连接到mysql

问远程连接到mysql
EN

Stack Overflow用户
提问于 2014-03-27 10:11:42
回答 2查看 487关注 0票数 2

我在同一个vm上安装了一个Windows 7,我有一个包含以下代码的表单:

代码语言:javascript
复制
MySqlConnection connection = new MySqlConnection("SERVER = 127.0.0.1; DATABASE = my_test; UID = root; PASSWORD = 'XXXX';");

private void Form1_Load(object sender, EventArgs e)
{
    MySqlCommand cmd = new MySqlCommand("SELECT * FROM info", connection);
    connection.Open();
    MySqlDataReader reader = cmd.ExecuteReader();
    if (reader.HasRows)
    {
        while (reader.Read())
        {
            MessageBox.Show(reader[1].ToString());
        }
    }
    reader.Close();
    connection.Close();
}

在我的pc上,我成功地连接到数据库,现在我将我的应用程序复制并粘贴到vm中,并且我得到了一个jit错误--我在vm上没有任何东西(除了.NET Framework4.0之外,没有任何东西),我确实让我的根用户远程启用了这样的功能:

GRANT ALL ON *.* to '%'@'%' WITH GRANT OPTION;

现在我仍然停留在这个问题上,所以如何用我的ip连接到db,以便vm能够找到它,以及是否需要在vm中设置任何东西?

注意:如果VirtualBox中出现问题,我可以使用另一个VirtualBox,但我怀疑这与VirtualBox无关。

我很困惑我做了这个表格

​

​

我把它移到vm上,然后简单地问:在那个文本框里写什么?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-03-27 10:29:57

当您连接到127.0.0.1时,您将连接到当前系统。无论运行的是哪个系统: main还是vm。您应该配置VirtualBox的网络设置,以便vm可以连接到您的主系统。在这种情况下,您将不是从vm连接到本地主机,而是连接到您设置为主OS的IP地址。

或者您可以将MySQL设置为vm并将数据库移动到该MySQL。

编辑

为了测试到MySQL的连接,可以使用telnet (http://windows.microsoft.com/en-us/windows/telnet-faq#1TC=windows-7)。首先,您应该知道MySQL端口。您可以从MySQL配置获得它,也可以从@Prageeth的答案中尝试端口。然后,您应该尝试从VirtualBox连接到MySQL到finded端口。您可以使用或编程或telnet。如果连接有问题,请尝试检查VM和主操作系统中的防火墙是否阻塞了您的程序(或telnet)。

如果您可以从另一台PC连接到MySQL,但不能从VM连接,那么问题在于VM的网络设置。

票数 1
EN

Stack Overflow用户

发布于 2014-03-27 10:42:53

给出一个mysql连接使用的PORT,类似于3308或3306。

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22684351

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档