我无法连接到我的“实时服务器”上的mysql数据库,但它在我的本地计算机上工作得很好。无法创建连接到数据库服务器 - java mysql连接器
在我的主类我这样做:
try {
main.connection.open();
} catch (SQLException e1) {
log.fatal(e1.getMessage());
System.exit(0);
}
和开放的方法是这样的
public void open() throws SQLException{
if(con != null) close();
con = DriverManager.getConnection(url, user, password);
}
运行我得到这个一两分钟后:
14:35:47.434 [main] FATAL se.mypack.Server - 无法创建与数据库服务器的连接。尝试重新连接3次。放弃。
如何调试? url,服务器和密码变量是正确的。这里可能是什么问题?
使用的MySQL连接器的Java-5.1.29-bin.jar
再次检查您的凭证。你应该100%认为他们是对的。另请参阅用户是否有权访问此数据库 - 确保使用“GRANT”命令为该用户授予权限。 –
已完成。在php中使用相同的凭据进行连接。而且用户还拥有本地主机的权限,这是我正在使用的服务器。我是否需要为服务器本地IP设置权限?例如。 192.168.0.4 – daker
是的,如果您尝试从您的计算机进行连接,则需要在实时数据库上执行此操作。你需要给你的机器的外部IP权限(你可以看到如果你ssh进入它 - 如果它是一个linux环境) - 看到这个:http://stackoverflow.com/a/8348560/ 728610 –