oracle - ORA-12154 错误 TNS 无法解析指定的连接标识
问题描述
在运行 java 应用程序时,我收到 ORA-12154 错误。在 java 应用程序中,我们必须使用我们的数据库凭据登录。对于某些用户凭据,应用程序正在成功运行,但对于其他用户凭据,它会抛出错误 ORA-12154:TNS:could not resolve the connect identifer specified。
有人可以帮我解决这个问题。
解决方案
最常见的原因是数据库别名(您要连接到的)未包含在TNSNAMES.ORA
文件中。
如果您有多个 Oracle 软件产品,则很有可能每个产品都有自己的TNSNAMES.ORA
文件(通常位于其\network\admin
目录中)。它的方法是同时编辑所有这些文件(这是愚蠢的),或者创建一个TNS_ADMIN
环境变量,该变量将指向包含您的“主”TNSNAMES.ORA
文件的目录,例如我有:
M:\>set tns_admin
TNS_ADMIN=C:\0_Oracle_library
因此,每次我必须添加一个新数据库时,我都会编辑该TNSNAMES.ORA
文件,并且我的所有 Oracle 程序(Forms、Reports、SQL Developer、TOAD、SQL*Plus、...)都可以访问并使用它。
推荐阅读
- flutter - 如何屏蔽重叠部分,通过 NestedScrollView 中的“半透明标题条”可见?
- c# - C# Httpresponse 给出无法将数据写入传输连接:管道损坏
- python-3.x - AttributeError:“DataFrame”对象没有属性“swifter”
- javascript - 如何根据对象属性的值创建动态变量名
- java - 同步对象以避免在 Muiti Thread 环境中出现空指针异常
- r - 通过基于 R 中的分位数分配值来在数据框中生成新列?
- d3.js - Chartjs 删除标签并开始编号
- r - 属性必须与向量的长度相同
- wordpress - Wordpress:帮助获得正确的评论以显示在单个帖子上
- apache-kafka - 在 Kafka 中使用多个分区有什么好处?