oracle修改一個(gè)字段為默認(rèn)值 oracle11gr2undo表空間使用率高如何查看是什么語(yǔ)句造成的?
oracle11gr2undo表空間使用率高如何查看是什么語(yǔ)句造成的?通過(guò)這個(gè)SQL語(yǔ)句可以查詢到會(huì)話對(duì)應(yīng)的活動(dòng)事務(wù)使用的UNDO段名稱,以及該段占用的UNDO空間大小,對(duì)于非活動(dòng)事務(wù)占用了UNDO空
oracle11gr2undo表空間使用率高如何查看是什么語(yǔ)句造成的?
通過(guò)這個(gè)SQL語(yǔ)句可以查詢到會(huì)話對(duì)應(yīng)的活動(dòng)事務(wù)使用的UNDO段名稱,以及該段占用的UNDO空間大小,對(duì)于非活動(dòng)事務(wù)占用了UNDO空間是由Oracle實(shí)例根據(jù)參數(shù)配置自動(dòng)化管理的。select s.sid,s.serial#,s.sql_id,v.usn,segment_name,r.status, v.rssize/1024/1024 mb From dba_rollback_segs r, v$rollstat v,v$transaction t,v$session s Where r.segment_id = v.usn and v.usn=t.xidusn and t.addr=s.taddr order by segment_name
如何讓Oracle釋放undo表空間?
為了清理這部分的空間,下面通過(guò)如下幾個(gè)步驟完成替換操作。1、創(chuàng)建新的undo表空間undotbs2CREATE UNDO TABLESPACE UNDOTBS2 DATAFILE "/u01/app/oracle/oradata/mydb/undo02.dbf" SIZE 512M REUSEAUTOEXTEND ON NEXT 64M MAXSIZE UNLIMITED RETENTION NOGUARANTEE BLOCKSIZE 8K FLASHBACK ON將紅色部分替換為實(shí)際的oracle數(shù)據(jù)庫(kù)路徑2、切換系統(tǒng)表空間alter system set undo_tablespace=UNDOTBS2 scope=both讓oracle的當(dāng)前undo表空間切換到undotbs2上3、重啟數(shù)據(jù)庫(kù)通過(guò)命令行方式登錄數(shù)據(jù)庫(kù),[root$smserver] sqlplus /nolog [root$smserver]conn / as sysdba [root$smserver] shutdown immediate[root$smserver] startup4、刪除原來(lái)undo內(nèi)容drop tablespace undotbs1 including contents and datafiles5、重復(fù)第三部操作,重啟數(shù)據(jù)庫(kù)