Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/321.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何将一台计算机上的java应用程序与另一台计算机上的数据库连接起来_Java_Mysql_Jdbc - Fatal编程技术网

如何将一台计算机上的java应用程序与另一台计算机上的数据库连接起来

如何将一台计算机上的java应用程序与另一台计算机上的数据库连接起来,java,mysql,jdbc,Java,Mysql,Jdbc,我开发了一个桌面java应用程序,并使用EasyHP创建了它的数据库。我已经连接了两台计算机,第一台的IP地址为192.168.1.2,第二台的IP地址为192.168.1.3。现在我想把EasyHP放在第一台计算机上,把应用程序放在第二台计算机上,但我的连接有问题。用于连接的代码为: public DataSource getDataSource(){ BasicDataSource ds = new BasicDataSource(); ds.setDrive

我开发了一个桌面java应用程序,并使用EasyHP创建了它的数据库。我已经连接了两台计算机,第一台的IP地址为
192.168.1.2
,第二台的IP地址为
192.168.1.3
。现在我想把EasyHP放在第一台计算机上,把应用程序放在第二台计算机上,但我的连接有问题。用于连接的代码为:

    public DataSource getDataSource(){ 
     BasicDataSource ds = new BasicDataSource(); 
     ds.setDriverClassName("com.mysql.jdbc.Driver"); 
     ds.setUsername("root"); 
     ds.setPassword(""); 
     ds.setUrl("jdbc:mysql://192.168.1.2/en_library"); 
     ds.setMaxActive(20); 
     ds.setMaxIdle(4); 
     return ds; 
    }
它向我提供了以下错误消息:

    Feb 10, 2015 11:41:01 AM UserSearch.UserSearch <init> SEVERE: null
    org.apache.commons.dbcp.SQLNestedException: Cannot create
    PoolableConnectionFactory (Communications link failure 
2015年2月10日上午11:41:01 UserSearch.UserSearch严重:null
org.apache.commons.dbcp.SQLNestedException:无法创建
PoolableConnectionFactory(通信链路故障

已解决:

我已完成以下步骤:

1-从防火墙打开端口3306

2-通过向我的用户授予所有权限
将en_库。*上的所有权限授予“根”@“%”,由“密码”标识

3-更改绑定地址:0.0.0.0

4-重新启动MySQL

5-在连接URL中写入
(“jdbc:mysql://192.168.1.2:3306/en_library“”



您应该添加更多端口,因为
3306
是MySQL的默认端口,我们有:

ds.setUrl("jdbc:mysql://192.168.1.2:3306/en_library"); 

请记住将连接字符串片段放入try-catch块。

MySQL正在网络接口上侦听吗?默认情况下,它通常配置为仅在本地主机上侦听。完整堆栈跟踪是什么?亲爱的@ruediste如何使其在网络接口上侦听?找到您的MySQL服务器配置文件(您使用的是什么操作系统?)并检查绑定地址的值。将其设置为0.0.0.0I正在使用“Windows 7 32位”,并将绑定地址更改为0.0.0.0@ruedisteDear@dovy我已尝试过,但未成功!@JavaCrawler,请尝试禁用防火墙或打开MySQL的端口3306。