1

我一直在尝试使用以下语法使用 JDBC瘦驱动程序连接到这个 Oracle 数据库:

var URL = "jdbc:oracle:thin:@//16.161.286.56:1522/Service_Name"; 
var USER = "user";
var PASS = "password";
var conn = Jdbc.getConnection(URL, USER, PASS);

执行此操作时,我一直有相同的响应:

很抱歉,发生服务器错误。请稍等,然后重试。[87a99af]

有人知道我做错了什么吗?


此外,当我将 IP 地址更改为其“字符串版本”时:

var URL = "jdbc:oracle:thin:@//mydomain.com:1522/Service_Name";

然后我得到错误响应:

无法建立数据库连接。检查连接字符串、用户名和密码。

这对我来说没有意义,因为这两种表达方式应该是等价的......

4

2 回答 2

1

使用服务名的 Oracle JDBC 连接的实际格式是:

@//host_name:port_number/service_name

确保服务名称没问题。您可以尝试使用 TNSNameListener

jdbc:oracle:thin:@(description=(address=(host=<HOSTADDRESS>)(protocol=tcp)(port=<PORT>))(connect_data=(service_name=<SERVICENAME>)(server=<SHARED>)))

TNSNameListener 文件位置:

<ORACLE_HOME>\network\admin\tnsnames.ora
example: /home/oracle/oracle/product/10.2.0/db_1/network/admin/tnsnames.ora
于 2019-07-30T05:25:39.780 回答
0

我不确定 Jdbc 是哪个类。看看JDBCUrlSample.javaDataSourceSample.java

于 2019-07-30T23:20:01.123 回答