java - 使用 IP 地址到远程服务器的 JDBC 连接
问题描述
我在同一个wifi网络中有两台笔记本电脑。
笔记本电脑 A 的 IP 地址为 192.168.1.102 我在笔记本电脑 A 上安装了 Oracle 数据库。
我想从笔记本电脑 B 访问数据库。
第一次我尝试了 ping 命令,
然后我尝试使用以下代码从笔记本电脑 B 访问安装在笔记本电脑 A 上的数据库,
package test.remote.server;
import java.sql.*;
import javax.swing.JOptionPane;
public class TestRemoteServer
{
public static void main(String args[])
{
try
{
String IPAddress="192.168.1.102";
Class.forName("oracle.jdbc.driver.OracleDriver");
System.out.println("Class Found !");
Connection con=DriverManager.getConnection("jdbc:oracle:thin:@"+IPAddress+":1521:XE","system","manager");
System.out.println("Connection Established !");
}
catch(Exception ex)
{
ex.printStackTrace();
}
}
}
如果我从笔记本电脑 A(安装数据库的地方)运行此代码,则输出为
Class Found !
Connection Established !
当我在笔记本电脑 B 上运行相同的代码时,出现如下错误
Class found !
java.sql.SQLException: Io exception: The Network Adapter could not establish the connection
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112) at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:146)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:255)
at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:387)
at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:414)
at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:165)
at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35)
at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801)
at java.sql.DriverManager.getConnection(DriverManager.java:664)
at java.sql.DriverManager.getConnection(DriverManager.java:247)
at test.remote.server.TestRemoteServer.main(TestRemoteServer.java:20)
如何从笔记本电脑 B 访问安装在笔记本电脑 A 上的数据库?
解决方案
推荐阅读
- python - 找不到 Django 页面
- python - 如何将元组转换为具有浮点和字符串值的列表
- javascript - 无法从渲染内部调用渲染外部的函数(在 reactjs 中)
- .net - 针对多个框架的项目上的“dotnet build”仅构建“netstandard2.0”而不生成 nupkg 文件
- javascript - 仅当承诺处于活动状态时如何显示和隐藏弹出窗口?反应
- bash - 有没有办法在 bash 中分配 bool 变量?
- amazon-web-services - 在私有子网中的 EC2 上安装 Cloudwatch 代理
- perl - 标量上的实验键现在被禁止警告
- scala - 在火花数据框中连接并替换 groupBy 之后的字符串
- networking - 如何在 4.2 中使用 macvlan CNI 插件创建额外的网络附件?