导航

使用.mongorc.js移除哪些比较“危险”的shell辅助函数

Posted on 2018-08-08 15:41  许爱琪  阅读(169)  评论(0编辑  收藏  举报

切换到用户目录下

 

vi .mongorc.js

 var no = function(){

print("Not on my watch.");

};

 

//禁止删除数据库

db.dropDatabase = DB.prototype.dropDatabase = no;

 

//禁止删除集合

 DBCollection.prototype.drop = no;

 

//禁止 删除索引

DBCollection.prototype.dropIndex = no;

 

 现在,如果试图调用这些函数,就会得到一条错误提示。注意,这种方式并不能保护数据库免受到恶意用户的攻击,只能预防自己的手误。


方便显示当前时间和当前使用的数据库 

prompt = function(){
        if(typeof db == 'underfined'){
                return ("[" + new Date() )+ "?"+' nodb]>';
        }
        try{
                db.runCommand({getLastError:1});
        }
        catch(e){
                print(e);
        }
        return ( "[" + new Date()) + "/" + db +"]> ";
}

 

 

如果在启动shell时指定 --norc参数,就可以禁止加载.mongorc.js