- A+
前言
这是一篇日常使用MongoDB时刻遇到的问题的办理技能的文章,分享出来供年夜家参考进修,下面话不多说了,来一路看看具体的先容吧。
一、查找数组字段不为空的记载
查找数据中数组字段不为空的记载。
举个例子:有以下Mongo文档,
想要查找commit_history不为空的记载,有以下办法:
办法一: db.collection.find({commit_history: {$not: {$size: 0}}})
办法二: db.collection.find({'commit_history.0': {$exists: 1}})
二、MongoDB添加用户
在MongoDB中为一个Collection添加用户,可以如下操作:
use collection_name 切换到某个库
三、有的时刻必要删除指定字段那一列,使用update操作。
例如要删除name这一列:
query json:
update json:
四、数据导出,在mongodb的bin目次执行mongoexport敕令并设定相关的参数
例如:
./mongoexport -h 192.168.0.201 --port 27017 –d admin –u admin –p admin -c department -o /home/admin/department.dat
-h:指定要衔接的数据库的ip;
--port:指定要衔接的数据库的端口;
-u:指定要衔接的数据库的用户名;
-p:指定要衔接的数据库的用户暗码;
-d:指定要衔接的库名;
-c:指定要导出的数据聚拢;
-o:指定要导出的数据目的寄存地址;
注: (1)、必要保证衔接的数据库处于正常运行状况中;
(2)、我曾遇到过一中环境,数据库中参加了用户信息,启动时是没有以用户验证的方式启动,然则执行这个敕令的时刻,照样在我指定了用户名和暗码的环境下才导出胜利,假如有人遇到类似环境,不妨一试。
五、数据导入,在mongodb的bin目次执行mongoimport敕令并设置相关的参数,参数解释和上边一样
例如:
六、非amdin数据库的用户验证问题:
我们给mongodb数据库中的库添加用户,可以在目的数据库中使用如下敕令,例如在mongoTest库中添加一个拥有读写权限的用户:
也可以在admin数据库中添加:
要注意的是:这两种方式是有区其余,也恰是这个区别曾坑了我一把:
使用第一种方式添加的时刻,我们可以在mongodb的bin目次下直接执行如下敕令进入test数据库中操作,增编削查都可以;也可以使用这个用户 名和暗码在mongoVUE中衔接:
然则假如是第二种方式创立的,那么再直接使用上边的敕令,会提醒验证失败,只有当先进入mongo shell衔接到admin数据库,再切换到test数据库的时刻能力验证经由过程。这算是一个小坑,不明环境的或许会异常纠结,明明用户名和暗码没问题,却不知为什么便是连不上。
七、mongodb3.0默认的数据存储方式照样本来2.6一样的,我测验考试过变动为新的存储方式,在启动时使用如下参数,但必要注意的是,必要在数据库中没稀有据的条件下才可以,不然会报错:
mongodb.conf中设置装备摆设了启动的其他各类参数,如dbpath、logpath等。
总结
以上便是这篇文章的全体内容了,愿望本文的内容对年夜家的进修或者事情具有必定的参考进修代价,假如有疑问年夜家可以留言交流,谢谢年夜家对剧本之家的支撑。
您可能感兴致的文章:
MongoDB 语法使用小结windows下mongodb安装与使用图文教程(整顿)MongoDB索引使用详解MongoDB入门教程(包括安装、常用敕令、相关观点、使用技能、常见操作等)PHP7之Mongodb API使用详解mongodb数据库游标的使用浅析mongodb使用心得简单总结PHP中安装使用mongodb数据库Python使用MONGODB入门实例MongoDB使用指南--根本操作