Welcome 微信登录

首页 / 数据库 / MySQL / kill 慢查询脚本 -MongoDB

很多时候,有些慢查询导致MongoDB压力很大, 花了点时间写了个脚本循环kill些慢查询操作.  
  1. var j=0;  
  2. var _DEF_TIME=10; //设置慢查询时间   
  3. for (var i in db.currentOP().inprog) {  
  4.     var op = "";  
  5.     var opid;  
  6.     var memProg={}  
  7.     if (typeof(undefined) == typeof(db.currentOP().inprog[i])) {  
  8.         continue;  
  9.     }  
  10.     memProg=db.currentOP().inprog[i];  
  11.     op = memProg.op;  
  12.     opid = memProg.opid;  
  13.     print(i);  
  14.     if (op=="query") {  
  15.         if (memProg.hasOwnProperty("secs_running")) {  
  16.             var useTime  = memProg.secs_running;  
  17.             if (useTime >= _DEF_TIME) {  
  18.                 db.killOp(opid);  
  19.                 j++;  
  20.                 print("killed "+j+" Query Operation!");  
  21.             }  
  22.         }  
  23.     }  
  24. }  
运行方式:
  1. ./mongo 10.15.107.154:30000 < ./Self-Script/killSlow.js  
Oracle中诊断阻塞的sessionRedis 内存优化理解和存储总结相关资讯      MongoDB教程 
  • MongoDB 入门指南、示例  (07/09/2013 08:38:34)
  • VMWare的Cloud Foundry实践(二)  (12/10/2012 13:48:40)
  • Linux 下 限制 MongoDB 内存占用  (10/22/2012 17:10:01)
  • MongoDB入门必读(概念与实战并重)  (07/09/2013 08:30:02)
  • MongoDB 可读性比较差的语句  (12/10/2012 13:43:47)
  • MongoDB- Java API 增删改操作  (09/15/2012 08:50:26)
本文评论 查看全部评论 (1)
表情: 姓名: 字数


评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款