undo表空间监控
一般ORA-01555错误的解决方法:
a. 检查undo初始化参数
b. 扩展undo表空间
c. 优化大事务相关SQL
事务UNDO监控:
set linesize 333
col USERNAME format a10
col PROGRAM format a45
col MACHINE format a30
SELECT s.sid, s.username, s.PROGRAM, s.MACHINE, u.name, t.used_ublk * 8192 / 1024 / 1024 || 'M' as USED_UBLK
FROM v$transaction t, v$rollstat r, v$rollname u, v$session s
WHERE s.taddr = t.addr
AND t.xidusn = r.usn
AND r.usn = u.usn
ORDER BY 6 desc;
估算事务回滚时间:
alter session set nls_date_format='dd-mm-yyyy HH24:MI:SS';
select usn,state,undoblockstotal "Total",undoblocksdone "Done",undoblockstotal-undoblocksdone "Todo",
decode(cputime,0,'unknown',sysdate+(((undoblockstotal-undoblocksdone)/(UNDOBLOCKSDONE/cputime))/86400)) "EStime" from v$fast_start_transactions
where state <>'RECOVERED';
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/24996904/viewspace-767827/
,如需转载,请注明出处,否则将追究法律责任。