0

Я хотел бы задать вопрос:неактивные сессии в Oracle

Это моя среда:

  • Solaris версии 10; Sun OS Version 5.10
  • Версия Oracle: 11g Enterprise x64 Edition.

Когда я бегу этот вопрос:

select c.owner, c.object_name, c.object_type,b.sid, b.serial#, b.status, b.osuser, b.machine 
    from v$locked_object a , v$session b, dba_objects c 
where b.sid = a.session_id 
    and a.object_id = c.object_id; 

Иногда я получаю много статуса быть 'INACTIVE'.

Что означает это неактивное? Это замедлит работу моего приложения и приложения? Каковы последствия активного и неактивного состояния?

ответ

0

ACTIVE означает, что сеанс в настоящее время выполняет некоторые операции SQL, тогда как INACTIVE означает противоположное. Проверьте ORACLE v$session documentation

По своей природе большое количество сеансов ACTIVE замедлит работу всей СУБД, включая ваше приложение. В какой степени трудно сказать - здесь вы должны смотреть на IO, CPU и т. Д. Нагрузки.

Неактивные сеансы будут иметь небольшое влияние, если вы не превысите максимальный номер сеанса.

0

Простыми словами, статус INACTIVE в v $ session означает, что оператор SQL не выполняется во время проверки v $ session.

С другой стороны, если вы видите много неактивных сеансов, сначала проверьте last activity time на каждый сеанс.

Я подозреваю, что они могут быть частью connection pool, поэтому они могут часто использоваться. Вы не должны беспокоиться об этом, поскольку с точки зрения application connection пул соединений позаботится об этом. Вы можете увидеть такие INACTIVE сеансы довольно долгое время.

0

Это вовсе не означает, что D/B работает медленно.

Статус НЕАКТИВ означает, что сеанс не выполняет какой-либо запрос сейчас. ACTIVE означает, что он выполняет запрос.

Смежные вопросы