這篇文章主要介紹“DBA救火排殺腳本是什么”,在日常操作中,相信很多人在DBA救火排殺腳本是什么問題上存在疑惑,小編查閱了各式資料,整理出簡(jiǎn)單好用的操作方法,希望對(duì)大家解答”DBA救火排殺腳本是什么”的疑惑有所幫助!接下來,請(qǐng)跟著小編一起來學(xué)習(xí)吧!
創(chuàng)新互聯(lián)專業(yè)提供成都機(jī)柜租用服務(wù),為用戶提供五星數(shù)據(jù)中心、電信、雙線接入解決方案,用戶可自行在線購買成都機(jī)柜租用服務(wù),并享受7*24小時(shí)金牌售后服務(wù)。作為一個(gè)壓力山大的DBA,很多時(shí)候需要面對(duì)處理一些緊急突發(fā)的救火任務(wù),當(dāng)業(yè)務(wù)出現(xiàn)異常,性能接近癱瘓的奪命一刻,需要果斷出擊,把系統(tǒng)業(yè)務(wù)的影響減少到最小,至于原因分析,可以交到后續(xù)分析,下面將針對(duì)不同的困境,作出排殺處理:
1,批量殺掉oracle連接進(jìn)程:這種情況是終極絕招,在面對(duì)性能將要癱瘓的局面,可以立刻解決問題,但正在等待的業(yè)務(wù)或事務(wù)會(huì)被強(qiáng)行終止,需要重新請(qǐng)求!
ps -ef | grep LOCAL=NO | awk '{print $2}' | xargs kill -9
2,DBA能定位到引起性能異常的SQL,在數(shù)據(jù)庫還能連接響應(yīng)的情況下,批量生成kill -9的SQL批殺腳本:
select 'kill -9 '||spid from v$process where addr in (select paddr from v$session where sid in(select c.sid from v$session c Where username ='MBS7_OMS' and event='SQL*Net message from dblink') );
3,DBA能定位到引起性能異常的schema,并且這個(gè)影響是整個(gè)schema層面業(yè)務(wù)的,在數(shù)據(jù)庫還能連接響應(yīng)的情況下,查殺同一個(gè)用戶的會(huì)話:
select 'alter system kill session '''||c.sid||','||c.SERIAL# ||''';' from v$session c Where username ='RRJC' ;
3,這個(gè)跟上面第二點(diǎn)相似,查殺同一個(gè)SQLID的會(huì)話:
select 'alter system kill session '''||c.sid||','||c.SERIAL# ||''' immediate;' from v$session c where sql_id='1vnbgy700u1cu' ;
4,有時(shí)候需要排查一些連接進(jìn)程的情況,方便跟蹤性能問題,下面是查看同一個(gè)SQL_iD的登陸請(qǐng)求信息:
select sql_id,logon_time,machine,terminal,osuser from v$session where sql_id='1vnbgy700u1cu' order by logon_time desc;
–謹(jǐn)記kill后面加immediate參數(shù),否則會(huì)讓pmon回收很久!如不幸用了傳統(tǒng)kill,可用下面方法再度釋放:
select 'alter system kill session '''||c.sid||','||c.SERIAL# ||''' immediate;' from v$session c Where username ='FRNT' and machine in ('jk2','biweb2') and status='KILLED';
如果會(huì)話已經(jīng)在DB里killed,上面的SQL已經(jīng)查不出spid,可以用下面的SQL查出SPID
select addr, pid, spid FROM v$process p where addr in (select p.addr from v$process p where pid <> 1 minus select s.paddr from v$session s);
到此,關(guān)于“DBA救火排殺腳本是什么”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識(shí),請(qǐng)繼續(xù)關(guān)注創(chuàng)新互聯(lián)-成都網(wǎng)站建設(shè)公司網(wǎng)站,小編會(huì)繼續(xù)努力為大家?guī)砀鄬?shí)用的文章!