Oracle:处理TNS文件的API?

5

是否有一种API可以读取TNS文件并以易于使用的数据结构呈现它?

我想要获取所有我的TNS条目的列表。这个方法可行,但不是特别优雅!

grep '^[a-zA-Z].*=' /etc/tnsnames.ora | sed 's/[ =].*//'

你觉得你的解决方案有什么不够优雅的地方? - Todd Pierce
2个回答

4

另一个不太简单的解决方案是使用ANTLR。您可以使用ANTLR解析tnsnames.ora。在ANTLR语法列表页面上,您将找到可以解析tnsnames.orasqlnet.oralistener.ora的语法。


0

我不确定TNSPing对您是否更有用。它会输出如下:

TNS Ping Utility for Linux: Version 10.2.0.1.0 - Production
on 01-MAR-2009 02:02:33

Copyright (c) 1997, 2005, Oracle.  All rights reserved.

Used parameter files:

Used TNSNAMES adapter to resolve the alias
Attempting to contact (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)
(HOST = myhostname)(PORT = 1521)) (CONNECT_DATA = (SID = mydb)))
OK (80 msec)

问题在于必须将TNS名称传递给ping,这可能或可能不可能在您的场景中实现。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接