2015-03-04 3 views
2

У меня проблема. У меня есть Oracle 11g, настроенный на Linux, который отлично работает. Я был в состоянии подключиться удаленно с других компьютеров, используя строку соединения на основе SID, таких какORA-12545: Oracle SID неожиданно прекратил работу

sqlplus [email protected]:1521:orcl

затем по какой-то необъяснимой причине он перестал работать. Я не уверен, что я или кто-то другой расхохотался.

теперь я только возможность подключиться удаленно с помощью SERVICE_NAME или TNSNAME методы, основанные на

sqlplus [email protected]:1521/orcl

sqlplus [email protected]

И работа, и это было бы хорошо, и хорошо, но у меня есть приложения, которые полагаются на схеме подключения SID, которую я могу изменить. Может какая-то душа помочь мне понять, что я пропускаю

Ниже моя конфигурация:

LISTENER.ORA:

[[email protected] ~]$ cat /opt/u01/app/oracle/product/11.2.0/dbhome_1/network/admin/listener.ora 
# listener.ora Network Configuration File: /opt/u01/app/oracle/product/11.2.0/dbhome_1/network/admin/listener.ora 
# Generated by Oracle configuration tools. 

LISTENER = 
    (DESCRIPTION_LIST = 
    (DESCRIPTION = 
     (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521)) 
     (ADDRESS = (PROTOCOL = TCP)(HOST = dbora112)(PORT = 1521)) 
    ) 
) 

ADR_BASE_LISTENER = /opt/u01/app/oracle 

СЛУШАТЕЛЬ СТАТУС:

[[email protected] ~]$ lsnrctl status 

LSNRCTL for Linux: Version 11.2.0.3.0 - Production on 04-MAR-2015 14:50:05 

Copyright (c) 1991, 2011, Oracle. All rights reserved. 

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521))) 
STATUS of the LISTENER 
------------------------ 
Alias      LISTENER 
Version     TNSLSNR for Linux: Version 11.2.0.3.0 - Production 
Start Date    04-MAR-2015 14:37:12 
Uptime     0 days 0 hr. 12 min. 52 sec 
Trace Level    off 
Security     ON: Local OS Authentication 
SNMP      OFF 
Listener Parameter File /opt/u01/app/oracle/product/11.2.0/dbhome_1/network/admin/listener.ora 
Listener Log File   /opt/u01/app/oracle/diag/tnslsnr/dbora112/listener/alert/log.xml 
Listening Endpoints Summary... 
    (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521))) 
    (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=dbora112)(PORT=1521))) 
Services Summary... 
Service "orcl" has 1 instance(s). 
    Instance "orcl", status READY, has 1 handler(s) for this service... 
Service "orclXDB" has 1 instance(s). 
    Instance "orcl", status READY, has 1 handler(s) for this service... 
The command completed successfully 

TNSNAMES.ORA :

[[email protected] ~]$ cat /opt/u01/app/oracle/product/11.2.0/dbhome_1/network/admin/tnsnames.ora 
# tnsnames.ora Network Configuration File: /opt/u01/app/oracle/product/11.2.0/dbhome_1/network/admin/tnsnames.ora 
# Generated by Oracle configuration tools. 

ORCL = 
    (DESCRIPTION = 
    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.184.102)(PORT = 1521)) 
    (CONNECT_DATA = 
     (SERVER = DEDICATED) 
     (SID = orcl) 
    ) 
) 

LISTENER_ORCL = 
    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.184.102)(PORT = 1521)) 

SQLNET:

[[email protected] ~]$ cat /opt/u01/app/oracle/product/11.2.0/dbhome_1/network/admin/sqlnet.ora 
# sqlnet.ora Network Configuration File: /opt/u01/app/oracle/product/11.2.0/dbhome_1/network/admin/sqlnet.ora 
# Generated by Oracle configuration tools. 

NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT) 

ADR_BASE = /opt/u01/app/oracle 

Может соединяться с не проблема с использованием TNS

[[email protected] ~]$ sqlplus schema/[email protected] 

SQL*Plus: Release 11.2.0.3.0 Production on Wed Mar 4 14:54:10 2015 

Copyright (c) 1982, 2011, Oracle. All rights reserved. 


Connected to: 
Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production 
With the Partitioning, OLAP, Data Mining and Real Application Testing options 

SQL> 

Может подключаться без проблем, используя имя службы

[[email protected] ~]$ sqlplus schema/[email protected]/ORCL 

SQL*Plus: Release 11.2.0.3.0 Production on Wed Mar 4 14:55:52 2015 

Copyright (c) 1982, 2011, Oracle. All rights reserved. 


Connected to: 
Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production 
With the Partitioning, OLAP, Data Mining and Real Application Testing options 

SQL> 

Cannnot соединиться с SID

[[email protected] ~]$ sqlplus schema/[email protected]:orcl 

SQL*Plus: Release 11.2.0.3.0 Production on Wed Mar 4 14:56:38 2015 

Copyright (c) 1982, 2011, Oracle. All rights reserved. 

ERROR: 
ORA-12545: Connect failed because target host or object does not exist 

Экземпляр базы данных (SID)

SQL> select instance_name from v$instance; 

INSTANCE_NAME 
---------------- 
orcl 
+0

Вы можете показать вывод службы show parameter service –

ответ

1

Так как вы можете связаться с вашим псевдонимом TNS, и это используя SID в описании соединения, SID работает.

Но ваша строка EasyConnect неверна.From the SQL*Plus documentation:

Простой или сокращенный идентификатор соединения имеет следующий синтаксис:

[//]host[:port][/service_name]

Вы не можете использовать SID с Easy Connect, только имя службы; так что ваше подключение с помощью:

sqlplus schema/[email protected]:orcl 

или даже

sqlplus schema/[email protected]:1521:orcl 

... никогда не работало. Вы можете использование, которые образуют с JDBC-URL, используя старый тип:

jdbc:oracle:thin:@192.168.184.102:1521:orcl 

... но это не то же самое, как SQL * Plus связи, несмотря на глядя похожи.

Если вы пытаетесь проверить, будет ли соединение JDBC этой формы работать, вы не можете сделать это с помощью SQL * Plus, но ваша проверка псевдонимов TNS проверяет, что она настроена так, как вы ожидаете, до тех пор, пока она использует тот же хост, порт и SID. Вероятно, было бы лучше использовать новый синтаксис JDBC, но из вопроса, похоже, вы не можете его изменить.

Read more about Easy Connect.

0

Это может быть, когда Oracle не может разрешить имя хоста IP. Можете ли вы решить свое имя хоста с помощью nslookup? Т.е.,

Nslookup yourhostname

Также убедитесь, что обратный поиск работает:

Nslookup yourIpAddr

+0

OP использует IP-адреса, а не имена хостов, поэтому нет поиска, и он работает с именем службы - это только SID, которые, похоже, являются проблемой, и есть нет связи между SID и именем хоста. –