繁体   English   中英

从另一台PC连接到MySQL服务器(通过Java应用程序)

[英]Connect to the MySQL server from another PC (from java application)

我实现了一个连接到MySQL的Java应用程序。

当我在同一局域网中另一台PC的导航器中对我的PC进行IP地址访问时,我可以访问phpMyadmin和Wamp。

当我在同一台PC上安装127.0.0.1(Wamp安装)时,我从Java应用程序连接到127.0.0.1,并且可以正常工作。

但是当我将我的PC或同一局域网中另一台PC的IP地址放入我的Java应用程序时出现问题,我无法连接。

这是我在Java应用程序中的配置文件:

db.user=root
db.password=
db.driver=com.mysql.jdbc.Driver
db.url=jdbc:mysql://192.168.1.59:3306/testfournisseur

有需要做的操纵吗?

这是我连接到数据库时出现的错误:

Caused by: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException:   Communications link failure

Last packet sent to the server was 1 ms ago.
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
at java.lang.reflect.Constructor.newInstance(Unknown Source)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:406)
at com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:1074)
at com.mysql.jdbc.MysqlIO.readPacket(MysqlIO.java:666)
at com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:1069)
at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2031)
... 72 more
Caused by: java.io.EOFException: Can not read response from server. Expected to read 4 bytes, read 0 bytes before connection was unexpectedly lost.
at com.mysql.jdbc.MysqlIO.readFully(MysqlIO.java:2431)
at com.mysql.jdbc.MysqlIO.readPacket(MysqlIO.java:590)
... 74 more

我不熟悉Windows上的MySQL,但最常见的无法连接的原因是my.cnf中的bind-address设置为127.0.0.1 ,如果将其更改为0.0.0.0或其他可访问的地址,则它应该工作正常。

我还注意到您在属性示例中指定了端口80,MySQL默认在3306上运行,因此将端口更改为该端口(或省略该端口)可能有效。

编辑:Windows的内置防火墙可能正在阻止连接,因此绝对值得一试。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM