› Fóruns › Banco de dados Oracle › SGA / TARGET_MEMORY › SGA / TARGET_MEMORY
Eric Bom dia!,
1º comando é o:
top -c -u oracle
2º
vmstat
Não vi problema com o seus parametros, somente se certifique que os processos que logam no banco não usem o “alter session set hash_area_size=xxxxxxxx” pois esse parametro cria uma alocação de memória por sessão.
Verifique o seu alert.log e post as ultimas linhas (poste retorno)
tail -100f alert_ORACLE_SID.log
Execute também este comando (poste retorno):
SELECT *
FROM v$memory_target_advice
ORDER BY memory_size;
E a verificação se está causando algum wait event por sessão:
Rode 3 vezes (poste retorno)
set linesize 9999
col event for a30
col sid for 9999
col serial for 99999
col spid for a5
col program for a31
col username for a10
col machine for a30
col sw for 99999
col osuser for a15
col kill for a4
col p1text for a12
COLUMN sql_exec_start FORMAT a19 HEADING 'Inic. Exec. Sql'
SET TERMOUT OFF;
COLUMN current_instance NEW_VALUE current_instance NOPRINT;
SELECT rpad(instance_name, 17) current_instance FROM v$instance;
ALTER SESSION SET NLS_DATE_FORMAT='DD/MM/YYYY HH24:MI:SS';
SET TERMOUT ON;
SELECT '@k ' as kill,
W.SID,
S.SERIAL# as serial,
P.SPID,
S.USERNAME,
S.OSUSER,
W.EVENT,
W.SECONDS_IN_WAIT as sw,
s.sql_id,
w.p1,
w.p1text,
s.sql_exec_start sql_exec_start,
S.PROGRAM,
REPLACE(REPLACE(S.MACHINE, 'BR-LIHI', ''), 'BR-LIHI-', '') AS MACHINE
FROM V$SESSION_WAIT W, V$SESSION S, V$PROCESS P
WHERE W.SID = S.SID
AND S.PADDR = P.ADDR
AND W.WAIT_CLASS != 'Idle'
ORDER BY W.SECONDS_IN_WAIT, W.SID
/
Att,
Diego Monteiro