gpt4 book ai didi

java - 甲骨文 JDBC : invalid username/password (ora-01017)

转载 作者:搜寻专家 更新时间:2023-11-01 03:55:28 26 4
gpt4 key购买 nike

我有一个关于 jdbc 连接到 oracle 数据库服务器的奇怪问题。

我们在 tomcat 服务器上运行应用程序。这些应用程序使用 oracle 数据库。所有应用程序都使用相同的凭据。

应用程序全天运行良好。晚上没有 Activity 。早上,当应用程序尝试重新连接到数据库时,我们会收到一些(2 或 3 个)ORA-01017(无效的用户名/密码)错误。

然后重新连接工作,应用程序将正常运行。

这会工作几天(大约 5 天),然后是一个或多个应用程序 block !所有重新连接尝试均失败。

我们跟踪了网络通信,发现如果连接失败,发送的地方会显示 ORA-01017 NO CREDENTIALS

当然没有人在晚上接触系统。

一种解决方法是我们每天早上 6 点重新启动 tomcat 服务器以清理每个连接缓存或连接池。这没有帮助。

怎么了?有什么想法吗?

在完全阻塞的情况下持续 5 天的间隔(同时每天都在重复)对我来说看起来很奇怪。

配置:

数据库Oracle 10.2,JDBC Driver 11.2 thin,tomcat 6.0.24,JDK 6,操作系统为windows,部分应用为Avaya Voice Portal 5.0的Dialogs。

我们自己的(非 VP)应用程序使用简单的连接(无池化)。


该系统最初是在 Windows 2003 服务器上设置的,在 apserver 和 tomcat 服务器之间有一个 WAN。

系统现已迁移到数据库服务器附近的linux(CentOS)服务器上,运行良好。不再有 ORA-01017。

最佳答案

对我来说,OracleDriver 的不兼容版本导致了这个问题您的应用程序应该手动注册 oracle 驱动程序(我需要使用的 jar 正在做)或者 agter java 6 ojdbc.jar 应该在您的应用程序的类路径中。因此,为您的 oracle 安装提供 google 兼容的驱动程序版本,并在您的 pom 文件中声明它(使用需要的插件将其放入生成的 jar 中)并从代码中手动引用它,或者将 ojdbc.jar 放在您的 jar 可以看到的地方有用的链接:

关于连接到 oracle 数据库:https://www.codejava.net/java-se/jdbc/connect-to-oracle-database-via-jdbc

关于 java 类路径:https://docs.oracle.com/javase/7/docs/technotes/tools/windows/classpath.html

关于java - 甲骨文 JDBC : invalid username/password (ora-01017),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8435234/

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