powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Oracle [игнор отключен] [закрыт для гостей] / ORA-12514: TNS:listener does not currently know of service requested in connect descriptor
11 сообщений из 11, страница 1 из 1
ORA-12514: TNS:listener does not currently know of service requested in connect descriptor
    #39616234
cahekxxi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Доброго времени суток.
Столкнулся с проблемой написанной в теме форума. Вылезает при подключении к бд.
Небольшое предисловие.
Вот инструкция которой я следовал
Включение и отключение архивирования логических логов в Oracle
Мне нужно было включить их.
И вот я дошёл до команды SQL> SHUTDOWN IMMEDIATE; у меня начались эти проблемы.
Подключение
# sqlplus <login>/<password>@//<host>:<port>/<SID> AS SYSDBA

SQL*Plus: Release 12.2.0.1.0 Production on Sat Mar 17 14:00:20 2018

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

ERROR:
ORA-12514: TNS:listener does not currently know of service requested in connect
descriptor


Enter user-name:

Вот содержимое Файлов:
tnsnames.ora
# tnsnames.ora Network Configuration File: /oracle/app/oracle/product/12.2.0/dbhome_1/network/admin/tnsnames.ora
# Generated by Oracle configuration tools.

ODS =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = <host>)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = ODS)

)
)

LISTENER_ODS =
(ADDRESS = (PROTOCOL = TCP)(HOST = <host>)(PORT = 1521))

listener.ora
# listener.ora Network Configuration File: /oracle/app/oracle/product/12.2.0/dbhome_1/network/admin/listener.ora
# Generated by Oracle configuration tools.

LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = <host>)(PORT = 1521))
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
)
)
[/spoiler startup]

Должен был помочь startup, но он тоже выдаёт ошибку
[spoiler]# sqlplus /nolog

SQL*Plus: Release 12.2.0.1.0 Production on Sat Mar 17 14:40:40 2018

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

SQL> startup
SP2-0640: Not connected
SQL>

Файлы настроены правильно, я проверил на соответствие с файлами на рабочих серверах.
Буду признателен за любую помощь, заранее спасибо.
...
Рейтинг: 0 / 0
ORA-12514: TNS:listener does not currently know of service requested in connect descriptor
    #39616240
dmdmdm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
HOST = <host>

Поменьше отсебятины, побольше copy/paste. Непонятно, где вы насекретничали, а где ошибка.

перед sqlplus /nolog

Код: powershell
1.
set ORACLE_SID=ODS



и статическая регистрация в listener.ora

Код: powershell
1.
2.
3.
4.
5.
6.
7.
8.
SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (GLOBAL_DBNAME = ODS)
      (ORACLE_HOME = /oracle/app/oracle/product/12.2.0/dbhome_1/)
      (SID_NAME = ODS)
    )
  )
...
Рейтинг: 0 / 0
ORA-12514: TNS:listener does not currently know of service requested in connect descriptor
    #39616241
dmdmdm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
в линухе

Код: powershell
1.
export ORACLE_SID=ODS
...
Рейтинг: 0 / 0
ORA-12514: TNS:listener does not currently know of service requested in connect descriptor
    #39616245
всё тлен
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Нет никакой проблемы.

Ты базу остановил и, естественно, по сети к ней больше подключиться нельзя.

Можно сделать муторную и бессмысленную работу по статической регистрации, но правильный вариант - переключиться в пользователя oracle командой su, проверить что выставлено окружение (echo $ORACLE_HOME/$ORACLE_SID), запустить sqlplus / as sysdba и в нём написать startup.

cahekxxiДолжен был помочь startup, но он тоже выдаёт ошибку
# sqlplus /nolog
SQL*Plus: Release 12.2.0.1.0 Production on Sat Mar 17 14:40:40 2018
Copyright (c) 1982, 2016, Oracle. All rights reserved.
SQL> startup
SP2-0640: Not connected
SQL>

Потому что startup надо делать от пользователя oracle, а не root.

И инструкцией надо пользоватся цифилизованной, тебе белые (и индийские) люди написали руководство администратора: https://docs.oracle.com/en/database/oracle/oracle-database/12.2/admin/managing-archived-redo-log-files.html#GUID-C12EA833-4717-430A-8919-5AEA747087B9
...
Рейтинг: 0 / 0
ORA-12514: TNS:listener does not currently know of service requested in connect descriptor
    #39616271
Фотография Viewer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
всё тлен Можно сделать муторную и бессмысленную работу по статической регистрации , но правильный вариант - переключиться в пользователя oracle командой su, проверить что выставлено окружение (echo $ORACLE_HOME/$ORACLE_SID), запустить sqlplus / as sysdba и в нём написать startup.
2 нетленный
Бил тапком по лбу в тщетной надежде, но так и не понял, каким образом правильный ответ связан с первой частью - психосоматическая травма?
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
ORA-12514: TNS:listener does not currently know of service requested in connect descriptor
    #39787765
nekish
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
При попытке подключиться из SQLDeveloper к testDB1 происходит ошибка Status : Failure -Test failed: Listener refused the connection with the following error:
ORA-12514, TNS:listener does not currently know of service requested in connect descriptor

Файл tnames.ora
# tnsnames.ora Network Configuration File: c:\app\Oracle\product\12.2.0\dbhome_1\network\admin\tnsnames.ora
# Generated by Oracle configuration tools.

LISTENER_ORCL =
(ADDRESS = (PROTOCOL = TCP)(HOST = win16.localdomain)(PORT = 1521))


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

ORCL =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = win16.localdomain)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl.localdomain)
)
)

TESTDB1 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = win16.localdomain)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl.localdomain)
)
)


Файл listener.ora
# listener.ora Network Configuration File: c:\app\Oracle\product\12.2.0\dbhome_1\network\admin\listener.ora
# Generated by Oracle configuration tools.

NIK =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = win16.localdomain)(PORT = 1521))
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
)
)

SID_LIST_NIK =
(SID_LIST =
(SID_DESC =
(SID_NAME = CLRExtProc)
(ORACLE_HOME = c:\app\Oracle\product\12.2.0\dbhome_1)
(PROGRAM = extproc)
(ENVS = "EXTPROC_DLLS=ONLY:c:\app\Oracle\product\12.2.0\dbhome_1\bin\oraclr12.dll")
)
)


SID_LIST_TESTDB1 =
(SID_LIST =
(SID_DESC =
(SID_NAME = CLRExtProc)
(ORACLE_HOME = c:\app\Oracle\product\12.2.0\dbhome_1)
(PROGRAM = extproc)
(ENVS = "EXTPROC_DLLS=ONLY:c:\app\Oracle\product\12.2.0\dbhome_1\bin\oraclr12.dll")
)
)


что я неправильно сделал?
...
Рейтинг: 0 / 0
ORA-12514: TNS:listener does not currently know of service requested in connect descriptor
    #39787835
tru55
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторSID_LIST_TESTDB1
Как ты думаешь, что здесь означает TESTDB1 ?
...
Рейтинг: 0 / 0
ORA-12514: TNS:listener does not currently know of service requested in connect descriptor
    #39788014
Фотография andrey_anonymous
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Выполняем lsnrctl services
Ищем orcl.localdomain
...
Рейтинг: 0 / 0
ORA-12514: TNS:listener does not currently know of service requested in connect descriptor
    #39788028
Фотография -2-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
andrey_anonymousВыполняем lsnrctl services
Ищем orcl.localdomainНе факт, что приведенный listener.ora используется каким-либо листенером.
Но факт, что в файле к дефолтному порту привязан недефолтный листенер.
...
Рейтинг: 0 / 0
ORA-12514: TNS:listener does not currently know of service requested in connect descriptor
    #39788050
Фотография Vadim Lejnin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nekish,

1. проверить Какое имя listener: (По умолчанию LISTENER)

Искать в services по маске имени:
Код: plsql
1.
Oracle<Oracle Home name>TNS<Listener Name>



В listener.ora
У Вас определены listener с именами NIK и TESTDB1:

Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
NIK =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = win16.localdomain)(PORT = 1521))
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
)
)

SID_LIST_NIK =
(SID_LIST =
(SID_DESC =
(SID_NAME = CLRExtProc)
(ORACLE_HOME = c:\app\Oracle\product\12.2.0\dbhome_1)
(PROGRAM = extproc)
(ENVS = "EXTPROC_DLLS=ONLY:c:\app\Oracle\product\12.2.0\dbhome_1\bin\oraclr12.dll")
)
)


SID_LIST_TESTDB1 =
(SID_LIST =
(SID_DESC =
(SID_NAME = CLRExtProc)
(ORACLE_HOME = c:\app\Oracle\product\12.2.0\dbhome_1)
(PROGRAM = extproc)
(ENVS = "EXTPROC_DLLS=ONLY:c:\app\Oracle\product\12.2.0\dbhome_1\bin\oraclr12.dll")
)
)




попробуйте команды (имена серверов tns):
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
## nik
lsnrctl status nik

## testdb1
lsnrctl status testdb1

## имя по умолчанию - LISTENER
lsnrctl status 




искать
Код: plsql
1.
Services Summary...


запомните какие службы у Вас зарегистрированы
Именно эти службы и нужно использовать как service_name для подключения

CLRExtProc - это служебная статическая запись, для Вас пока не нужна



p.s.
Oracle SQL Developer
в общем случае не использует tnsnames.ora

Нужно пользоваться (простая форма, есть более сложные, но они Вам пока ни к чему):

Код: plsql
1.
hostname:port/service_name



Последовательно проверьте что у вас нет firewall на пути:

с компа клиента:
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
::: проверка то что hostname существует и живой
ping win16.localdomain

::: попытка подключится не используя tnsnames 
::: вместо testdb и orcl лучше использовать полученные при lsnrctl status значения
sqlplus user/pass@"(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=win16.localdomain)(PORT=1521))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=testdb1)))"

sqlplus user/pass@"(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=win16.localdomain)(PORT=1521))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=testdb1.localdomain)))"

sqlplus user/pass@"(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=win16.localdomain)(PORT=1521))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=orcl.localdomain)))"
...
Рейтинг: 0 / 0
ORA-12514: TNS:listener does not currently know of service requested in connect descriptor
    #39789493
Javl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Vadim Lejninnekish,

1. проверить Какое имя listener: (По умолчанию LISTENER)

Искать в services по маске имени:
Код: plsql
1.
Oracle<Oracle Home name>TNS<Listener Name>



В listener.ora
У Вас определены listener с именами NIK и TESTDB1:

Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
NIK =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = win16.localdomain)(PORT = 1521))
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
)
)

SID_LIST_NIK =
(SID_LIST =
(SID_DESC =
(SID_NAME = CLRExtProc)
(ORACLE_HOME = c:\app\Oracle\product\12.2.0\dbhome_1)
(PROGRAM = extproc)
(ENVS = "EXTPROC_DLLS=ONLY:c:\app\Oracle\product\12.2.0\dbhome_1\bin\oraclr12.dll")
)
)


SID_LIST_TESTDB1 =
(SID_LIST =
(SID_DESC =
(SID_NAME = CLRExtProc)
(ORACLE_HOME = c:\app\Oracle\product\12.2.0\dbhome_1)
(PROGRAM = extproc)
(ENVS = "EXTPROC_DLLS=ONLY:c:\app\Oracle\product\12.2.0\dbhome_1\bin\oraclr12.dll")
)
)




попробуйте команды (имена серверов tns):
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
## nik
lsnrctl status nik

## testdb1
lsnrctl status testdb1

## имя по умолчанию - LISTENER
lsnrctl status 




искать
Код: plsql
1.
Services Summary...


запомните какие службы у Вас зарегистрированы
Именно эти службы и нужно использовать как service_name для подключения

CLRExtProc - это служебная статическая запись, для Вас пока не нужна



p.s.
Oracle SQL Developer
в общем случае не использует tnsnames.ora

Нужно пользоваться (простая форма, есть более сложные, но они Вам пока ни к чему):

Код: plsql
1.
hostname:port/service_name



Последовательно проверьте что у вас нет firewall на пути:

с компа клиента:
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
::: проверка то что hostname существует и живой
ping win16.localdomain

::: попытка подключится не используя tnsnames 
::: вместо testdb и orcl лучше использовать полученные при lsnrctl status значения
sqlplus user/pass@"(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=win16.localdomain)(PORT=1521))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=testdb1)))"

sqlplus user/pass@"(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=win16.localdomain)(PORT=1521))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=testdb1.localdomain)))"

sqlplus user/pass@"(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=win16.localdomain)(PORT=1521))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=orcl.localdomain)))"



Можно же еще проще написать sqlplus sys@testdb1 as sysdba
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / ORA-12514: TNS:listener does not currently know of service requested in connect descriptor
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]