Oracle 查詢佔用臨時表空間大的歷史會話和SQL
alter 日誌中報 ORA-1652: unable to extend temp segment by 128 in tablespace TEMP。
可透過下面方式定為到歷史sql:
--佔用臨時表空大的歷史會話和sql查詢:
select to_char(a.sample_time, 'yyyy-mm-dd hh24'),
a.session_id,
u.username,
a.sql_id
from gv$active_session_history a, dba_users u
where u.user_id = a.user_id
and to_char(a.sample_time, 'yyyy-mm-dd hh24:mi:ss') >
'2021-05-25 20:30:00'
and to_char(a.sample_time, 'yyyy-mm-dd hh24:mi:ss') <
'2021-05-25 20:40:59'
and a.temp_space_allocated > 10000000
and sql_id is not null
group by to_char(a.sample_time, 'yyyy-mm-dd hh24'),
a.session_id,
u.username,
a.sql_id
order by a.sql_id, a.session_id desc;
或
select to_char(a.sample_time, 'yyyy-mm-dd hh24'),
a.session_id,
u.username,
a.sql_id
from dba_hist_active_sess_history a, dba_users u
where u.user_id = a.user_id
and to_char(a.sample_time, 'yyyy-mm-dd hh24:mi:ss') >
'2020-07-09 11:00:00'
and to_char(a.sample_time, 'yyyy-mm-dd hh24:mi:ss') <
'2020-07-09 11:10:00'
and a.temp_space_allocated > 1000000000
and sql_id is not null
group by to_char(a.sample_time, 'yyyy-mm-dd hh24'),
a.session_id,
u.username,
a.sql_id
order by a.sql_id, a.session_id desc;
--檢視sql佔用臨時表空間最大值:
select max(a.temp_space_allocated / 1024 / 1024 / 1024) g
from gv$active_session_history a
where a.sql_id = '6uk7dr0n12f9n';
--查詢當前佔用臨時表空間高的SQL
select se.username,
se.sid,
su.extents,
su.blocks * to_number(rtrim(p.value)) / 1024 / 1024 as used_G,
tablespace,
segtype,
s.sql_id,
s.sql_text
from v$sort_usage su, v$parameter p, v$session se, v$sql s
where p.name = 'db_block_size'
AND su.session_addr = se.saddr
AND s.hash_value = su.sqlhash
AND s.address = su.sqladdr
and su.blocks > 1000
order by su.blocks desc;
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/21374452/viewspace-2896546/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 臨時表空間被佔滿的原因查詢
- [oracle] 查詢歷史會話、歷史執行計劃Oracle會話
- oracle11g 查詢臨時表空間的使用率和正在使用臨時表空間的使用者Oracle
- 臨時表空間和回滾表空間使用率查詢
- oracle 臨時表空間的增刪改查Oracle
- 檢視oracle臨時表空間佔用率的檢視Oracle
- Oracle 12C RMAN備份佔用大量臨時表空間Oracle
- MYSQL造資料佔用臨時表空間MySql
- 查詢過去一段時間內某條sql使用的臨時表空間大小SQL
- oracle建立臨時表空間和資料表空間以及刪除Oracle
- oracle臨時表空間相關Oracle
- Oracle臨時表空間檢視、新增臨時表空間資料檔案、修改預設臨時表空間 方法!Oracle
- oracle表空間使用率查詢Oracle
- HANA資料庫查詢大表佔用記憶體空間 for hana 2.0資料庫記憶體
- Oracle查詢表空間的每日增長量Oracle
- mysql臨時表,臨時表空間,ibtmp1表空間暴增原因初探MySql
- 關於oracle的空間查詢Oracle
- Oracle阻塞會話查詢Oracle會話
- SQL Server 查詢歷史執行的SQL語句SQLServer
- [20220421]完善查詢表分析的歷史th.sql指令碼.txtSQL指令碼
- oracle查詢sql執行耗時、執行時間、sql_idOracleSQL
- 查詢SQL Server的歷史執行記錄SQLServer
- oracle建立使用者,表空間,臨時表空間,分配許可權步驟詳解Oracle
- 4.2.1.8規劃臨時表空間
- 刪除臨時表空間組
- MySQL InnoDB臨時表空間配置MySql
- oracle sql 表空間利用率OracleSQL
- oracle 剩餘表空間查詢慢,解決辦法Oracle
- 消除臨時表空間暴漲的方法
- 查詢表空間使用情況
- 表空間使用量查詢
- 2.5.7 建立預設臨時表空間
- MySQL 5.7 新特性 共享臨時表空間及臨時表改進MySql
- 記一次Linux伺服器磁碟空間佔用,大檔案查詢Linux伺服器
- Oracle審計--AUD$佔用空間較大處理方案Oracle
- CentOS 系統的磁碟空間佔用情況查詢CentOS
- AWR佔用sysaux表空間太大UX
- SQLServer如何釋放tempdb臨時表空間SQLServer