java - 如何调试 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();
解决方案
事实证明,另一个开发人员正在本地运行他自己的 tomcat,使用的数据库与应该在数据库上工作的 tomcat 相同。
在他的本地机器上,tnsnames.ora 不包含正在检查的远程数据库,因此导致了错误消息。
推荐阅读
- c# - 基于日期的两个表的计数
- python - ORA-01722: 无效数字 - 带有 cx_Oracle 的 Python
- python - 如何将 jpeg 大小减小到“所需大小”?
- c# - 返回未按预期退出递归方法 - C#
- angular-cli-v6 - Angular CLI HttpParams 如何删除参数
- filter - Out-gridview 过滤器通配符
- libreoffice-calc - 如何对一系列计算求和
- linux - 将最新文件名获取到比特定时间更早的变量中
- javascript - NodeJS 和 ReactJS 套接字通信
- c - 无法打印出动态分配数组中的元素