是否有将读取一个文件TNS并且在一些易于使用的数据结构呈现它的API?

我想获得我所有的TNS条目的列表。这工作,但不是特别优雅!

grep '^[a-zA-Z].*=' /etc/tnsnames.ora | sed 's/[ =].*//'
有帮助吗?

解决方案

另一个,不是很简单,溶液是ANTLR。您可以使用ANTLR解析tnsnames.ora。在 ANTLR语法列表页面,你会发现它的语法可以解析tnsnames.orasqlnet.oralistener.ora

其他提示

我不知道,如果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名平,这可能会或可能不会在您的方案是可行的。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top