Как решить ошибку 12505 в Oracle SQL? - PullRequest
2 голосов
/ 03 февраля 2020

Я студент-программист, и я только начал изучать базы данных и SQL. Когда я пытаюсь подключиться к базе данных в SQL Developer, он говорит

ORA-12505, TNS: слушатель в настоящее время не знает SID, указанный в дескрипторе соединения.

Я попытался установить его на мою P C башню дома, и все работает нормально, просто не работает с моим ноутбуком. Даже учитель сказал, что не может мне помочь, потому что он не знает, что делать, поэтому я пытаюсь здесь, потому что я действительно не знаю, что делать.

Я пытался удалить и переустановить базу данных несколько раз и Я убедился, что все Oracle службы работают. Мой SID установлен на XE. Мое соединение установлено на basi c. Хост - «localhost», порт - «1521», а SID - «xe»

Здесь находится файл tnsnames.ora

XE =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = DESKTOP-62JIG0N)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = XE)
    )
  )

EXTPROC_CONNECTION_DATA =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
    )
    (CONNECT_DATA =
      (SID = PLSExtProc)
      (PRESENTATION = RO)
    )
  )

ORACLR_CONNECTION_DATA = 
  (DESCRIPTION = 
    (ADDRESS_LIST = 
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1)) 
    ) 
    (CONNECT_DATA = 
      (SID = CLRExtProc) 
      (PRESENTATION = RO) 
    ) 
  ) 

Здесь выводится состояние lsnrctl в cmd

STATUS of the LISTENER
------------------------
Alias                     LISTENER
Version                   TNSLSNR for 64-bit Windows: Version 11.2.0.2.0 - Production
Start Date                03-F╔VR.-2020 12:04:38
Uptime                    0 days 4 hr. 53 min. 38 sec
Trace Level               off
Security                  ON: Local OS Authentication
SNMP                      OFF
Default Service           XE
Listener Parameter File   C:\oraclexe\app\oracle\product\11.2.0\server\network\admin\listener.ora
Listener Log File         C:\oraclexe\app\oracle\diag\tnslsnr\DESKTOP-62JIG0N\listener\alert\log.xml
Listening Endpoints Summary...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC1ipc)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=DESKTOP-62JIG0N)(PORT=1521)))
Services Summary...
Service "CLRExtProc" has 1 instance(s).
  Instance "CLRExtProc", status UNKNOWN, has 1 handler(s) for this service...
Service "PLSExtProc" has 1 instance(s).
  Instance "PLSExtProc", status UNKNOWN, has 1 handler(s) for this service...

Вот файл listener.ora

SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = PLSExtProc)
      (ORACLE_HOME = C:\oraclexe\app\oracle\product\11.2.0\server)
      (PROGRAM = extproc)
    )
    (SID_DESC =
      (SID_NAME = CLRExtProc)
      (ORACLE_HOME = C:\oraclexe\app\oracle\product\11.2.0\server)
      (PROGRAM = extproc)
    )
  )

LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
      (ADDRESS = (PROTOCOL = TCP)(HOST = DESKTOP-62JIG0N)(PORT = 1521))
    )
  )

DEFAULT_SERVICE_LISTENER = (XE)

1 Ответ

0 голосов
/ 03 февраля 2020

Какой тип подключения у вас SQL Свойства подключения Dev? (basi c? TNS?) Между сообщением об ошибке существует несоответствие ("NS: слушатель в настоящее время не знает SID "), в то время как ваши tnsnames говорят, что нужно соединиться по имени службы, а не по SID. Это будет означать, что ваш тип соединения SQL Dev - 'basi c'. , , который вообще не использует tnsnames.ora. Поскольку вы используете соединение 'basi c', вам необходимо показать нам используемые значения. Кроме того, поскольку слушатель жалуется, что он не знает о sid, который вы запрашиваете, вы должны показать нам вывод команды 'lsnrctl status', чтобы мы могли видеть, что слушатель делает * 1004. * знать о.

Это действительно довольно сложная c проблема, поэтому тот факт, что ваш инструктор не знает, как ее решить, оставляет у меня много вопросов о его квалификации, чтобы преподавать что-нибудь с участием oracle.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...