- Este tópico contém 7 respostas, 5 vozes e foi atualizado pela última vez 13 anos, 3 meses atrás por jspaulonci.
-
AutorPosts
-
19 de outubro de 2011 às 7:26 pm #101317DBA_LUCASParticipante
Caros amigos , estou precisando mais uma vez da ajuda de vocês. Tenho um servidor onde acontece varios acessos a varios schemas . Ocasionando varias sessoes ao mesmo tempo . É um servidor para teste de softwares , porém estou ficando com muitas sessões no servidor inativas,as vezes fica 5 sessoes da mesma pessoa inativa e 1 ativa , preciso saber qual o custo disso ? um jeito para matar essas sessoes ?
19 de outubro de 2011 às 7:40 pm #101318leandrolbsParticipantesessão inativa significa que o usuário não está dando manutenção, ou executando nada…. porem se vc matar esta sessão terá erros quando usuário for utilizar aquele aplicativo aberto;
O custo de sessões inativas não é significativo, custa mesmo é de parametros como processes..etc
Taduzindo, não iria pelo caminho de sessions inativas.19 de outubro de 2011 às 8:43 pm #101319DBA_LUCASParticipanteDigo porque li uma vez sobre reciclar a sessao torando-as SNIPED , pois mesmo depois que os usuario saem do sistema as sessoes ficam la e são essas que eu queria eliminar …
19 de outubro de 2011 às 9:03 pm #101320vieriParticipantePROMPT ======================================================================
PROMPT ======================================================================
PROMPT Consumo de memoria por usuários
PROMPT ======================================================================SET LINESIZE 200
COLUMN username FORMAT A20
COLUMN module FORMAT A20
COLUMN osuser FORMAT A10SELECT a.osuser,a.status,a.inst_id,
NVL(a.username,'(oracle)’) AS username,
a.module,
a.program,
trunc(b.value/1024) AS memory_kb
FROM gv$session a,
gv$sesstat b,
gv$statname c
WHERE a.sid = b.sid
AND a.inst_id = b.inst_id
AND b.statistic# = c.statistic#
AND b.inst_id = c.inst_id
AND c.name = ‘session pga memory’
AND a.program IS NOT NULL
— incluir filtroAND a.osuser in(‘gchaves’,’mdamasceno’)
ORDER BY b.value DESC;O proprio banco coloca em sniped, até aonde eu sei não existe um comando que faz isso!! Com a query acima vc pode acompanhar oque cada sessão consome de memoria.. esse é o custo de sessões inativas dentor do seu cenário. Mas isso ai é normal em qq ambiente.. o problema é qdo temos excessos.
19 de outubro de 2011 às 11:51 pm #101322DBA_LUCASParticipanteUso de profiles no Oracle — Limite de Tempo inativo da Sessão
Posted by: admin In: AdministraçãoUsando profiles para eliminar sessões que ficam inativas por um longo tempo
consumindo recursos do servidor Oracle.1). Altere o parâmetro de inicialização RESOURCE_LIMIT para TRUE, vem default FALSE
ALTER SYSTEM SET RESOURCE_LIMIT=TRUE SCOPE=BOTH;
2). Crie um profile com um nome desejado por você
Create profile Meu_profile
limit idle_time 1 — Tempo em Minutos (1 minuto)
;3). Crie um usuário ou associe um pré-existente
create user teste identified by teste
profile meu_profile;grant create session to teste;
- Conecte-se ao Oracle com este usuário
Connect teste/teste@ORCL
SELECT SYSDATE FROM DUAL
SYSDATE
——————–
09-MAR-2009 10:39:43/
SELECT SYSDATE FROM DUAL
*
ERRO na linha 1:
ORA-02396: tempo inativo máximo excedido; conecte-se novamente5). Verifique o que ocorreu na sessão do usuário Teste com outro usuário (SYSTEM)
SQL> select username,status
2 from v$session
3* where username is not nullUSERNAME STATUS
—————————— ——–
TESTE SNIPED
SYSMAN ACTIVE
SYSMAN INACTIVE
SYSMAN INACTIVE
SYSMAN INACTIVE
DBSNMP ACTIVE
SYSMAN INACTIVE
DBSNMP INACTIVE
SYSTEM ACTIVE9 linhas selecionadas.
Neste ponto sua sessão inativa foi morta pelo Oracle. Também podemos controlar diversos outros recursos de CPU e senha como mostrado abaixo:
20 de outubro de 2011 às 12:06 am #101323rmanParticipante@DBA_LUCAS
Creio que se você implementar isso, só vai gerar descontentamento dos usuários finais, e nem vai ter um ganho de performance notável.
20 de outubro de 2011 às 2:31 pm #101326leandrolbsParticipantecomo lhe disse, sessão inativa não consome processo de hardware, apenas limita os parameters do banco….
@Rman, concordo com vc, pois finalizar um programa inativo, não é sempre viavel, pois dependendo da forma que aplicação foi desenvolvida, o usuario tera que fechar e abrir toda a aplicação novamente;
20 de outubro de 2011 às 6:42 pm #101331jspaulonciParticipanteAcredito que a colocação do Vieri é boa, criação de profile para matar as sessões inativas acho pesado.
Penso que a solução é encontrar o meio termo, excesso de sessões ativas pode ser problema. -
AutorPosts
- Você deve fazer login para responder a este tópico.