Oracle XE 18C Express Edition Ora-12541: TNS: нет слушателя
Я установил Oracle XE 18C Express Edition на свою Windows 10 и в первый раз успешно подключился к подключаемой базе данных XEPDB1, после чего все мои соблазны подключиться к этой базе данных потерпели неудачу. Я получаю следующее сообщение об ошибке:
Ora-12541 : TNS : No listener.
При проверке панели управления все следующие службы работают: OracleOraDB18Home1MTSRecoveryServiceOracleOraDB18Home1TNSListenerOracleServiceXE только следующая служба не работает: OracleVssWriterXE. Когда я проверил статус слушателя по умолчанию "xe", я получил:
LSNRCTL> status xe
Connexion α (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=****)(PORT=1521)))
TNS-12541: TNS : aucun processus d'Θcoute
TNS-12560: TNS : erreur d'adaptateur de protocole
TNS-00511: Pas de processus d'Θcoute
64-bit Windows Error: 61: Unknown error
Connexion α (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521)))
TNS-12541: TNS : aucun processus d'Θcoute
TNS-12560: TNS : erreur d'adaptateur de protocole
TNS-00511: Pas de processus d'Θcoute
64-bit Windows Error: 2: No such file or directory
Вот содержимое моего listener.ora:
# listener.ora Network Configuration File: C:\app\windows\product\18.0.0\dbhomeXE\NETWORK\ADMIN\listener.ora
# Generated by Oracle configuration tools.
DEFAULT_SERVICE_LISTENER = XE
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = CLRExtProc)
(ORACLE_HOME = C:\app\windows\product\18.0.0\dbhomeXE)
(PROGRAM = extproc)
(ENVS = "EXTPROC_DLLS=ONLY:C:\app\windows\product\18.0.0\dbhomeXE\bin\oraclr18.dll")
)
)
XE =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = ****)(PORT = 1521))
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
)
)
А вот мой tnsnames.ora:
# tnsnames.ora Network Configuration File: C:\app\windows\product\18.0.0\dbhomeXE\NETWORK\ADMIN\tnsnames.ora
# Generated by Oracle configuration tools.
XE =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = ****)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = XE)
)
)
LISTENER_XE =
(ADDRESS = (PROTOCOL = TCP)(HOST = ****)(PORT = 1521))
ORACLR_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
)
(CONNECT_DATA =
(SID = CLRExtProc)
(PRESENTATION = RO)
)
)
1 ответ
Учитывая опубликованный вами файл tnsnames.ora, вам необходимо добавить запись для подключаемой базы данных XEPDB1.
скопируйте существующую запись для XE и вставьте под записью XE.
Измените строку XE = на XEPDB1 = и отредактируйте строку SERVICE_NAME, заменив XE на XEPDB1.
Сохраните изменения, закройте файл, остановите все службы Oracle, перезапустите все службы Oracle, и все должно быть хорошо.