Menurut Oracle, lokasi ini dicari tnsnames.ora
, hal. sqlnet.ora
:
- jalur saat ini (terkait dengan aplikasi klien yang sedang berjalan)
- Variabel lingkungan
TNS_ADMIN
ditentukan untuk sesi - Variabel lingkungan
TNS_ADMIN
ditentukan untuk sistem - Kunci Registri Windows
HKLM\SOFTWARE\ORACLE\KEY_{ORACLE_HOME_NAME}\TNS_ADMIN
(untuk 64 bit) atauHKLM\SOFTWARE\Wow6432Node\ORACLE\KEY_{ORACLE_HOME_NAME}\TNS_ADMIN
(untuk 32 bit) %ORACLE_HOME%\network\admin
Namun, saya tidak yakin apakah setiap aplikasi/driver/versi mengikuti daftar ini. Daftar ini disediakan oleh Oracle terkait dengan versi 9i. Saya pikir Anda akan mengaturnya untuk menanyakan folder-folder ini dengan VBScript.
Jika ORACLE_HOME
tidak disetel oleh variabel Lingkungan, Anda harus menanyakan HKLM\SOFTWARE\ORACLE\KEY_{ORACLE_HOME_NAME}\ORACLE_HOME
Registry> (untuk 64 bit) atau HKLM\SOFTWARE\Wow6432Node\ORACLE\KEY_{ORACLE_HOME_NAME}\ORACLE_HOME
(untuk 32 bit)
Untuk ORACLE_HOME_NAME
anda harus menavigasi ke bin
Oracle Anda folder (dapat ditemukan melalui %PATH%
Variabel lingkungan) dan buka file oracle.key
. Ini adalah file teks sederhana yang hanya berisi ORACLE_HOME_NAME
nilai, mis. OraClient11g_home1 .
Namun, biasanya hanya ada satu Oracle Home di bawah HKLM\SOFTWARE\ORACLE
, jadi cari dan baca file oracle.key
mungkin berlebihan.
Perbarui
Ketika saya menjalankan tes pada mesin saya (dengan Oracle Client 11.2) saya mendapatkan perintah berikut:
- Variabel lingkungan
TNS_ADMIN
HKLM\SOFTWARE\ORACLE\KEY_{Oracle_Home_Name}\TNS_ADMIN
, hal.HKLM\SOFTWARE\Wow6432Node\ORACLE\KEY_{Oracle_Home_Name}\TNS_ADMIN
-> Hanya jikaTNS_ADMIN
Variabel lingkungan tidak disetel.%ORACLE_HOME%\network\admin
- Direktori saat ini (yang mungkin berbeda dengan direktori tempat aplikasi Anda berada)
- Folder tempat aplikasi Anda berada
Untuk analisis mendalam Anda harus mencari tnsnames.ora
, sqlnet.ora
dan ldap.ora
. Nama database Oracle dapat diselesaikan melalui masing-masing dari mereka, yaitu koneksi dapat dibuat bahkan ketika tnsnames.ora
dan sqlnet.ora
tidak ada.