DB: Oracle 10g
O / S: Windows Server 2003 de 64 bits
Consulto a lista de sessões do Oracle geradas por aplicativos da web (filtro por programa = w3wp.exe)
select * from V$session
where UPPER(program) LIKE '%W3%'
order by logon_time
De acordo com o Logon_Time, por que as sessões ainda estão ativas de 31/07/2012 ou 01/08/2012 ou qualquer sessão antes de hoje (21/08/2012)?
Eu configurei no sqlnet.ora: SQLNET.EXPIRE_TIME = 20 Portanto, isso significa que a cada 20 minutos o Oracle está verificando se as conexões ainda estão ativas.
Todos os esquemas de usuário têm perfil padrão. Isso significaria que nenhuma sessão nunca expiraria ou morreria?
Adicionado em resposta ao comentário de Phil:
Adicionado em resposta à resposta de Phil:
oracle
oracle-10g
Delmonte
fonte
fonte
v$session.PREV_EXEC_START
essas sessões? Eu suspeito que eles fazem parte de um conjunto de conexões e, portanto, não foram desativados porque estão sendo usados com frequência.INACTIVE
Significa apenas que não há uma instrução SQL sendo executada no momento exato em que você verificav$session
. Se eles fazem parte de um pool de conexões, eles estão fazendo seu trabalho corretamente - o objetivo principal do pool de conexões é remover a necessidade de muitos logons / logoffs e manter sessões persistentes para uma inicialização rápida (login aéreo muito maior novamente e novamente apenas para executar uma consulta). Não entendo por que você está preocupado com isso.Respostas:
Eu suspeito que eles fazem parte de um conjunto de conexões e, portanto, não foram desativados porque estão sendo usados com frequência.
INACTIVE
emv$session
apenas significa que não há uma instrução SQL que está sendo executada no momento exato que você verifiquev$session
.Se eles fazem parte de um conjunto de conexões, eles estão realizando seu trabalho corretamente fazendo logon por longos períodos de tempo. O objetivo principal do pool de conexões é remover a necessidade de muitos logons / logoffs e manter sessões persistentes para a inicialização rápida de consultas - há uma sobrecarga muito maior para executar uma consulta e desconectar sempre.
Para obter o último tempo de atividade para cada sessão:
Eu aconselho a não matar sessões, a menos que você saiba que isso não causará problemas no lado do aplicativo (tentando usar uma sessão que foi encerrada, por exemplo).
Pode ser que você esteja vendo um pool de conexões configurado incorretamente que cria centenas de conexões assim que o aplicativo é iniciado - o pool de conexões pode ser uma ordem de magnitude maior do que precisa. Sugiro entrar em contato com a equipe de suporte a desenvolvedores / aplicativos e ver como o pool de conexões está configurado.
Depois de pesquisar um pouco, o w3wp.exe é o processo do pool de aplicativos do IIS - você quase certamente deseja conversar com os administradores do servidor da Web do IIS para ajudar a chegar à parte inferior da configuração do pool de conexões.
fonte