Mongo Shell 用法补充
Mongo Shell 补充
一、异常现象
1. “Unclean shutdown detected” 异常
现象描述:
在打开MongoDB时,我们会先
>mongod --dbpath g:\mongo\data
但出现了“Unclean shutdown detected”的日志提示
解决方案:
* 先去g:\mongo\data路径下,将mongod.lock文件给删除掉
* 重新再打开mongodb,(说明:g:\mongo为测试机的MongoDB安装目录,g:\mongo\data为测试机的数据文件存放路径)
开一个cmd控制台:
>g:
>cd mongo\bin
>mongod -dbpath g:\mongo\data
在另开一个cmd控制台,
>g:
>cd mongo\bin
>mongo
出现原因:
暂时没找到,当我运行一个Nodejs+MongoDB写的的例子后,在重新打开就出现这种情况。具体原因不明。
二、shell用法补充(往后会不停补充)
1.MongoDB javascript shell 的 知识背景补充
shell自从2.4开始,启用V8 javascript引擎,原来之前是使用火狐的SpiderMonkey javascript引擎,采用
V8 是因为其支持多线程,能在同一时间执行多个javascript 操作。V8 是Chrome的js引擎,在13年4月初
宣布开发自己的新内核Blink,而且在chrome28+开始应用上,此款内核是专门针对多线程而开发的,之前的
Webkit内核其认为不适合多线程的设计。因此在浏览器端以外的环境,Node与MongoDB都在使用V8。
2.集合名的命名规范
* 不能以数字开头
* 不能带有空格
* 除了数字,英文字母,下划线以外,不能包含其他字符
eg:
thing$s, thing#s,th-ings,th ings,4things都是错误的。
报异常如下:
Unexpected token ILLEGAL 或 s is not defined 或 cannot insert into reserved $ collection
3.获取集合
有两种方式
* db['things'].find()
* db.things.find()
* db.getCollection('things').find()
4.'it' 命令符
在mongo shell 中默认显示最多20个文档,如我的things集合包含44个文档,那么shell先显示前面的20个文档,
然后,显示" type 'it' for more ",在shell输入it后,shell继续将后面的20个文档显示出来,由于还有4个没
显示,依旧显示" type 'it' for more ",在输入it将余下显示完。
修改shell一次性最多显示的文档数目:
DBQuery.shellBatchSize = 50;
这样我们就能最多显示50个文档,用db.things.find()将一次性输出所有文档,不用再输入it来查余下部分了。
本文来源 我爱IT技术网 http://www.52ij.com/jishu/4254.html 转载请保留链接。
- 评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
-
