gpt4 book ai didi

java - 当有来自 java 程序的连接时,Oracle 不提供 osuser

转载 作者:行者123 更新时间:2023-12-01 06:20:50 24 4
gpt4 key购买 nike

我正在尝试连接到我的远程 Oracle 数据库,它已被锁定,并且有一个可以连接的用户和电脑的白名单。但是,当我尝试连接时,oracle 没有提供 OSUSER,因此我被拒绝。

这是我的连接方式:

public static final String CONNECTION_STRING =  "jdbc:oracle:thin:@myip:port:db";
public static final java.util.Properties CONNECTION_PROPERTIES = new java.util.Properties();
static {
CONNECTION_PROPERTIES.setProperty("password","password");
CONNECTION_PROPERTIES.setProperty("user","dbuser");
CONNECTION_PROPERTIES.put("v$session.osuser", System.getProperty("user.name").toString());
try {
CONNECTION_PROPERTIES.put("v$session.machine", InetAddress.getLocalHost().getCanonicalHostName());
} catch (UnknownHostException e) {
System.out.println("Failed to determine hostname. Attempting with Localhost, this is unlikely to succeed.");
e.printStackTrace();

CONNECTION_PROPERTIES.put("v$session.machine", "localhost");
}
CONNECTION_PROPERTIES.put("v$session.program", "GDS_Reports");
}

我建立了这样的连接:

  DriverManager.registerDriver(new oracle.jdbc.OracleDriver());
Connection conn = DriverManager.getConnection(GlobalConstants.CONNECTION_STRING, GlobalConstants.CONNECTION_PROPERTIES);

但是该表报告了这些连接:

MACHINE                                              OSUSER               DBUSER               FTIME
---------------------------------------- -------------------- -------------------- -----------------
wn7-18tl6m1.domain dbuser 02-SEP-2011 14:46
wn7-18tl6m1.domain dbuser 02-SEP-2011 14:46
wn7-18tl6m1.domain dbuser 02-SEP-2011 14:46
wn7-18tl6m1.domain dbuser 02-SEP-2011 14:46

最佳答案

某些 Oracle JDBC 驱动程序存在错误,因此未设置 OSUSER,请参阅 fixed bugs in 10.2.0.4因此您需要升级到较新的版本来修复该问题。

关于java - 当有来自 java 程序的连接时,Oracle 不提供 osuser,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7285595/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com