1. 主機cpu和內(nèi)存負載都不高
2. 檢查mmon進程運行狀態(tài)正常
3. 檢查snapshot保留時間和快照間隔設(shè)置正常,發(fā)現(xiàn)DBA_HIST_ACTIVE_SESS_HISTOR有數(shù)據(jù),但是沒有生成snapshot保留時間和快照間隔:
DBA_HIST_ACTIVE_SESS_HISTOR數(shù)據(jù):
4. 檢查數(shù)據(jù)庫日志,發(fā)現(xiàn)以下錯誤
節(jié)點1 flush AWR相關(guān)數(shù)據(jù),有個wait event: enq: WF – contention,節(jié)點2有個wait event: not in wait,通過SessId,Ser# 可以查詢到執(zhí)行的問題sql和執(zhí)行計劃:
▼▼▼
SQL_ID 82h7w3w07k63z, child number 0
-------------------------------------
insert into wrh$_sql_bind_metadata (snap_id, dbid, sql_id, name,
position, dup_position, datatype, datatype_string, character_sid,
precision, scale, max_length) SELECT /*+ ordered use_nl(bnd) index(bnd
sql_id) */ :lah_snap_id, :dbid, bnd.sql_id, name, position,
dup_position, datatype, datatype_string, character_sid,
precision, scale, max_length FROM x$kewrattrnew new,
x$kewrsqlidtab tab, v$sql_bind_capture bnd WHERE
new.str1_kewrattr = tab.sqlid_kewrsie AND tab.sqlid_kewrsie
= bnd.sql_id AND tab.childaddr_kewrsie = bnd.child_address
Plan hash value: 4222011306
-----------------------------------------------------------------------------------
| Id | Operation | Name | Rows | Bytes | Cost (%CPU)|
-----------------------------------------------------------------------------------
| 0 | INSERT STATEMENT | | | | 1 (100)|
| 1 | LOAD TABLE CONVENTIONAL | | | | |
| 2 | NESTED LOOPS | | 1 | 217 | 0 (0)|
|*3 | HASH JOIN | | 1 | 48 | 0 (0)|
| 4 | FIXED TABLE FULL | X$KEWRATTRNEW | 1 | 34 | |
| 5 | FIXED TABLE FULL | X$KEWRSQLIDTAB | 1 | 14 | |
|*6 | FIXED TABLE FIXED INDEX| X$KQLFBC (ind:2) | 1 | 169 | 0 (0)|
-----------------------------------------------------------------------------------
Predicate Information (identified by operation id):
---------------------------------------------------
3 - access("NEW"."STR1_KEWRATTR"="TAB"."SQLID_KEWRSIE")
6 - filter(("INST_ID"=USERENV(INSTANCE) AND
"TAB"."SQLID_KEWRSIE"="KQLFBC_SQLID" AND
"TAB"."CHILDADDR_KEWRSIE"="KQLFBC_CADD"))
文檔建議收集FIXED TABLE(X$KEWRATTRNEW ,X$KEWRSQLIDTAB)統(tǒng)計信息,收集完統(tǒng)計信息,問題依舊存在,沒有解決。
注意:FIXED TABLE(FIXED TABLE),存在過多過期SQL父游標,收集該表統(tǒng)計信息會hang住,詳見Bug 22733141 awr snapshots not created, gathering stats on x$kqlfbc hangs。
▼▼▼
exec dbms_stats.gather_table_stats(SYS, X$KEWRATTRNEW);
exec dbms_stats.gather_table_stats(SYS, X$KEWRSQLIDTAB);
文檔建議的刷新shared_pool,因為是生產(chǎn)環(huán)境,沒有嘗試操作。
最終選擇業(yè)務(wù)停機維護時段,重新啟動數(shù)據(jù)庫釋放X$KQLFBC表數(shù)據(jù),暫時問題解決,開始生成新的awr報告。
填充AWR wrh$_sql_bind_metadata 表來自X$KQLFBC table,如果X$KQLFBC 中的過期的SQL父游標過多,就導致X$KQLFBC查詢緩慢,而導致AWR后臺進程m00* 進程因超時而掛起,通過跳過收集與該表相關(guān)的數(shù)據(jù),避免該問題。
▼▼▼
alter system set "_awr_disabled_flush_tables" = wrh$_sql_bind_metadata;
更多精彩干貨分享
點擊下方名片關(guān)注
IT那活兒
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://m.hztianpu.com/yun/129885.html
摘要:表示用戶操作花費的時間,包括時間和等待事件。當內(nèi)存中排序空間不足時,使用臨時表空間進行排序,這個是內(nèi)存排序?qū)偱判虻陌俜直?。過低說明有大量排序在臨時表空間進行。要確保,否則存在嚴重的性能問題,比如綁定等會影響該參數(shù)。 Oracle中的AWR,全稱為Automatic Workload Repository,自動負載信息庫。它收集關(guān)于特定數(shù)據(jù)庫的操作統(tǒng)計信息和其他統(tǒng)計信息,Oracle以...
閱讀 1493·2023-01-11 13:20
閱讀 1851·2023-01-11 13:20
閱讀 1290·2023-01-11 13:20
閱讀 2041·2023-01-11 13:20
閱讀 4243·2023-01-11 13:20
閱讀 2948·2023-01-11 13:20
閱讀 1581·2023-01-11 13:20
閱讀 3853·2023-01-11 13:20