如何连接到另外一台计算机,如何从另一台计算机连接到JavaDB?

我正在尝试学习一些基本的JDBC。

我已经创建了一个JavaDB服务器并创建了一个Java程序,我可以在其中读取和更改数据库中的某些表。

我认为能够从运行在同一网络上的另一台计算机连接到服务器是一个有趣的下一步,如果它是相似的,甚至可以从互联网连接到服务器。

到目前为止,我刚尝试在另一台计算机上打开项目,看看它是否会连接到本地主机,但预计它会太容易了...

当前的db名称是“jdbc:derby:// localhost:1527 / test; user = db; password = db”。

我可以用我的ipv4地址替换localhost来连接本地吗?要么

我真的需要路由器的IP并进行一些端口转发吗?

本地连接是我真正需要的。如果这更容易,那就是我想做的。

答案

您需要使用要连接的框的主机名或IP:

URI:jdbc:derby://:1527/test;user=db;password=db

将替换为真正的价值,你很高兴。

另一答案

另一答案

因此,我建议您查看防火墙设置,如果防火墙没有阻止,或者您可以尝试与另一个端口进行通信。如果这两件事都不起作用,请告诉我,在吐出这个错误之前需要多长时间。此外,在命令提示符下,尝试ping machineIP并查看它是否正在发送和接收数据

另一答案

第34页:

默认情况下,Derby Network Server将仅侦听localhost(...)

一种解决方案是使用以下内容创建[derby.properties]文件:derby.drda.host = 0.0.0.0

保存属性文件的位置可能有所不同:

- 在我的一台机器上直接在'javadb','bin','lib'等兄弟

- 在我的第二台机器上,它位于'bin'目录下,是* .bat文件的兄弟。

要验证您的属性是否正在被读取(它最初不存在,Derby doc明确告诉它不会为您创建它),也是要添加此属性:derby.stream.error.file = derbyNewLog。日志

如果执行bin / startNetworkServer,它将创建新的日志文件,以防您正确读取属性。

确认正在读取新属性文件后,可以使用bin / ij工具对DB(本地和远程)执行connect语句。这是我可以快速验证它(我的数据库名称是'differentRequestsAndPerformance'):

c:glassfish4javadbin>ij

ij version 10.10

ij> connect 'jdbc:derby://localhost:1527/differentRequestsAndPerformance';

ij> show tables;

TABLE_SCHEM |TABLE_NAME |REMARKS

------------------------------------------------------------------------

SYS |SYSALIASES |

(...)

ij> disconnect;

>> this 'connect' with localhost is expected to work always - you can append ';create=true' to the DB name in case it doesn't exist already; now change it to your remote ip (I'm assuming you previously confirmed with 'ping' command that you actually can see the server remote machine, otherwise it's a network problem, not a Derby problem)

ij> connect 'jdbc:derby://192.168.1.14:1527/differentRequestsAndPerformance';

ij> show tables;

TABLE_SCHEM |TABLE_NAME |REMARKS

------------------------------------------------------------------------

SYS |SYSALIASES |

(...)

ij> disconnect;

另外一条评论:我不确定0.0.0.0设置会将您的计算机打开到恶意软件的程度是多少,因为我只想验证我的代码,并且在我满意后立即将其禁用。如果您想将其用于实际程序,则需要对此进行更多研究。

如果您的'ij'工具抱怨某些驱动程序,请将javadb / lib目录添加到CLASSPATH系统变量中。

另一件事(显而易见但安全性比抱歉更好):此配置必须设置在远程数据库(您的请求将到达),如果像我一样,您有2台机器都在运行数据库。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值