Java 远程MYSQL数据库访问

Java 远程MYSQL数据库访问,java,mysql,Java,Mysql,我用java开发了一个访问远程mysql数据库的应用程序。当我通过运行wamp服务器的系统的netbeans IDE运行它时。但当我尝试在另一个系统中通过netbeans连接到远程系统数据库时,它显示了以下错误 无法添加连接,无法建立到jdbc的连接:mysql://192.168.1.14:3306/test 使用(通信异常:通信链路故障 上次发送到服务器的数据包是0毫秒前的 请,请帮帮我 提前感谢MySQL受标准保护,因此您无法远程访问。您必须授予MySQL以及从MySQL计算机外部连接到M

我用java开发了一个访问远程mysql数据库的应用程序。当我通过运行wamp服务器的系统的netbeans IDE运行它时。但当我尝试在另一个系统中通过netbeans连接到远程系统数据库时,它显示了以下错误

无法添加连接,无法建立到jdbc的连接:mysql://192.168.1.14:3306/test 使用(通信异常:通信链路故障

上次发送到服务器的数据包是0毫秒前的

请,请帮帮我


提前感谢

MySQL受标准保护,因此您无法远程访问。您必须授予MySQL以及从MySQL计算机外部连接到MySQL的用户访问权限。

可能是一个低级网络问题

你能ping那个IP吗? 你能远程登录到那个IP/端口吗

e、 g.
telnet 192.168.1.14 3306

确定您是否可以与该机器对话,以及您是否可以在该机器上创建到MySQL进程的基本TCP连接,这将告诉您很多信息—您的网络是否健全,进程是否正在侦听该端口等。

您可能是因为(1)数据库的URL错误,因为(2)数据库未设置为接受来自web主机的连接,或者因为(3)某些中间网络组件配置错误。(1)是您的问题;(2)和(3)可能是您的问题,也可能是web主机的问题,具体取决于数据库的位置、您对数据库的管理权限以及网络的设置方式

你需要有正确的权限才能远程连接到MySQL。有几种工具可以设置它

这篇文章概述了几个步骤,其中最常用的是授予步骤

mysql> GRANT ALL ON foo.* TO bar@'202.54.10.20' IDENTIFIED BY 'PASSWORD';

在Windows Vista中连接MySQL数据库时也出现了问题,但我不确定这是否与此案例相关。

您是否有ssh访问服务器的权限?我会使用ssh、plink或putty(ssh-L 3305:127.0.0.1:3306 192.168.1.14)运行隧道,然后使用此连接url

jdbc:mysql://127.0.0.1:3305/test
如果我们知道你的操作系统,我们会更容易提供帮助


如果这是一种部署情况,那么从您的IP地址打开端口3306的防火墙可能是正确的。在linux中,您可能会在/etc/sysconfig/iptables中找到设置,但您的系统管理员可能有其他安全防护措施。您还必须验证mysql实际上正在侦听IP地址,而不仅仅是本地主机。

HelloBrain Agnew,我按照你说的做了尝试。但是它显示了以下C:\Documents and Settings\Net Cafe>telnet 192.168.1.14 3306连接到192.168.1.14…无法打开到主机的连接,在端口3306上:连接失败,所以要么你没有路由(ping工作了),要么MySql没有在该端口上侦听(可能在另一个端口上侦听,或者根本不侦听)您的解决方案在一些局域网系统中运行良好。非常感谢。但现在我以清晰的方式解决了上述问题。我停止了防火墙。现在它运行良好。您能帮助我如何编辑防火墙设置以接受/拒绝vai TCP/IP的传入和传出连接…我恐怕对防火墙了解不多。+1提示可以配置mysql我只想在本地主机上监听,所以没有“授权…”和防火墙配置会有帮助。曾经咬过我一口。