我实现了一个连接MySQL的java应用程序。
当我在同一本地网络中的另一台电脑的导航器中创建我的电脑的IP地址时,我访问了phpMyadmin和Wamp。
当我在同一台电脑上安装127.0.0.1时(Wamp安装)我从我的java应用程序连接到127.0.0.1并且它可以工作。
但是当我将我的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
答案 0 :(得分:1)
我在Windows上不熟悉MySQL,但我看到无法连接的最常见原因是bind-address
中的my.cnf
设置为127.0.0.1
,如果你将此更改为0.0.0.0
或其他可访问的地址,然后它应该正常工作。
我还注意到你在属性示例中指定了端口80,默认情况下MySQL运行在3306上,因此将端口更改为(或省略它)可能有效。
编辑:Windows'内置防火墙可能会阻止连接,所以它绝对值得一试。