kill session-KILL_SESSION()
生活随笔
收集整理的這篇文章主要介紹了
kill session-KILL_SESSION()
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
2019獨角獸企業(yè)重金招聘Python工程師標(biāo)準(zhǔn)>>>
一. 開發(fā)背景#
做kill session操作時需要考慮session 占用的回滾段大小.本程序所有查詢結(jié)果均排除username為null的會話。
二. 流程圖#
三. 參數(shù)說明#
1. 函數(shù)頭#
?function kill_session(kill ? ? ? ? ? ?varchar2 default 'false', ? ? ? ? ? ? ? ? ? ? ? ? filter_name ? ? varchar2 default null, ? ? ? ? ? ? ? ? ? ? ? ? filter_word ? ? varchar2 default null, ? ? ? ? ? ? ? ? ? ? ? ? used_undo_below number default 250, ? ? ? ? ? ? ? ? ? ? ? ? session_id ? ? ?number default 0, ? ? ? ? ? ? ? ? ? ? ? ? serial ? ? ? ? ?number default 0) ? ? return t_session_info_tabpipelined;2. 參數(shù)#
kill filter_name filter_word used_undo_below session_id serial 該參數(shù)決定是否執(zhí)行kill session的操作,對哪些會話執(zhí)行kill操作由其他參數(shù)的過濾條件決定。該值為'true'時,執(zhí)行kill操作. 指定按哪個字段做過濾,接受下面4個值之一,"EVENT","DBUSER", "OSUSER","HASHVALUE"
"EVENT":按session的等待事件做過濾
"DBUSER":按session的username做過濾,當(dāng)為該值時,filter_word參數(shù)會忽略大小寫
"OSUSER":按session的osuser做過濾
"HASHVALUE":按session當(dāng)前執(zhí)行的sql hash value做過濾,為了保持向9i數(shù)據(jù)庫兼容,不支持SQL ID做過濾條件
- 當(dāng)為參數(shù)為空,并且session_id參數(shù)為0時,不指定具體過濾條件,則只顯示當(dāng)前非空閑等待的session。
如"filter_name"為'EVENT'時,本參數(shù)值為'%buffer%',可以列出所有等待事件中含buffer的等待事件。 當(dāng)參數(shù)"kill"的值為'true'時,本參數(shù)才有效,kill session的動作只會在undo使用量小于本參數(shù)指定值的session實施,單位是M,默認(rèn)值是250M。 以session的sid為過濾條件,指定本參數(shù)后,filter*參數(shù)將失效。 指定session的sid時,該sid對應(yīng)的serial#
四 舉例 #
1、以dbuser做過濾條件,kill session。#
SQL> select * from table(dba_session.kill_session('true', 'dbuser','dbmgr')); ?SID ? ? SERIAL ?USED_UNDO USERNAME ? STATUS ? SQL_HASH_VALUE OSUSER ? ? ? ? ? ? ? ? ? ? ? ? PROGRAM ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?EVENT ? ? ? ? ? ? ? ? ? ? KILLED ---- ---------- ---------- ---------- -------- -------------- ------------------------------ ------------------------------------------------ ------------------------- ------ ? 93 ? ? ? ? 15 ? ? ? ? ?0 DBMGR ? ? ?KILLED ? ? ? ? ? ? ? ?0 lianghaian001 ? ? ? ? ? ? ? ? ?plsqldev.exe ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? SQL*Net message from clie YESnt ? ? ? ? ? ? ? ? ? ? ? ?97 ? ? ? ? 14 ? ? ? ? ?0 DBMGR ? ? ?KILLED ? ? ? ? ? ? ? ?0 lianghaian001 ? ? ? ? ? ? ? ? ?plsqldev.exe ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? SQL*Net message from clie YES2、顯示當(dāng)前event為'SQL*Net'開頭的會話信息。#
SQL> select * from table(dba_session.kill_session(null, 'event','SQL*Net%')); ?SID ? ? SERIAL ?USED_UNDO USERNAME ? STATUS ? SQL_HASH_VALUE OSUSER ? ? ? ? ? ? ? ? ? ? ? ? PROGRAM ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?EVENT ? ? ? ? ? ? ? ? ? ? KILLED ---- ---------- ---------- ---------- -------- -------------- ------------------------------ ------------------------------------------------ ------------------------- ------ ? 14 ? ? ? ? 28 ? ? ? ? ?0 COW_SUNXIN INACTIVE ? ? ? ? ? ? ?0 sunxin005 ? ? ? ? ? ? ? ? ? ? ?plsqldev.exe ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? SQL*Net message from clie NO005 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?nt ? ? ? ? ? ? ? ? ? ? ? ?25 ? ? ? ?362 ? ? ? ? ?0 LIANGHAIAN ACTIVE ? ? ? 2749853118 lianghaian001 ? ? ? ? ? ? ? ? ?plsqldev.exe ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? SQL*Net message from clie NO001 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?nt ? ? ? ? ? ? ? ? ? ? ? ?26 ? ? ? ?273 ? ? ? ? ?0 COW_WUXIAO INACTIVE ? ? ? ? ? ? ?0 wuxiaoli133 ? ? ? ? ? ? ? ? ? ?plsqldev.exe ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? SQL*Net message from clie NOLI133 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?nt ? ? ? ? ? ? ? ? ? ? ? ?轉(zhuǎn)載于:https://my.oschina.net/u/729507/blog/88630
總結(jié)
以上是生活随笔為你收集整理的kill session-KILL_SESSION()的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: object-c中的bool
- 下一篇: AUP2敏捷统一过程之一:序言及降低过程