Java 用连接字符串中的ip地址替换本地主机

Java 用连接字符串中的ip地址替换本地主机,java,mysql,Java,Mysql,上面的代码是我的连接代码。工作正常。如果我用我的ip地址替换localhost,它将不起作用。实际上,我想用ip地址替换localhost。用127.0.0.1替换localhost可以正常工作。为什么更换ip地址不起作用 在我还不熟悉这一点的时候,我也遇到过同样的问题 IP地址是指其他DB服务器的IP地址 如果是,则检查防火墙是否允许3306端口的传入连接 如果不是,则该服务器机器中的ad新规则允许3306连接post 服务器机器中的哪个操作系统 我在postgresql中做了如下工作: p

上面的代码是我的连接代码。工作正常。如果我用我的ip地址替换localhost,它将不起作用。实际上,我想用ip地址替换localhost。用127.0.0.1替换localhost可以正常工作。为什么更换ip地址不起作用

在我还不熟悉这一点的时候,我也遇到过同样的问题

IP地址是指其他DB服务器的IP地址

如果是,则检查防火墙是否允许
3306
端口的传入连接

如果不是,则该服务器机器中的ad新规则允许3306连接post

服务器机器中的哪个操作系统

我在postgresql中做了如下工作:

 public Connection conn() throws ClassNotFoundException, InstantiationException,                   IllegalAccessException, SQLException
{
    Connection all_connection = null;
     Class.forName("com.mysql.jdbc.Driver").newInstance();

      all_connection = DriverManager
        .getConnection("jdbc:mysql://localhost:3306/dbname","username","password");   
    return all_connection;

}
在您的情况下,它将是:

jdbc:postgresql://192.168.1.9:5432/dbName
我建议您首先检查该机器的防火墙端口规则,然后进行下一步。
并确保您已写入真实的用户名和密码。

这可能是您的数据库用户的问题。(我无法确定,因为您没有发布实际错误)

您需要验证您登录的允许访问的用户是否允许从外部IP访问数据库。似乎您使用的是root用户,允许从localhost、127.0.0.1和::1访问,但不允许从外部IP访问


如果是,请确保您只设置了一个具有所需访问权限的新DB用户,并允许从特定IP或%(任何主机)进行访问。

首先检查您的计算机是否配置了您正在尝试的IP地址

试着从其他机器上ping它

尝试查找相同的IP地址

如果两个结果都是肯定的,则表示您的计算机配置了IP地址

如果任何一个失败,请尝试配置您的ip,然后重试

jdbc:mysql://192.168.1.9:3306/dbName

配置后使用上述代码。

在某些数据库服务器中,默认情况下,远程访问被禁用。您必须启用远程访问。 如果您使用的是mySQL,这里就是解决方案

查询以启用访问

1.Go to my sql bin folder or add it to PATH
2.Login to root by mysql -uroot -proot (or whatever the root password is.)
3.On success you will get mysql>
4.Provide grant access all for that user.

这里的IP是您希望允许远程访问的IP地址,如果我们将%设置为任何IP地址都可以远程访问。

您是否感到困惑,首先您说不使用IP,然后在您告诉working fine with IP,127.0.0.1之后,您的问题是什么。这看起来很混乱。您是否按照中的描述正确设置了访问控制?您使用的是哪个数据库?thanx用于回复。是的,我使用的是root用户。根据我的回答:创建一个新的数据库用户,并确保您允许从您的特定IP或一系列IP访问,或从我创建的新用户的所有(%)访问。我找不到任何登录界面。我正在使用xampp。通常,当我打开它时,它会直接将我带到root用户。在哪里可以找到dbuser登录界面?
1.Go to my sql bin folder or add it to PATH
2.Login to root by mysql -uroot -proot (or whatever the root password is.)
3.On success you will get mysql>
4.Provide grant access all for that user.
GRANT ALL PRIVILEGES ON *.* TO 'username'@'IP' IDENTIFIED BY 'password';