我使用sql-developer连接到几个不同用户的几个不同的oracle数据库。连接信息保存在tnsnames.ora
文件中,这样当数据库更改服务器时,我不必手动更新我的所有连接。我最近更新了我的tnsnames文件,现在网络别名列表中有两个应该存在的条目。第二个条目似乎工作(IE测试连接时通过测试)。但是,默认情况下,它似乎选择了第一个条目,但不起作用。
我怀疑这是由于答案在这里:Oracle TNS names not showing when adding new connection to SQL Developer但是,答案并没有解决如何解决这个问题。
那么,如何彻底清除网络别名列表并强制它从文件中重新加载?
答案 0 :(得分:5)
它抓住了我在同一个文件夹中的旧版本的tnsnames.ora_OLD。根据:
http://forums.oracle.com/forums/thread.jspa?threadID=1017751
“SQL Developer的TNS名称功能有一个长期的功能,SQL Developer将在TNS Admin目录中找到所有匹配的tnsnames.ora *文件,并列出所有这些文件的内容。例如,所有TNS TNSNAMES.ORA,TNSNAMES.ORA~和TNSNAMES.ORA.201001210957中定义的别名将包含在网络别名列表中。“
删除旧文件删除了额外的条目。
答案 1 :(得分:1)
我发现重复的TNS名称来自以下两个文件; tnsnames.ora和tnsnames .~ora
两个选项;
选项1.删除文件“tnsnames .~ora”
选项2.如果您必须在文件夹中保留此“tnsnames .~ora”,则将其重命名为“tnsnames~ora.txt”
**请注意,如果您将其重命名为“tnsnames .~orara.txt”,它仍会显示重复。 我的理解是,如果文件名以“tnsnames”开头并以“ora”结尾, 它会为您提供重复的TNS名称。