При попытке установить соединение с моей рабочей станции (на самом деле, я наблюдаю одинаковое поведение на рабочих станциях WinXP32 и Win764) с сервером Oracle, первое, что я всегда пробую, это tnsping.Когда я это делаю, вот что я получаю:
> C:\>tnsping MYDBNAME
>
> TNS Ping Utility for 32-bit Windows:
> Version 10.2.0.1.0 - Production on
> 25-JAN-2 011 15:03:35
>
> Copyright (c) 1997, 2005, Oracle. All
> rights reserved.
>
> Message 3511 not found; No message
> file for product=NETWORK,
> facility=TNSMessage 3512 not found;
> No message file for product=NETWORK,
> facility=TNSAttempting to contact
> (DESCRIPTION = (ADDRESS_LIST =
> (ADDRESS = (PROTOCOL = TCP) (HOST =
> thisismyservername.com)(PORT = 1577)))
> (CONNECT_DATA = (SID = MYDBNAME)))
> Message 3509 not found; No message
> file for product=NETWORK, facility=TNS
Итак, как вы можете видеть, он правильно определяет мой файл tnsnames и выбирает правильный адрес сервера и порт для указанной базы данных, носбой tnsping с ошибками 3511 и 3509.
Странно, что с помощью sqlplus или Toad с одной и той же рабочей станции я могу успешно подключиться к той же базе данных.
Может кто-нибудь объяснить, что здесь происходит?
FWIW:
Системная переменная среды ORACLE_HOME (и любые другие переменные среды Oracle) имеет значение , а не set.
Обновление
Переменная среды ORACLE_HOME не обязательно должна быть задана, она зависит от машины.Моя конкретная проблема заключалась в том, что Oracle 10g имел / имел известный дефект в том, что tnsping.exe просто не работал.Есть патч