› Fóruns › Banco de dados Oracle › 100% cpu
- Este tópico contém 4 respostas, 5 vozes e foi atualizado pela última vez 16 anos, 1 mês atrás por
hudsona.
-
AutorPosts
-
29 de abril de 2010 às 12:02 am #93791
thiagobhita
ParticipanteBoa tarde!!
Tenho um servidor windows 2003 rodando duas instancias oracle.
Tem um processo oracle consumindo 100% de cpu.
Como posso identificar de qual banco e qual sessão dentro do oracle esta consumindo a cpu?
29 de abril de 2010 às 12:09 am #93792Peterson
ParticipanteEsse é o problema no Windows…
Bom, acredito que você terá que usar um software de terceiro que analisa a ação dos processos.29 de abril de 2010 às 12:29 am #93793invoid
ParticipanteBom, não sou lá essas coca-cola toda em Windows, mas talvez possa ajudar. Eu tentaria usar o process explorer (http://technet.microsoft.com/en-us/sysi … 96653.aspx) e também o perfmon (Monitor de Performance). Se rolar um tempo mais tarde, faço mais algumas pesquisas, mas tenta isso aí que pode te ajudar a descobrir qual é o processo.
As informações de usuário e sessão, aí é v$session na veia. 🙂
Espero ter ajudado.
29 de abril de 2010 às 12:53 am #93794vieri
ParticipanteInicialmente verifique em casa base os processos que estão rodando.
Está todo o tempo em 100% ou apenas em alguns momentos?
SET LINESIZE 500
SET PAGESIZE 1000
SET VERIFY OFFCOLUMN username FORMAT A15
COLUMN machine FORMAT A25
COLUMN logon_time FORMAT A20SELECT NVL(a.username, ‘(oracle)’) AS username,
a.osuser,
a.sid,
a.serial#,
c.value AS &1,
a.lockwait,
a.status,
a.module,
a.machine,
a.program,
TO_CHAR(a.logon_Time,’DD-MON-YYYY HH24:MI:SS’) AS logon_time
FROM v$session a,
v$sesstat c,
v$statname d
WHERE a.sid = c.sid
AND c.statistic# = d.statistic#
AND d.name = DECODE(UPPER(‘&1’), ‘READS’, ‘session logical reads’,
‘EXECS’, ‘execute count’,
‘CPU’, ‘CPU used by this session’,
‘CPU used by this session’)
ORDER BY c.value DESC;SET PAGESIZE 14
29 de abril de 2010 às 3:29 am #93799hudsona
ParticipanteNão tem como ver com o process explorer e nem com nenhum programa do S.O.
No windows o oracle só tem um processo principal, e todos os processos de backuground são threads desse processo principal, diferente do linux onde eles são realmente processos.A Forma de descobrir é ou consultando a prórpria instância com script como o vieri sugeriu ou ainda com o Enterprise manager.
-
AutorPosts
- Você deve fazer login para responder a este tópico.
› Fóruns › Banco de dados Oracle › 100% cpu