如何通过无线局域网访问数据库

时间:2017-02-01 10:26:20

标签: java sql jdbc

我使用Netbeans IDE和Java和jdbc在本地连接到Oracle数据库(即数据库和程序存储在同一台计算机上)

但我想通过存储在不同计算机上的程序访问数据库。

如何做到这一点以及需要什么额外的软件以及DriverManager.getConnection()

的网址应该是什么

我当前的DriverManager.getConnection是这样的......

DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:XE",condb.usrnm,condb.psswrd);

2 个答案:

答案 0 :(得分:0)

尝试将localhost更改为数据库服务器的主机名或IP地址。在下面的示例中,我已更改为server.remote.net

DriverManager.getConnection("jdbc:oracle:thin:@server.remote.net:1521:XE",condb.usrnm,condb.psswrd);

然后注意端口,我假设您的服务器正在侦听端口1521。因为1521是Oracle服务器的标准端口。

之后,您必须确保与您的服务器有网络连接。有很多方法可以做到这一点。正如@YCF_L建议你可以ping服务器:

ping server.remote.net

或telnet

telnet server.remote.net 1521

您必须注意的另一个重要事项是jdbc连接字符串中的XE关键字。哪个是Oracle实例名称。您的远程服务器可以具有不同名称COMPANY_DATA

的Oracle实例

这意味着您的连接字符串可能会更改为:

DriverManager.getConnection("jdbc:oracle:thin:@server.remote.net:1521:COMPANY_DATA",condb.usrnm,condb.psswrd);

另一方面,在远程计算机上可能存在不同的数据库引擎。像MySql,MS SQL Server,Postgres等。在这种情况下,jdbc连接字符串更改更多。

答案 1 :(得分:0)

您应该指定目标计算机的正确IP地址:

Connection con = 
DriverManager.getConnection("jdbc:oracle:thin:@ipOfTargetPc:1521:XE", condb.usrnm, condb.psswrd);

您可以在目标计算机中ping并获取IP地址。