首页 > 解决方案 > 如何调试 java.sql.SQLException:无法解析连接标识符

问题描述

我收到错误消息“java.sql.SQLException:无法解析连接标识符”,但它并不总是失败,有时它可以工作。

在应用程序中,正在运行连接检查,或者使用石英调度程序进行调度,或者使用按钮立即运行它。

立即运行通常可以正常运行,而计划运行大多数时候会失败。你有什么建议我可以调试这个吗?

对系统的最新更改是更改 tnsnames.ora。新的 tnsnames.ora 在 ADDRESS_LIST 中有 4 个服务器 IP,而旧的 tnsnames.ora 只有三个。

代码是:

Class.forName("oracle.jdbc.driver.OracleDriver");
DriverManager.setLoginTimeout(timeoutSeconds);
conn = DriverManager.getConnection(url, username, decryptedPassword);
conn.close();

标签: javaoracleexceptionconnection

解决方案


事实证明,另一个开发人员正在本地运行他自己的 tomcat,使用的数据库与应该在数据库上工作的 tomcat 相同。

在他的本地机器上,tnsnames.ora 不包含正在检查的远程数据库,因此导致了错误消息。


推荐阅读