OEM. Не запускается

Используется Oracle 11.20.4

После установки СУБД, при установке и запуске OEM (Oracle Enterprise Manager) возникает ошибка:

Error starting Database Control.Execute the following command(s).
 1) Set the environment variable ORACLE_UNQNAME to Database unique name 
 2) E:\ORACLE\oracle11\product\11.2.0\dbhome_1\bin\emctl.bat start dbconsole
25.04.2023 19:30:32 oracle.sysman.emcp.EMConfig perform
CONFIG: Passing warning to the caller: 
25.04.2023 19:30:32 oracle.sysman.emcp.EMConfig restoreOuiLoc
CONFIG: Restoring oracle.installer.oui_loc to E:\ORACLE\oracle11\product\11.2.0\dbhome_1\oui

Причина ошибки не ясна, поэтому пытаемся запустить вручную:
# emctl start dbconsole

Далее можно получить ответ:
Служба уже запущена
или
Порт уже используется

В этом случае виноват процесс, который был запущен службой, но при ошибке не завершил его. В моем случае это был порт 5520, поэтому выполняем поиск процесса, который использует данный порт с помощью команды:
# netstat -aon

Завершаем процесс и повторяем попытку ручного запуска. В результате получаем ответ:
Starting Oracle Enterprise Manager 11g Database Control ...Служба "OracleDBConsoleORACL11B" запускается...............
Не удалось запустить службу "OracleDBConsoleEGDB1".
Специфическая ошибка службы: 2.
Для вызова дополнительной справки наберите NET HELPMSG 3547.

Выполняем поиск информации в логах OEM - E:\ORACLE\oracle11\product\11.2.0\dbhome_1\srv-bd-...._ORACL11B\sysman\log\emdb.nohup, в котором видим следующее:
----- Wed Apr 26 05:09:25 2023::Mismatch detected between timezone in env (Europe/Moscow) and in E:\ORACLE\oracle11\product\11.2.0\dbhome_1\srv-bd-..._ORACL11B/sysman/config/emd.properties (Europe/Moscow). Forcing value to latter.. -----
----- Wed Apr 26 05:09:25 2023::The agentTZRegion value in E:\ORACLE\oracle11\product\11.2.0\dbhome_1\srv-bd-..._ORACL11B/sysman/config/emd.properties is not in agreement with what agent thinks it should be.Please verify your environment to make sure that TZ setting has not changed since the last start of the agent.
If you modified the timezone setting in the environment, please stop the agent and exectute 'emctl resetTZ agent' and also execute the script mgmt_target.set_agent_tzrgn(<agent_name>, <new_tz_rgn>) to get the value propagated to repository -----

Проблема явно с таймзонами, поэтому проверяем их. В файле emd.properties указано:
agentTZRegion=Europe/Moscow

В БД:
select dbtimezone from dual;
DBTIMEZONE|
----------+
+00:00    |

С учетом того, что сервер находится в часовом поясе +03:00, необходимо выполнить корректировку и привести данные в соответствие. Поэтому были выполнены следующие действия:
  1. Добавить переменную окружения TZ=Etc/GMT-3
  2. В значение параметра из файла emd.properties указать agentTZRegion=+03:00
  3. Изменить значение в СУБД:
    1. ALTER DATABASE SET TIME_ZONE='+03:00';
    2. Выполнить перезапуск интсанса:
      1. SQL> shutdown;
      2. SQL> startup;
  4. Повторить запуск OEM
После выполнения OEM запустился.


Почитать(возможно поможет):
  1. http://vishalorcl.blogspot.com/2012/01/em-daemon-is-not-running-dbconsole.html
  2. https://juniororacledba.wordpress.com/2011/06/13/oracle-the-agenttzregion-value-error/
  3. https://arpitagrawaloracle.blogspot.com/2012/11/oem-agent-agenttzregion-value-not-in.html
  4. https://appsjagan.blogspot.com/2011/04/agenttzregion.html
  5. https://www.rsdn.org/forum/db/4482115.flat


Комментарии

Популярные сообщения из этого блога

TRUNCATE / DELETE / DROP или как очистить таблицу

Linux (РедОС). Сброс пароля

ЭС с ЦБ РФ. РЕКВИЗИТНЫЙ СОСТАВ ЭС

КБК. КВФО - Код вида финансового обеспечения (деятельности)

ТФФ 35.0. Полный перечень документов альбома ТФФ (Таблица 2)