如何将一台计算机上的java应用程序与另一台计算机上的数据库连接起来
我开发了一个桌面java应用程序,并使用EasyHP创建了它的数据库。我已经连接了两台计算机,第一台的IP地址为如何将一台计算机上的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
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。