Центр Диагностики & База Системных Ошибок

Решения для Windows Server, Active Directory, 1С, СУБД, Linux, Cisco, MikroTik и IP-телефонии.

⚠️ Важная информация Все материалы, инструкции, команды и скрипты предоставлены исключительно в ознакомительных целях. Их применение может повлиять на работу операционной системы, баз данных и сетевого оборудования. Перед выполнением действий обязательно создайте резервную копию. При отсутствии необходимой квалификации обратитесь к ИТ-специалистам.

Ошибка ORA-12541: TNS:no listener — запуск и диагностика слушателя Oracle

Обновлено: 26.08.2026  ·  Официальная база знаний
  • Клиенты не могут подключиться к БД: ORA-12541: TNS:no listener.
  • Служба Oracle Listener остановлена или аварийно завершилась.
  • Сервер возвращает сброс соединения TCP Reset на порт 1521.

1. Проверка статуса и запуск Listener

# Проверка статуса
lsnrctl status

# Запуск слушателя
lsnrctl start

2. Проверка корректности IP-адреса и имени хоста в listener.ora

Файл $ORACLE_HOME/network/admin/listener.ora:

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

3. Проверка прав и конфликтов портов

# Проверка, не занят ли порт другим процессом
ss -tulpn | grep 1521

4. Автозапуск службы Listener в Systemd (Linux)

Создайте сервис /etc/systemd/system/oracle-listener.service для автоматического подъема слушателя при старте ОС.

Практический опыт инженера: В listener.ora на продакшене указывайте HOST = 0.0.0.0 или реальный FQDN хоста, но избегайте использования localhost / 127.0.0.1, иначе внешние серверы 1С не смогут подключиться к СУБД.

Частые вопросы (FAQ)

Почему Listener падает сразу после запуска (TNS-12560 / TNS-00530)?

Частая причина — некорректное имя хоста в listener.ora, которое не резолвится через /etc/hosts, либо попытка забиндить порт 1521, который уже занят другим процессом.

Как безопасно перезапустить Listener без обрыва текущих активных сессий?

Существующие сессии работают напрямую с выделенными процессами (shadow processes). Выполните lsnrctl reload — это применит изменения без остановки обслуживания.

Может ли переполнение лога listener.log вызвать падение Listener?

Да, если размер listener.log превышает 2–4 ГБ на 32-битных файловых указателях, процесс lsnrctl может зависнуть и перестать принимать новые соединения.

Как очистить или ротировать listener.log на лету?

Выполните: lsnrctl set log_status off, переименуйте файл лога и выполните lsnrctl set log_status on.