MongoDB学习探讨

不想你离开。 提交于 2020-04-01 06:09:31

1、启动

64位win7:

1.不用怎么安装,就是下载后搜一下配置教程,跟着配置好就可以了。

(官网有点变态,就到这里下载了:http://www.mongodb.org/dl/win32/x86_64,我下载的是mongodb-win32-x86_64-2008plus-2.6.6-rc0.zip)

2.命令行下启动自带的MongoDB shell方法:

在一个cmd命令行窗口cd到MongoDB的bin路径,输入mongod -f config.cnf调用配置文件中的路径后,要保留该窗口并打开一个新的cmd命令行窗口输入mongo,启动下面的界面才是成功的。

注:我是将dbpath保存到某个配置文件后调用的,也可以直接输入mongod.exe --dbpath=mongoDB的bin路径。

D:\softwares\mongoDB\mongodb-win32-x86_64-2008plus-2.6.6-rc0\bin>mongo
MongoDB shell version: 2.6.6-rc0
connecting to: test
>

linux(XShell终端):

下载:wget http://downloads.mongodb.org/linux/mongodb-linux-x86_64-1.6.4.tgz

解压后仿照win7上进行配置就可以了。

 

 

2、基本操作训练

在这里学会使用help命令是比较重要的。
数据库的帮助:db.help
集合的帮助:db.集合名.help()

 

删除字段:> db.mycollection.update( { "_id" : ** } , { $unset : { "field":1 } } );

返回查询结果中的某些字段,可以通过find 的第二个参数来指定返回的键:db.tokens.find({"deviceId":"ddada"},{"key":1,"_id":0})


注意:

1.如果创建database时(use database)没有写入数据,show dbs时是不会显示这个database的,因为它没有被保存下来,被自动删除了;

2.有专门的方法db.createCollection来创建集合,但是其实直接第一次使用的时候就会自动创建的

3.我想查看一个集合中每个文档对应的key的名称时去百度了一下,原来MongoDB中是无法查看表结构的,因为每一条存进去的记录,都有可能是不一样的结构的(比如一个有2个key,一个有另外的3个key),也就是无法预判多个键值对的组合。如果能够保证记录的大多数数据使用相同的键序列,那么用客户端工具是可以看到的。

4.如果是类似根据名字查询{"profile":{"name":"kkk"}},则用profile.name

 

3、到官网阅读指导手册

很多操作是help命令所不能找到的,但是在官网上面就有。

官网地址:http://docs.mongodb.org/manual/core/read-operations-introduction/

 

在MongoDB CRUD Operations部分(即数据库创建、读取、修改、删除操作)中,MongoDB CRUD Tutorials包含很多操作方法,比如批量插入、嵌套查询等。刚开始学,我把重点放在阅读和练习这些方法上。

(1)Projection可以限制输出哪些字段。因为_id是默认输出的,而它又是蛮长的一段,所以我就可以利用Projection来使_id不输出,只输出我需要的一些字段。

(2)批量更新数据:update是默认更新一个文档的,要是想批量更新,可在update语句中添加multi属性为true:...,{multi:true})。

(3)嵌套查询:有的集合里面,文档A里面还含有文档B,那么我要想定位到B中的数据,那么就可以利用嵌套查询。形式:文档A.文档B

(4)数值型的数据,有引号和无引号的在操作时是不一样的。所以在插入数据的时候应该统一,如果value是字符串,则需要用双引号引起来,整型长整型等则不需要引号。

(5)Mongodb存储的数据格式为{key:value}。如果value是List或者数组,则格式为{key:[value1, value2]}。如果value是Map,则格式为{key:{{key1:value1},{key2:value2}}}。(嵌套查询)

(6)关于MongoDB的“事务”(Perform Two Phase Commits,两阶段提交)

 

4、Robomongo配置本地mongodb

用管理工具来管理会方便很多,安装Robomongo后配置过程为:

(1)启动mongodb > 创建用户,db.addUser('username','password');

(2)启动Robomongo > file > new connect,进行配置:localhost端口不变,用刚刚创建的用户进行验证,保存后就配置成功了。

参考:http://blog.csdn.net/ipip2005/article/details/38331497

 

接下来就是使用了,双击选中某个集合打开后,可以在命令行区域输入mongodb的shell命令,按Ctrl+enter就可以运行,比如进行查询、统计等 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!