SRDC - ORA-1628: Checklist of Evidence to Supply (Doc ID 1682729.1)
SRDC - ORA-1628: Checklist of Evidence to Supply (Doc ID 1682729.1)
Action Plan
1. Execute srdc_db_undo_ora-1628.sql as sysdba and collect the spool output.
--srdc_db_undo_ora-1628.sql
REM srdc_db_undo_ora-1628.sql
REM collect Undo parameters,segment and transaction details for troubleshooting issues ORA-1628 errors.
define SRDCNAME='DB_Undo_ORA-1628'
set pagesize 200 verify off sqlprompt "" term off entmap off echo off
set markup html on spool on
COLUMN SRDCSPOOLNAME NOPRINT NEW_VALUE SRDCSPOOLNAME
select 'SRDC_'||upper('&&SRDCNAME')||'_'||upper(instance_name)||'_'|| to_char(sysdate,'YYYYMMDD_HH24MISS') SRDCSPOOLNAME from v$instance;
spool &&SRDCSPOOLNAME..htm
select 'Diagnostic-Name ' "Diagnostic-Name ", '&&SRDCNAME' "Report Info" from dual
union all
select 'Time ' , to_char(systimestamp, 'YYYY-MM-DD HH24MISS TZHTZM' ) from dual
union all
select 'Machine ' , host_name from v$instance
union all
select 'Version ',version from v$instance
union all
select 'DBName ',name from v$database
union all
select 'Instance ',instance_name from v$instance
/
set echo on
--***********************Undo Parameters**********************
SELECT a.ksppinm "Parameter",
b.ksppstvl "Session Value",
c.ksppstvl "Instance Value"
FROM sys.x$ksppi a, sys.x$ksppcv b, sys.x$ksppsv c
WHERE a.indx = b.indx
AND a.indx = c.indx
AND a.ksppinm in ( '_undo_autotune' , '_smu_debug_mode' ,
'_highthreshold_undoretention' ,
'undo_tablespace' , 'undo_retention' , 'undo_management' )
order by 2
/
--***********************Tuned Undo Retention***********************
select max(maxquerylen),max(tuned_undoretention) from v$undostat
/
select max(maxquerylen),max(tuned_undoretention) from DBA_HIST_UNDOSTAT
/
--***********************Undo Space Usage***********************
select distinct status,tablespace_name, sum(bytes), count(*) from dba_undo_extents group by status, tablespace_name
/
select sum(bytes) from dba_free_space where tablespace_name in (select value from v$parameter where name='undo_tablespace')
/
select tablespace_name,
round(sum(case when status = 'UNEXPIRED' then bytes else 0 end) / 1048675,2) unexp_MB ,
round(sum(case when status = 'EXPIRED' then bytes else 0 end) / 1048576,2) exp_MB ,
round(sum(case when status = 'ACTIVE' then bytes else 0 end) / 1048576,2) act_MB
from dba_undo_extents group by tablespace_name
/
--***********************Extent Size and Total Bytes***********************
SELECT segment_name, bytes "Extent_Size", count(extent_id) "Extent_Count", bytes * count(extent_id) "Extent_Bytes" FROM dba_undo_extents WHERE status = 'ACTIVE' group by segment_name, bytes order by 1, 3 desc
/
--***********************Transaction Details***********************
select a.sid, a.serial#, a.username, b.used_urec, b.used_ublk
from v$session a, v$transaction b
where a.saddr=b.ses_addr
/
set echo off
set sqlprompt "SQL> " term on
set verify on
spool off
set markup html off spool off
set echo on
2. Attach the above evidence to the Service Request at SR creation time.

浙公网安备 33010602011771号