MongoDB基本用法

MongoDB是一个基于分布式文件存储的开源数据库系统。将数据存储为一个文档,数据结构由键值(key=>value)对组成。

MongoDB 文档类似于 JSON 对象。字段值可以包含其他文档,数组及文档数组。

启动MongoDB服务

cmd进入F:\MongoDB\3.4\bin目录下,输入启动命令:mongod --dbpath F:\MongoDB\data\db,出现27017字样说明服务启动成功

可能遇到的报错:shutting down with code:100

1.管理员启动:win+x,然后A键,启动cmd

2.将MongoDB服务设置成Windows服务:

mongod --dbpath="F:\MongoDB\db" --logpath="F:\MongoDB\Log\mongod.log" --logappend --directoryperdb --serviceName "MongoDB" --serviceDisplayName "MongoDB" --install

3.删除文件mongod.lock和storage.bson

或者计算机管理-服务-启动

基本操作语法

 1 #创建数据库,要显示的数据库,需要插入至少一个文件
 2 use testDB
 3 #创建集合,options(可选)指定有关内存大小和索引选项,在MongoDB中,不需要创建集合。当插入一些文件 MongoDB 自动创建的集合
 4 db.createCollection("col", options)
 5 #删除数据库
 6 db.dropDatabase()
 7 #删除集合
 8 db.collection.drop()
 9
10 #插入数据
11 db.testDB.insert({"name":"菜鸟教程"})
12 db.col.insert({title: ‘MongoDB 教程‘,
13     description: ‘MongoDB 是一个 Nosql 数据库‘,
14     by: ‘菜鸟教程‘,
15     url: ‘http://www.runoob.com‘,
16     tags: [‘mongodb‘, ‘database‘, ‘NoSQL‘],
17     likes: 100
18 })
19 #插入文档 使用 insert() 或 save() 方法向集合中插入文档
20 document=({title: ‘MongoDB 教程‘,
21     description: ‘MongoDB 是一个 Nosql 数据库‘,
22     by: ‘菜鸟教程‘,
23     url: ‘http://www.runoob.com‘,
24     tags: [‘mongodb‘, ‘database‘, ‘NoSQL‘],
25     likes: 100
26 });
27 db.col.insert(document)
28 db.col.save(document)  #如果不指定 _id 字段 save() 方法类似于 insert() 方法。如果指定 _id 字段,则会更新该 _id 的数据。
29
30 #查询文档
31 db.mycol.find().pretty()
32 db.mycol.find({key1:value1, key2:value2}).pretty()
33 db.mycol.find({$or: [{key1: value1}, {key2:value2}]}).pretty()
34
35 db.mycol.find({"by":"tutorials yiibai","title": "MongoDB Overview"}).pretty()
36 db.mycol.find({$or:[{"by":"yiibai"},{"title": "MongoDB Overview"}]}).pretty()
37 db.mycol.find("likes": {$gt:10}, $or: [{"by": "yiibai"}, {"title": "MongoDB Overview"}] }).pretty()
38
39 #更新文档,默认将只更新单一的文件,来更新多个你需要设置参数置‘multi‘ 为true
40 db.COLLECTION_NAME.update(SELECTIOIN_CRITERIA, UPDATED_DATA)
41
42 db.mycol.update({‘title‘:‘MongoDB Overview‘},{$set:{‘title‘:‘New MongoDB Tutorial‘}})
43 db.mycol.update({‘title‘:‘MongoDB Overview‘},{$set:{‘title‘:‘New MongoDB Tutorial‘}},{multi:true})
44
45 db.COLLECTION_NAME.save({_id:ObjectId(),NEW_DATA})
46 db.mycol.save({"_id" : ObjectId(5983548781331adf45ec7), "title":"Yiibai New Topic", "by":"Yiibai"})
47
48 #删除文档,justOne可选设置为true或1,只删除一个文件
49 db.COLLECTION_NAME.remove(DELLETION_CRITTERIA,justOne)
50
51 db.mycol.remove({‘title‘:‘MongoDB Overview‘})
52 db.mycol.remove({‘title‘:‘MongoDB Overview‘},1)
53
54 #查询投影,当执行find()方法,那么它会显示一个文档所有字段。要限制这一点,需要设置的字段列表值1或0。 1用来显示字段而0是用来隐藏字段
55 db.COLLECTION_NAME.find({},{KEY:1})
56 db.mycol.find({},{"title":1,_id:0})
57 {"title":"MongoDB Overview"}
58 {"title":"NoSQL Overview"}
59 {"title":"Yiibai Overview"}
60
61 #排序,1用于升序排列,而-1用于降序,默认升序
62 db.COLLECTION_NAME.find().sort({KEY:1})
63 db.mycol.find().sort({"title":-1})
64 #索引
65 db.COLLECTION_NAME.ensureIndex({KEY:1})
66 db.mycol.ensureIndex({"title":1})

参考:菜鸟教程

MongDB导入导出文件

1.导入

示例:mongoimport -d douban -c film --type csv --headerline --file C:\Users\HP\Desktop\codes\DATA\ratings.csv

语法要点

-d :数据库名

-c :collection名

--type :导入的格式默认json

-f :导入的字段名

--headerline :如果导入的格式是csv,则可以使用第一行的标题作为导入的字段

--file :要导入的文件

2.导出

示例:mongoexport -d douban -c info -o C:\Users\HP\Desktop\codes\DATA\douban.csv --type csv -f "_id,rate,tag,title"

语法要点:

-d :数据库名

-c :collection名

-o :输出的文件名

--type : 输出的格式,默认为json

-f :输出的字段,如果-type为csv,则需要加上-f "字段名"

可能遇到的报错:SyntaxError: missing ; before statement @(shell):1:15

解决方法:再开一个cmd写,不能在运行了mongo的cmd里面,是不是很魔性的解决方法

时间: 2024-08-05 19:56:10

MongoDB基本用法的相关文章

nosql数据库MongoDB的用法

MongoDB常用命令 1.启动命令 mongod 启动数据库进程 --dbpath 制定数据库的目录 --port 制定数据库的端口,默认是27017 --bind_ip 绑定IP --directoryperdb 为每个db创建一个独立子目录 --logpath 制定日志存放目录 --logappend 指定日志生成方式(追加/覆盖) 例如:mongod --dbpath db --port 27098 --directoryperdb --logpath db\logs\mongodb.l

Mongodb基础用法及查询操作[转载]

插入多条测试数据> for(i=1;i<=1000;i++){... db.blog.insert({"title":i,"content":"mongodb测试文章.","name":"刘"+i});                                                      ... } db.blog.list.find().limit(10).forEach(

mongodb的用法

关于新版(2.***)的c#用法,网上基本没有.昨天折腾半天,去构造server,发现现在新版本不需要了,文档是这样的,大概意思,无需像原来那样获取server,直接从client获取db就行了. https://github.com/mongodb/mongo-csharp-driver using MongoDB.Bson; using MongoDB.Driver; var client = new MongoClient("mongodb://localhost:27017")

MongoDB查询用法大全

转载 http://blog.163.com/lgh_2002/blog/static/440175262012052116455/ 详见官方的手册: http://www.mongodb.org/display/DOCS/Advanced+Queries#AdvancedQueries-ConditionalOperators%3A%3C%2C%3C%3D%2C%3E%2C%3E%3D 版本一: 1 ) . 大于,小于,大于或等于,小于或等于 $gt:大于 $lt:小于 $gte:大于或等于

爬虫入门【8】Python连接MongoDB的用法简介

MongoDB的连接和数据存取 MongoDB是一种跨平台,面向文档的NoSQL数据库,提供高性能,高可用性并且易于扩展. 包含数据库,集合,文档等几个重要概念. 我们在这里不介绍MongoDB的特点和用法了,感兴趣的可以查一下官方文档. 在此重点介绍如何使用python连接MongoDB,并通过PyMongo操作MongoDB数据库. 这里默认MongoDB已经安装好啦,安装教程可以参考: http://www.yiibai.com/mongodb/mongodb_environment.ht

mongodb mapreduce用法

mongoDB的MapReduce简介 分类:            MongoDB2012-12-06 21:378676人阅读评论(2)收藏举报 MongoDB MapReduce MapReduce是一种计算模型,简单的说就是将大批量的工作(数据)分解(MAP)执行,然后再将结果合并成最终结果(REDUCE).这样做的好处是可以在任务被分解后,可以通过大量机器进行并行计算,减少整个操作的时间. 上面是MapReduce的理论部分,下面说实际的应用,下面以MongoDB MapReduce为

MongoDB基本用法(增删改高级查询、mapreduce)

TestCase.java Java代码   package com.wujintao.mongo; import java.net.UnknownHostException; import java.util.ArrayList; import java.util.List; import java.util.Set; import java.util.regex.Pattern; import org.junit.Test; import com.mongodb.AggregationOut

MongoDB 用法入门(windows)①

概述 大家对数据库肯定不陌生,肯定也有很多人用过MySQL,但是在用MySQL的时候各种建表,写表之间的关联让人非常头疼. MongoDB也是一种数据库,但是它不是用表,而是用集合来装数据的,我对这种数据储存方式很感兴趣.所以我根据MongoDB3.6的官方说明文档整理了MongoDB入门级用法,供自己开发时参考,相信对其他人也有用. 这是慕课网上MongoDB的课程:mongoDB入门篇 这是MongoDB官方说明文档:The MongoDB Manual 什么是MongoDB Mongodb

[转] Mac OX上安装MongoDb

MongoDB的安装有好多种安装方法,有普通青年的HomeBrew方式,也有文艺青年的源码编译方式.我只想快速的装起来用一下,所以我选最简单的HomeBrew. 请参考官方文档 : http://docs.mongodb.org/manual/tutorial/install-mongodb-on-os-x/ 更新Homebrew的package数据库,在Mac的终端中输入: $ brew update 然后耐心等待,这个没有任何显示,估计要几分钟,取决于网络的速度.然后就列出了一大堆东西,就可