成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

DB2數據庫解死鎖之shell腳本經典版!

數據庫
我們今天主要向大家講述的是在linux/unix下,DB2數據庫解死鎖之shell腳本,以及對其在實際操作中要用到的實際操作代碼的描述。

以下的文章主要向大家描述的是在linux/unix下,DB2數據庫解死鎖之shell腳本,以下就是對在linux/unix下,DB2數據庫解死鎖之shell腳本的具體描述,希望在你今后的學習中會有所幫助。

clear;

  1. DB2 "connect to db user dbuser using dbpass"  
  2. DB2 "update monitor switches using lock on table on"  
  3. tmpf=`echo "$HOME/tmp/""$RANDOM"_"$SECONDS"".lock"`  
  4. DB2 get snapshot for locks on abbs>$tmpf  
  5. handles=`cat $tmpf|awk '{if($2=="handle")print $4}'`  
  6. x=0;  
  7. y=0;  
  8. deadhandles=" " 
  9. for i in $handles  
  10. do  
  11.  

取當前id所在行

  1. ibeg=`cat $tmpf|awk '{if($2=="handle" && $4=="'$i'")print NR}'`;  
  2. #echo "Line[15]:handle:$i,beg:$ibeg" 

取當前行以后的內容

 

  1. cat $tmpf|awk '{if(NR-1>'$ibeg')printf("%s\n", $0);}'>$tmpf.$i; 

取下一個handle所在行

 

  1. hangdleaf=`cat $tmpf.$i|awk '{if($2=="handle")print NR}'`  
  2. #echo Line[20]:$hangdleaf  
  3. if [ -z "$hangdleaf" ];then  
  4. cat $tmpf.$i>$tmpf.$i.aft;  
  5. else 

取下一個handle

 

  1. itmp="";  
  2. for j in $hangdleaf  
  3. do  
  4. if [ -z "$itmp" ];then  
  5. handlenext=$j;  
  6. itmp="get done!" 
  7. fi  
  8. done  
  9. #echo Line[33]:$handlenext;  
  10. #cat $tmpf.$i|awk '{if(NR<'$handlenext')print $0;}'  
  11. cat $tmpf.$i|awk '{if(NR<'$handlenext')print $0;}'>$tmpf.$i.aft;  
  12. fi 

判斷本handle相關的鎖 是否存在排他鎖

  1. ifx=`cat $tmpf.$i.aft|awk '{if(($1=="Mode" && ($3=="X" || $3=="IX")) ||($2=="mode" && substr($6,2,1)=="X") )print $0;}'`  
  2. #echo Line[39]:handle[$i],$ifx  
  3. if [ -z "$ifx" ];then  
  4. a=1 
  5. else  
  6. deadhandles="$deadhandles"" $i" 
  7. x=`expr $x + 1`;  
  8. echo $i  
  9. fi  
  10. #cat $tmpf.$i.aft|grep X|more  
  11. #echo Line[48]:$deadhandles  
  12. #read yn  
  13. rm -f $tmpf.$i  
  14. rm -f $tmpf.$i.aft  
  15. done  
  16. #echo "死鎖$x:$deadhandles";  
  17. #read yn  
  18. clear  
  19. if [ -z "$deadhandles" ] || [ "$deadhandles" = " " ] ;then  
  20. echo "沒有死鎖,退出......";  
  21. read yn;  
  22. exit 0;  
  23. fi  
  24. echo "鎖句柄:$deadhandles,解鎖? Y/N\c"  
  25. read yn;  
  26. if [ -z "$yn" ];then  
  27. echo "放棄解鎖!"  
  28. exit 0;  
  29. fi  
  30. if [ "$yn" = "Y" ] || [ "$yn" = "y" ];then  
  31. x=0;  
  32. for i in $deadhandles  
  33. do  
  34. echo 解死鎖:$i  
  35. DB2 "force applications($i)"  
  36. x=`expr $x + 1`  
  37. done  
  38. echo "解開[$x]個鎖...."   
  39. else  
  40. echo "放棄解鎖!"  
  41. exit 0;  
  42. fi  
  43. DB2 connect reset;  
  44. DB2 terminate;  
  45. rm -f $tmpf  
  46. echo "解鎖終端:">/tmp/tty.tmp  
  47. tty>>/tmp/tty.tmp  
  48. wall </tmp/tty.tmp  
  49. rm -f /tmp/tty.tmp  

以上的相關內容就是對linux/unix下DB2數據庫解死鎖的shell腳本的介紹,望你能有所收獲。

【編輯推薦】

  1. DB2 CMO安裝7.1.2.6補丁之后會出現的錯誤
  2. IBM DB2數據庫新手必看的基礎知識有哪些?
  3. 如何正確管理DB2 For z/OS or OS/390的操作性能
  4. 安裝DB2 Content Manager8.3出現144錯誤代碼
  5. 安裝IBM DB2 Content Manager V83時與122錯誤代碼

     

     
責任編輯:佚名 來源: 51CTO.com
相關推薦

2010-08-12 09:33:30

DB2數據庫備份

2010-09-06 12:44:24

DB2數據庫

2010-08-09 16:51:24

DB2數據庫

2010-08-17 17:29:06

DB2性能優化

2010-08-27 11:28:39

DB2shell數據庫

2010-08-13 10:43:49

IBM DB2數據庫

2010-08-25 10:50:48

DB2數據庫

2011-03-11 16:02:03

DB2數據庫安裝

2010-08-26 16:15:25

DB2數據庫管理

2010-11-01 11:30:41

DB2數據庫權限

2010-09-30 11:49:21

DB2數據庫權限

2010-11-03 16:21:18

DB2數據庫授權

2009-06-25 10:30:30

2010-08-26 10:37:40

DB2Q復制

2011-03-16 16:03:00

DB2數據庫

2010-08-20 12:49:49

DB2 pureXML

2010-09-06 16:36:20

DB2快照函數

2010-07-30 14:14:11

DB2快照函數

2010-08-19 11:33:43

DB2常用函數

2009-07-06 17:34:26

遠程復制DB2
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 亚洲高清免费观看 | 日韩成人在线观看 | 亚洲一一在线 | 久久国产一区二区 | 99re在线视频 | 日韩欧美亚洲 | 国产精品视频在线播放 | 国产成人精品在线播放 | 国产一级在线 | 亚洲一区二区三区免费观看 | 激情网站在线观看 | 国产精品日韩高清伦字幕搜索 | 91精品国产综合久久久密闭 | 亚洲欧美在线一区 | 先锋资源网| 欧美性影院 | 日韩精品久久久久 | 手机看黄av免费网址 | 亚洲色图50p | 一区二区三区不卡视频 | 国产激情在线看 | 久久精品视频网站 | 精品人伦一区二区三区蜜桃网站 | 午夜日韩视频 | 福利片在线| 欧美99| 亚洲第一区久久 | 中文字幕在线观看 | 中文字幕免费视频 | 日本在线网站 | 国产精品久久久久久一区二区三区 | 久久国产成人午夜av影院武则天 | 日韩一区二区三区精品 | 国产一区二区在线免费观看 | 日韩成人在线播放 | 国产一区在线免费观看视频 | 成人在线观看免费观看 | 一区在线视频 | 国产精品99 | 亚洲欧美在线观看视频 | 影音先锋中文字幕在线观看 |