Podle Oracle jsou tato umístění vyhledávána pomocí tnsnames.ora
, resp. sqlnet.ora
:
- aktuální cesta (spojená se spuštěnou klientskou aplikací)
- Proměnná prostředí
TNS_ADMIN
definované pro relaci - Proměnná prostředí
TNS_ADMIN
definovaný pro systém - Klíč registru systému Windows
HKLM\SOFTWARE\ORACLE\KEY_{ORACLE_HOME_NAME}\TNS_ADMIN
(pro 64bitovou verzi) neboHKLM\SOFTWARE\Wow6432Node\ORACLE\KEY_{ORACLE_HOME_NAME}\TNS_ADMIN
(pro 32 bitů) %ORACLE_HOME%\network\admin
Nejsem si však jistý, zda se každá aplikace/ovladač/verze řídí tímto seznamem. Tento seznam poskytla společnost Oracle týkající se verze 9i. Myslím, že jej zvládnete dotazováním těchto složek pomocí VBScriptu.
Pokud ORACLE_HOME
není nastaveno proměnnou prostředí, musíte se dotázat registru HKLM\SOFTWARE\ORACLE\KEY_{ORACLE_HOME_NAME}\ORACLE_HOME
(pro 64bitovou verzi) nebo HKLM\SOFTWARE\Wow6432Node\ORACLE\KEY_{ORACLE_HOME_NAME}\ORACLE_HOME
(pro 32 bitů)
Pro ORACLE_HOME_NAME
musíte přejít do vašeho Oracle bin
složku (lze najít přes %PATH%
Proměnná prostředí) a otevřete soubor oracle.key
. Toto je jednoduchý textový soubor obsahující pouze ORACLE_HOME_NAME
hodnotu, např. OraClient11g_home1 .
Obvykle je však pod HKLM\SOFTWARE\ORACLE
pouze jedna domovská stránka Oracle , takže hledání a čtení souboru oracle.key
může to být přehnané.
Aktualizovat
Když spustím test na svém počítači (s Oracle Client 11.2), dostanu následující pořadí:
- Proměnná prostředí
TNS_ADMIN
HKLM\SOFTWARE\ORACLE\KEY_{Oracle_Home_Name}\TNS_ADMIN
, resp.HKLM\SOFTWARE\Wow6432Node\ORACLE\KEY_{Oracle_Home_Name}\TNS_ADMIN
-> Pouze pokudTNS_ADMIN
Proměnná prostředí není nastavena.%ORACLE_HOME%\network\admin
- Aktuální adresář (který se může lišit od adresáře, kde se nachází vaše aplikace)
- Složka, ve které se nachází vaše aplikace
Pro hloubkovou analýzu musíte vyhledat tnsnames.ora
, sqlnet.ora
a ldap.ora
. Název databáze Oracle lze přeložit prostřednictvím každého z nich, tj. spojení může být navázáno, i když tnsnames.ora
a sqlnet.ora
neexistují.