檢視單個SQL消耗TEMP表空間以及TEMP表空間使用率
檢視TEMP表空間使用率
--11G下:
select tablespace_name,round(free_space/1024/1024/1024,2) "free(GB)",round(tablespace_size/1024/1024/1024,2) "total(GB)",round(nvl(free_space,0)*100/tablespace_size,3) "Free percent"
from dba_temp_free_space;
--10G下:
SELECT temp_used.tablespace_name,total - used as "Free",total as "Total",round(nvl(total - used, 0) * 100 / total, 3) "Free percent"
FROM
(SELECT tablespace_name, SUM(bytes_used)/1024/1024 used
FROM GV$TEMP_SPACE_HEADER
GROUP BY tablespace_name) temp_used,
(SELECT tablespace_name, SUM(bytes)/1024/1024 total
FROM dba_temp_files
GROUP BY tablespace_name) temp_total
WHERE temp_used.tablespace_name = temp_total.tablespace_name;
檢視單個SESSION消耗的TEMP表空間
SELECT S.sid,
SUM (T.blocks) * TBS.block_size / 1024 / 1024 mb_used,
S.serial# sid_serial,
s.INST_ID,
S.username,
S.osuser,
P.spid,
S.module,
P.program,
T.tablespace,
q.sql_text,
nvl(S.sql_id,S.PREV_SQL_ID) sql_id
--COUNT (*) statements
FROM gv$sort_usage T,
gv$session S,
dba_tablespaces TBS,
gv$process P,
gv$sql q
WHERE T.session_addr = S.saddr
AND t.INST_ID = S.INST_ID
AND S.paddr = P.addr
AND S.INST_ID = P.INST_ID
AND nvl(S.sql_id,S.PREV_SQL_ID)=q.sql_id
AND T.tablespace = TBS.tablespace_name
and s.sid='111'
GROUP BY S.sid,
S.serial#,
s.INST_ID,
S.username,
S.osuser,
P.spid,
S.module,
P.program,
TBS.block_size,
T.tablespace,
q.sql_text,
nvl(S.sql_id,S.PREV_SQL_ID)
order by 2 desc
--11G下:
select tablespace_name,round(free_space/1024/1024/1024,2) "free(GB)",round(tablespace_size/1024/1024/1024,2) "total(GB)",round(nvl(free_space,0)*100/tablespace_size,3) "Free percent"
from dba_temp_free_space;
--10G下:
SELECT temp_used.tablespace_name,total - used as "Free",total as "Total",round(nvl(total - used, 0) * 100 / total, 3) "Free percent"
FROM
(SELECT tablespace_name, SUM(bytes_used)/1024/1024 used
FROM GV$TEMP_SPACE_HEADER
GROUP BY tablespace_name) temp_used,
(SELECT tablespace_name, SUM(bytes)/1024/1024 total
FROM dba_temp_files
GROUP BY tablespace_name) temp_total
WHERE temp_used.tablespace_name = temp_total.tablespace_name;
檢視單個SESSION消耗的TEMP表空間
SELECT S.sid,
SUM (T.blocks) * TBS.block_size / 1024 / 1024 mb_used,
S.serial# sid_serial,
s.INST_ID,
S.username,
S.osuser,
P.spid,
S.module,
P.program,
T.tablespace,
q.sql_text,
nvl(S.sql_id,S.PREV_SQL_ID) sql_id
--COUNT (*) statements
FROM gv$sort_usage T,
gv$session S,
dba_tablespaces TBS,
gv$process P,
gv$sql q
WHERE T.session_addr = S.saddr
AND t.INST_ID = S.INST_ID
AND S.paddr = P.addr
AND S.INST_ID = P.INST_ID
AND nvl(S.sql_id,S.PREV_SQL_ID)=q.sql_id
AND T.tablespace = TBS.tablespace_name
and s.sid='111'
GROUP BY S.sid,
S.serial#,
s.INST_ID,
S.username,
S.osuser,
P.spid,
S.module,
P.program,
TBS.block_size,
T.tablespace,
q.sql_text,
nvl(S.sql_id,S.PREV_SQL_ID)
order by 2 desc
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/26084062/viewspace-1456043/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- oracle temp 表空間Oracle
- TEMP表空間不足解決 - temp group
- Oracle Temp 表空間切換Oracle
- Oracle Temp 臨時表空間Oracle
- Oracle TEMP臨時表空間概念Oracle
- Oracle的temp表空間被佔滿Oracle
- Oracle Temp臨時表空間處理Oracle
- Oracle基礎 02 臨時表空間 tempOracle
- 處理TEMP表空間滿的問題
- 如何捕捉temp表空間出錯的session資訊和SQLSessionSQL
- 聊聊Data Guard環境下Temp表空間和Temp檔案管理
- 有關temp表空間的一點總結!
- TEMP表空間報ORA-1652的處理
- OS 刪除temp表空間 而磁碟空間未釋放的解決方案
- 查詢表空間已使用空間和空閒空間的簡單檢視
- temp檔案空間的分配
- oracle表空間檢視Oracle
- 【TEMP】臨時表空間的工作原理及維護方法
- Oracle 查詢表大小以及表空間使用率Oracle
- oracle 表空間,臨時表空間使用率查詢Oracle
- sql檢視所有表空間使用情況SQL
- Oracle RMAN備份為什麼會大量使用temp表空間?Oracle
- 怎麼檢視oracle表空間,剩餘大小,表空間利用Oracle
- 表空間sqlSQL
- 【Oracle九大效能檢視】之8.v$sort_usage temp表空間的使用情況Oracle
- 搬運工:temp表空間被過多佔用處理方法
- 檢視SQL SERVER表的空間使用情況SQLServer
- 臨時表空間和回滾表空間使用率查詢
- 檢視資料庫表空間資料庫
- ORA-01652:無法通過128(在表空間TEMP中)擴充套件temp段套件
- ORA-01652 無法透過128 (在表空間 TEMP中)擴充套件temp段套件
- db2檢視錶空間和增加表空間容量DB2
- 12C關於CDB、PDB 臨時temp表空間的總結
- TEMP表空間的檔案丟失或損壞後的恢復
- Oracle 11g中Temp臨時表空間、檔案的新特性Oracle
- Oracle檢視錶空間使用率SQL指令碼OracleSQL指令碼
- 檢視SQL SERVER表的空間使用情況(續)SQLServer
- [轉]ORA-01652 無法通過128 (在表空間 TEMP中)擴充套件temp段套件