1

我在一台机器上设置了一个远程 mysql 数据库服务器myuniversity.edu,服务器名为“ localhost”。在它上面我有一个名为' MyDatabase'的数据库。

I want to connect it through Java.

The connection urls that I have tried are:
    jdbc:mysql://myuniversity.edu/localhost
    jdbc:mysql://myuniversity.edu/localhost/MyDatabase
    jdbc:mysql://myuniversity.edu:3306/MyDatabase

but I get the `Connection refused: connect` exception.

有人可以告诉在这种情况下连接网址应该是什么吗?

4

3 回答 3

3

不确定您的机器名称是否为myuniversity.edu,您可以尝试使用连接字符串的 IP 地址,Localhost是环回网络接口的名称,只能在该机器上访问。还要确保您的 mysql 的默认端口(可能是 3306)是否打开。使用 IP 地址,您的连接字符串将如下所示:

jdbc:mysql://192.168.0.123/MyDatabase

使用 IP 和端口,它将是:

jdbc:mysql://192.168.0.123:3306/MyDatabase

(您需要在上面的字符串中替换您的 IP)

于 2013-02-20T06:26:12.393 回答
0

没有(IP)地址我不可能远程连接试试这个方法

如果你想通过互联网连接它:

  1. 在您的计算机上打开 CMD

  2. 在 CMD 中写入 ping myuniversity.edu(例如 ping google.com),然后您将获得该网站的 ip 地址,您可以复制该 ip

然后尝试这种方法:

Connection con;
try{
Class.forName("com.mysql.jdbc.Driver");
con = DriverManager.getConnection("jdbc:mysql://THE IP ADDRESS :3306/DatabaseName");
System.out.println("CONNECTED");
}catch(Exception ex)
{
System.out.println(ex.getMessage());
}
于 2013-02-20T06:50:57.847 回答
0

好的,这就是我为解决此问题所做的工作:

  • my.cnf文件中,我将绑定地址从“127.0.0.1”更改为“主机 ipaddress”。这允许连接到远程 mysql 服务器,但不允许任何尝试连接到它的远程主机访问。
  • 为了解决这个问题,我在用户表中添加了一个带有主机“%”的条目。这允许远程主机连接到数据库。

现在我可以连接到数据库jdbc:mysql://serverIpAddress:3306/MyDatabase

于 2013-02-20T08:42:02.327 回答