2015-06-20 147 views
2

在JDBC中,当我将localhost用于URL以获取连接时,它工作得很好;我可以连接到数据库。但是,我希望其他程序能够连接。所以我尝试使用我的IP地址,但不起作用。我已经授予访问其他IP地址的权限,但它仍不会在Java应用程序中连接。应该做些什么来建立连接?无法连接到使用IP地址的MySQL服务器

+0

你的意思是,当你使用127.0.0.1 – Rajan

+0

没有它我的实际IP地址将无法正常工作。当我在网上寻找我的IP地址时得到的那个 – noobProgrammer

+0

你的IP地址是否以'192.168'开头? –

回答

1

确保它不是MySQL bind-解决问题。在MySQL 的my.cnf中MySQL bind-address parameter

您需要注释掉绑定地址参数,以确保您可以连接到任何可用的IP地址为绑定地址参数 。它可以是一个或全部,它不能是该参数的多个IP地址值。

在命令行检查MySQL正在侦听哪个端口也可能有帮助。

netstat -tlpn | grep mysql

1

我有同样的问题,尝试禁用Windows和病毒防火墙给mysql的访问特定的用户也设置mysqlhost%

例如

public void addGrantMysqlAccess(String username, String password,String mysqlHost) { 

    String sqlQuery="grant all on *.* to '"+username+"'@'"+mysqlHost+"' identified by '"+password+"' with grant option "; 

    ConnectivityDB.setSql(sqlQuery); 
    ConnectivityDB.resultSetExecuteQueryStatement(); 


    ConnectivityDB.closeResultset(); 
    ConnectivityDB.closeStatement(); 

} 
+0

我已经尝试过了,但它不起作用。 – noobProgrammer