[20220102]使用ashtop與dashtop指令碼的小問題.txt
[20220102]使用ashtop與dashtop指令碼的小問題.txt
--//最近做最佳化工作,一直使用tpt的ashtop與dashtop指令碼探察資料庫問題,發現使用中一個小問題.
--//說明一下,使用ashtop查詢的是gv$active_session_history檢視,dashtop查詢的是dba_hist_active_sess_history檢視.
--//有時候兩者要經常交替使用.
--//有時候我需要查詢一個例項的情況,經常執行
@ashtop sql_id,inst_id 1=1 &day
--//切換為dashtop執行時出現問題
> @dashtop sql_id,inst_id 1=1 &day
sql_id,inst_id
*
ERROR at line 85:
ORA-00904: "INST_ID": invalid identifier
--//實際上問題在於dba_hist_active_sess_history檢視裡面沒有inst_id欄位,變成了instance_number欄位.也就是換成
--//dashtop執行的是:
@dashtop sql_id,instance_number 1=1 &day
--//兩者切換非常麻煩,修改一下dashtop.sql指令碼:
(SELECT
a.instance_number inst_id,
a.*
...
FROM dba_hist_active_sess_history a) a
--//這樣執行如下就沒有任何問題,切換執行起來很方便.
@dashtop sql_id,inst_id 1=1 &day
--//再比如我們應用執行的程式名一種是小寫另外一種是大寫的風格的型別,tpt指令碼定義一個欄位program2.只要修改如下就可以統一起
--//來.
CASE WHEN a.session_type = 'BACKGROUND' OR REGEXP_LIKE(a.program, '.*\([PJ]\d+\)') THEN
REGEXP_REPLACE(SUBSTR(a.program,INSTR(a.program,'(')), '\d', 'n')
ELSE
'('||REGEXP_REPLACE(REGEXP_REPLACE(a.program, '(.*)@(.*)(\(.*\))', '\1'), '\d', 'n')||')'
END || ' ' program2
--//可以修改為
CASE WHEN a.session_type = 'BACKGROUND' OR REGEXP_LIKE(lower(a.program), '.*\([PJ]\d+\)') THEN
REGEXP_REPLACE(SUBSTR(lower(a.program),INSTR(a.program,'(')), '\d', 'n')
ELSE
'('||REGEXP_REPLACE(REGEXP_REPLACE(lower(a.program), '(.*)@(.*)(\(.*\))', '\1'), '\d', 'n')||')'
END || ' ' program2
--//如果你不想修改可以直接在查詢是增加欄位.
,lower(a.program) program1
,lower(a.module) module1
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/267265/viewspace-2850485/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- [20200117]ashtop指令碼使用簡介.txt指令碼
- [20240313]使用tpt ashtop.sql指令碼的困惑.txtSQL指令碼
- [20220823]完善tpt的ashtop.sql指令碼.txtSQL指令碼
- [20241110]使用xto10.sql指令碼遇到的問題.txtSQL指令碼
- [20231101]使用tpt seg2.sql指令碼問題.txtSQL指令碼
- [20210303]bbed使用小問題.txt
- [20190114]conemu與kitty小問題.txt
- [20220414]toad呼叫執行指令碼問題.txt指令碼
- [20231102]除錯bash shell指令碼遇到的問題.txt除錯指令碼
- [20210107]編寫bash shell指令碼遇到的問題.txt指令碼
- [20180420]windows下使用cmd的小問題.txtWindows
- [20211220]記錄使用sqlplus的小問題.txtSQL
- 寫python指令碼遇到的些許小問題Python指令碼
- [20211111]奇怪的ashtop輸出.txt
- [20220822]奇怪的ashtop輸出.txt
- [20221126]tpt pr.sql指令碼執行問題.txtSQL指令碼
- [20211221]記錄使用sqlplus的小問題補充.txtSQL
- [20220324]toad與sql profile使用問題.txtSQL
- [20181227]bbed的使用問題.txt
- [20181206]toad 12小問題.txt
- [20211118]mutexprof指令碼使用簡介.txtMutex指令碼
- [20190314]使用strace注意的問題.txt
- [20210722]sqlplus下show recycebin的小問題.txtSQL
- [20181217]strace使用問題.txt
- [20210112]ashtop查詢特定表的SQL語句.txtSQL
- [20210330]bash使用source or ..呼叫shell指令碼注意txt指令碼
- [20231013]CLOB型別的編碼問題.txt型別
- [20190221]使用nmap掃描埠的問題.txt
- [20230124]12c訪問login.sql指令碼.txtSQL指令碼
- [20200227]使用tcpdump or and ()語法問題.txtTCP
- [20210902]cut使用輸出問題.txt
- [20210506]完善tix指令碼.txt指令碼
- [20201202]完善sosi指令碼.txt指令碼
- [20210208]lob欄位與查詢的問題.txt
- SKILL指令碼的加密與解密及使用指令碼加密解密
- [20180417]監聽與時區問題.txt
- [20240309]在windwos下使用sed遇到的問題.txt
- 引入外部js指令碼載入慢與頁面白屏問題JS指令碼