这是我试过的,但似乎没有工作,只杀死了1个操作。如何在mongoDB中使用服务器端JavaScript来杀死所有应用程序查询?
function s() {
t = db.currentOp()['inprog'];
k= new Array();
for(i=0;i< t.length;i++)
{
if(t[i]["ns"].indexOf("my_namespace") != -1) //fetch all required current Operations
k.push(t[i]);
}
for(j=0;j<k.length;k++)
{
db.killOp(k[j]['opid']); // kill them by opid , works only once
}
在您致电killOp后会发生什么,它会返回吗?它会死吗? – 2011-04-14 19:20:12
@gates,它返回正确的状态信息,例如{'info':'尝试kil ....},但只杀死1个操作,并非全部在循环中提到 – DhruvPathak 2011-04-15 05:52:40
@DrukPathak - 哪个版本的MongoDB是你在用吗? – 2011-04-15 12:26:17