Mongo数据库安装与入门

2018-02-05 10:40:31来源:oschina作者:天佑我儿人点击

分享
一,什么是MongoDB ?
MongoDB 是由C++语言编写的,是一个基于分布式文件存储的开源数据库系统。


在高负载的情况下,添加更多的节点,可以保证服务器性能。


MongoDB 旨在为WEB应用提供可扩展的高性能数据存储解决方案。


MongoDB 将数据存储为一个文档,数据结构由键值(key=>value)对组成。MongoDB 文档类似于 JSON 对象。字段值可以包含其他文档,数组及文档数组。




二,MongoDB 下载 你可以在mongodb官网下载该安装包,地址为:https://www.mongodb.com/download-center#community



MongoDB for Windows 64-bit适合 64 位的 Windows Server 2008 R2, Windows 7 , 及最新版本的 Window 系统。
MongoDB for Windows 32-bit适合 32 位的 Window 系统及最新的 Windows Vista。 32 位系统上 MongoDB 的数据库最大为 2GB。
MongoDB for Windows 64-bit Legacy适合 64 位的 Windows Vista, Windows Server 2003, 及 Windows Server 2008


根据你的系统下载 32 位或 64 位的 .msi 文件,下载后双击该文件,按操作提示安装即可。我的window10用 MongoDB for Windows 64-bit



安装过程中,你通过点击 "Custom(自定义)" 按钮来设置你的安装目录。





创建数据目录


MongoDB将数据目录存储在 db 目录下。但是这个数据目录不会主动创建,我们在安装完成后需要创建它。请注意,数据目录应该放在根目录下((如: C:/ 或者 D:/ 等 )。


现在让我们在c盘创建一个data的目录然后在data目录里创建db目录和log目录



三,命令行下运行 MongoDB 服务器 为了从命令提示符下运行 MongoDB 服务器,你必须从 MongoDB 目录的 bin 目录中执行 mongod.exe 文件。


mongod --dbpath c:/data/db 这样就设置成功了



三,命令行下运行 MongoDB 服务器
现在进入bin运行 mongod.exe ,在运行mongo一定要保持mongod.exe 在运行


下面的如图则表示安装成功



这样就能在shell下面编写我们的sql语句了



四,mongo入门
MongoDB 创建数据库

MongoDB 创建数据库的语法格式如下:


use DATABASE_NAME
如果数据库不存在,则创建数据库,否则切换到指定数据库。


如果你想查看所有数据库,可以使用show dbs命令:


> show dbs local 0.078GB test 0.078GB
刚创建的数据库并不在数据库的列表中, 要显示它,我们需要向 数据库插入一些数据MongoDB 删除数据库
语法 MongoDB 删除数据库的语法格式如下:


db.dropDatabase()
删除当前数据库,默认为 test,你可以输入 db 命令查看当前数据库名。


最后,我们再通过 show dbs 命令数据库是否删除成功:


> show dbs local 0.078GB test 0.078GB
创建集合 MongoDB 使用 insert() 或 save() 方法向集合中插入文档,语法如下:


db.COLLECTION_NAME.insert(document)
实例
以下文档可以存储在 MongoDB 的 runoob 数据库 的 col 集合中:


>db.col.insert({title: 'MongoDB 教程', description: 'MongoDB 是一个 Nosql 数据库', by: '菜鸟教程', url: 'http://www.runoob.com', tags: ['mongodb', 'database', 'NoSQL'], likes: 100 })
以上实例中 col 是我们的集合名,如果该集合不在该数据库中, MongoDB 会自动创建该集合并插入文档。


查看已插入文档:


> db.col.find() { "_id" : ObjectId("56064886ade2f21f36b03134"), "title" : "MongoDB 教程", "description" : "MongoDB 是一个 Nosql 数据库", "by" : "菜鸟教程", "url" : "http://www.runoob.com", "tags" : [ "mongodb", "database", "NoSQL" ], "likes" : 100 } >

删除集合
集合删除语法格式如下:


db.collectionName.drop()
3.2 版本后还有以下语法可用于插入文档:

db.collection.insertMany():向指定集合中插入多条文档数据,Many也可以去掉


# 插入多条数据 > var res = db.collection.insertMany([{"b": 3}, {'c': 4}]) > res { "acknowledged" : true, "insertedIds" : [ ObjectId("571a22a911a82a1d94c02337"), ObjectId("571a22a911a82a1d94c02338") ] }
MongoDB 更新文档 MongoDB 使用update()和save()方法来更新集合中的文档。接下来让我们详细来看下两个函数的应用及其区别。

update() 方法
update() 方法用于更新已存在的文档。语法格式如下:


db.collection.update( , , { upsert: , multi: , writeConcern: } )
参数说明:

query: update的查询条件,类似sql update查询内where后面的。
update: update的对象和一些更新的操作符(如$,$inc...)等,也可以理解为sql update查询内set后面的
upsert: 可选,这个参数的意思是,如果不存在update的记录,是否插入objNew,true为插入,默认是false,不插入。
multi: 可选,mongodb 默认是false,只更新找到的第一条记录,如果这个参数为true,就把按条件查出来多条记录全部更新。
writeConcern:可选,抛出异常的级别。实例
我们在集合 col 中插入如下数据:


>db.col.insert({ title: 'MongoDB 教程', description: 'MongoDB 是一个 Nosql 数据库', by: '菜鸟教程', url: 'http://www.runoob.com', tags: ['mongodb', 'database', 'NoSQL'], likes: 100 })
接着我们通过 update() 方法来更新标题(title):


>db.col.update({'title':'MongoDB 教程'},{$set:{'title':'MongoDB'}}) > db.col.find().pretty() { "_id" : ObjectId("56064f89ade2f21f36b03136"), "title" : "MongoDB", "description" : "MongoDB 是一个 Nosql 数据库", "by" : "菜鸟教程", "url" : "http://www.runoob.com", "tags" : [ "mongodb", "database", "NoSQL" ], "likes" : 100 } >
更多实例
只更新第一条记录:


db.col.update( { "count" : { $gt : 1 } } , { $set : { "test2" : "OK"} } );
全部更新:


db.col.update( { "count" : { $gt : 3 } } , { $set : { "test2" : "OK"} },false,true );
只添加第一条:


db.col.update( { "count" : { $gt : 4 } } , { $set : { "test5" : "OK"} },true,false );
全部添加加进去:


db.col.update( { "count" : { $gt : 5 } } , { $set : { "test5" : "OK"} },true,true );
全部更新:


db.col.update( { "count" : { $gt : 15 } } , { $inc : { "count" : 1} },false,true );
只更新第一条记录:


db.col.update( { "count" : { $gt : 10 } } , { $inc : { "count" : 1} },false,false );


参考:http://www.runoob.com/mongodb/mongodb-tutorial.html

最新文章

123

最新摄影

闪念基因

微信扫一扫

第七城市微信公众平台