在JDBC中,当我为网址添加localhost
以获得连接时,它完全正常;我可以连接到数据库。但是,我希望其他程序能够连接。所以我尝试使用我的IP地址,但这不起作用。我已经授予了访问其他IP地址的权限,但它仍然无法在Java应用程序中连接。应该怎么做才能建立连接?
答案 0 :(得分:2)
例如
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();
}
答案 1 :(得分:2)
确保它不是MySQL绑定地址问题。参数 对于MySQL的my.cnf中的bind-address MySQL bind-address parameter
您需要注释掉bind-address参数,以确保您可以连接到任何可用的IP地址。它可以是一个或全部,它不能是此参数的多个IP地址值。
在命令行上检查MySQL正在侦听哪个端口也可能有所帮助。
netstat -tlpn | grep mysql