MongoDB1.9.1中有哪些定制化功能,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。
MongoDB1.9.1有哪些定制化的功能
简单的字符串定义
myReplSetName:SECONDARY>prompt=">"
>
>//ah,bliss
>
>//somesysadminsthink>isaweirdprompt,asit'salso
>//usedforredirections,sotheymightprefer$
>prompt="$"
$
$//therewego
函数式定义
>prompt=function(){returndb+">";}
test>usefoo
foo>usebar
bar>
更复杂的函数
>states=["STARTUP","PRIMARY","SECONDARY","RECOVERING","FATAL",
..."STARTUP2","UNKNOWN","ARBITER","DOWN","ROLLBACK"]
>
>prompt=function(){
...result=db.isMaster();
...if(result.ismaster){
...returndb+">";
...}
...elseif(result.secondary){
...return"("+db+")>";
...}
...result=db.adminCommand({replSetGetStatus:1})
...returnstates[result.myState]+":"+db+">";
...}
(test)>
MongoDB1.9.1有哪些定制化的功能
告诉你是否连接的是mongos机器
>prompt=function(){
...result=db.adminCommand({isdbgrid:1});
...if(result.ok==1){
...return"mongos>";
...}
...return">";
...}
告诉你当前的时间
>prompt=function(){
...varnow=newDate();
...returnnow.getHours()+":"+now.getMinutes()+":"+now.getSeconds()+">";
...}
10:30:45>db.foo.count()
60000
10:30:46>
还可以定义在配置文件里
$#loadfromcommandlinearg:
$mongoshellConfig.js
MongoDBshellversion1.9.1-
connectingto:test
>
>//loadfromtheshellitself
>load("/path/to/my/shellConfig.js")
另一个新功能是自动加载的配置文件,类似于.bashrc,这个文件会叫.mongorc.js
你可以写你想在连接时执行的内容
//mystartupfile
prompt=/*...*/
//getting"notmasterandslaveok=false"errorsdrivesmenuts,
//soI'moverridingthegetDB()codetoALWAYSsetslaveok=true
Mongo.prototype.getDB=function(name){
this.setSlaveOk();
returnnewDB(this,name);
}
/*andsoon...*/
看完上述内容,你们掌握MongoDB1.9.1中有哪些定制化功能的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注亿速云行业资讯频道,感谢各位的阅读!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。