Question

Y at-il une API qui va lire un fichier TNS et de le présenter dans une structure de données facile à utiliser?

Je voudrais obtenir une liste de toutes mes entrées TNS. Cela fonctionne, mais n'est pas particulièrement élégant!

grep '^[a-zA-Z].*=' /etc/tnsnames.ora | sed 's/[ =].*//'
Était-ce utile?

La solution

Un autre, pas très simple, la solution est ANTLR. Vous pouvez utiliser ANTLR pour analyser tnsnames.ora. Le ANTLR Grammaire Liste page de vous trouverez la grammaire qui peut analyser tnsnames.ora, sqlnet.ora et listener.ora

Autres conseils

Je ne sais pas si TNSPING serait plus utile pour vous. Il sortira comme:

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)

Le problème est que vous devez transmettre le nom TNS ping, qui peut ou peut ne pas être possible dans votre scénario.

scroll top