1. 安装 mongodb-win32-x86_64-2008plus-2.6.12-signed.msi,下载地址 https://www.mongodb.com/download-center#community

  安装至目录:c:\MongoDb2

  

2. 安装MongoDb服务并启动,否则不能使用:

  用管理员身份,打开cmd,输入命令 cd c:\MongoDb2\bin 回车,再输入如下命令:

  mongod.exe --bind_ip localhost --logpath "C:\mongodb2\data\dbConf\mongodb.log" --logappend --dbpath "C:\mongodb2\data\db" --port 27017 --serviceName "Mongodb2Service" --serviceDisplayName "Mongodb2Service" --install

  删除服务:

   mongod.exe --serviceName "Mongodb2Service" --remove

  在Window服务中,查看如下:

  

  

  其中 port 27017 是默认值,可以修改。若是修改了端口号,在使用 mongo.exe 时,需要这样输入命令: mongo 127.0.0.1:port  (默认端口号黄色这部分是不用输入的)

  

3. 可视化工具:MongoVUE1.6.9 支持 MongoDb2.6或以下,对 MongoDb3+不支持(会出现异常:Error in creating new Collection.)

  

4. 基本例子:

//Use MongoDB.dll
public static void MainEnter()
{
//链接字符串,部署地址==localhost
string connectionString = "mongodb://localhost"; //如上图中左侧数据库名
string databaseName = "Test"; //如上图中右侧集合名
string collectionName = "UserInfo"; //定义三要素,相当 Mongo==SqlConnection; MongoDatabase==SqlDataAdapter; MongoCollection==Dataset
Mongo mongo = new Mongo(connectionString);
MongoDatabase mongoDatabase = mongo.GetDatabase(databaseName) as MongoDatabase;
MongoCollection<Document> mongoCollection = mongoDatabase.GetCollection<Document>(collectionName) as MongoCollection<Document>; //链接数据库
mongo.Connect(); //查找键值为UserId="1001"的文档对象
Document query = mongoCollection.FindOne(new Document { { "UserId", "" } });
//输出文档对象中键"UserName"对应的值,并输出
Console.WriteLine(Convert.ToString(query["UserName"])); //关闭链接
mongo.Disconnect();
}
//Use MongoDB.Driver.dll

var setting = new MongoDB.Driver.MongoClientSettings();
setting.Server = new MongoDB.Driver.MongoServerAddress("localhost", );
MongoDB.Driver.MongoClient client = new MongoDB.Driver.MongoClient(setting);
var database = client.GetDatabase("CustomerDb");
var collection = database.GetCollection<Customer>("Customer");
var list=collection.Find(n => n.Name == "Apple").ToList();

5. 关系型数据库与MongoDB术语对应关系:

RDBMS MongoDB
Database Database
Table Collection
Tuple/Row Document
column Field
Table Join Embedded Documents
Primary Key Primary Key (Default key _id provided by mongodb itself)

其中默认生成的 Primary Key _id 长度为12字节的十六进制,格式:

4字节时间戳+3字节机器ID+2字节MongoDB服务进程ID+3字节递增

6. MongoDb 以 json 方式存储数据,RDBMS中的多表关系,在MongoDb中,则始终在一个集合内,不会出现类似多个json。

  一对一: {a:"",b:{c:""}}

  一对多(简单类型): {a:"",b:["c","d"]}

  一对多(复杂类型): {a:"",b:[{c:"d"},{e:"f"}]}

7. RDBMS的CURD与MongoDb.dll(https://github.com/samus)的对应,如下:

  C == Insert

  U == Update

  R == Find

  D == Delete

8. 在无视图的情况下,可使用mongo命令操作MongoDb, 基本步骤如下:

  

MongoDB 基础的更多相关文章

  1. mongodb基础用法

    安装部分 mongodb配置方法 mongodb的安装目录 C:\MongoDB\Server\3.2\bin 创建以下目录 c:\mongo\log c:\mongo\db 创建mongodb的配置 ...

  2. mongodb基础系列——数据库查询数据返回前台JSP(一)

    经过一段时间停顿,终于提笔来重新整理mongodb基础系列博客了. 同时也很抱歉,由于各种原因,没有及时整理出,今天做了一个demo,来演示,mongodb数据库查询的数据在JSP显示问题. 做了一个 ...

  3. MongoDB基础知识 02

    MongoDB基础知识 02 6 数据类型 6.1 null : 表示空值或者不存在的字段 {"x":null} 6.2 布尔型 : 布尔类型只有两个值true和false {&q ...

  4. MongoDB基础知识 01

    MongoDB基础知识  1. 文档  文档是MongoDB中的数据的基本单元,类似于关系型数据库管理系统的行. 文档是键值对的一个有序集.通常包含一个或者多个键值对. 例如: {”greeting& ...

  5. MongoDB基础教程系列--未完待续

    最近对 MongoDB 产生兴趣,在网上找的大部分都是 2.X 版本,由于 2.X 与 3.X 差别还是很大的,所以自己参考官网,写了本系列.MongoDB 的知识还是很多的,本系列会持续更新,本文作 ...

  6. DataBase MongoDB基础知识记录

    MongoDB基础知识记录 一.概念: 讲mongdb就必须提一下nosql,因为mongdb是nosql的代表作: NoSQL(Not Only SQL ),意即“不仅仅是SQL” ,指的是非关系型 ...

  7. MongoDB 基础(2019年开篇)

    MongoDB基础知识: 1.什么是MongoDB NoSQL(NoSQL=Not Only SQL),意即"不仅仅是SQL". MongoDB是一个介于关系数据库和非关系数据库之 ...

  8. MongoDB基础学习

    *:first-child { margin-top: 0 !important; } body>*:last-child { margin-bottom: 0 !important; } /* ...

  9. windows下mongodb基础玩法系列二CURD附加一

    windows下mongodb基础玩法系列 windows下mongodb基础玩法系列一介绍与安装 windows下mongodb基础玩法系列二CURD操作(创建.更新.读取和删除) windows下 ...

  10. windows下mongodb基础玩法系列二CURD操作(创建、更新、读取和删除)

    windows下mongodb基础玩法系列 windows下mongodb基础玩法系列一介绍与安装 windows下mongodb基础玩法系列二CURD操作(创建.更新.读取和删除) windows下 ...

随机推荐

  1. Cassandra 计数器counter类型和它的限制

    文档基础 Cassandra 2.* CQL3.1 翻译多数来自这个文档 更新于2015年9月7日,最后有参考资料 作为Cassandra的一种类型之一,Counter类型算是限制最多的一个.Coun ...

  2. LogStash 中字段的排除和数据的排除

    排除字段 字段的排除需要在filter中进行操作,使用一个叫做 mutate 的工具,具体操作如下 由于这个工具的名字不是很容易联想到,也是找了好一会. //比如我们可能需要避免日志中kafka的一些 ...

  3. 当数据0跟if判断冲突的时候

    我是很无奈的,以后都要2,3,4,5这样去标志状态: 分配状态:<select name="is_send" > <option selected="s ...

  4. php spl

    最近在重构后台,自写rbac,发现自己在设计模式方面尤为欠缺,没有一个长远的目光,所以打算静下心来看一看自己平时不关注的功能,spl就是其中之一. spl是Standard PHP Library(P ...

  5. 【Window】Tor(洋葱头路由)+Privoxy 网络实践(附带Java实例代码)

    1.背景 平时我们需要访问onion后缀的网站,需要通过Tor(The Onion Router,洋葱路由器).一般来说安装Tor Broswer就可以满足需要.但是项目我要做的是通过程序来获取oni ...

  6. 2)Java中的==和equals

    Java中的==和equals   1.如果比较对象是值变量:只用==   2.如果比较对象是引用型变量:      ==:比较两个引用是不是指向同一个对象实例.      equals:       ...

  7. Android中style的使用

    摘自搜搜问问. <item name="#1">#2</item> 1.item 的name属性#1可以为所有系统所带组件的属性,#2为此属性的值如andr ...

  8. 浅谈DEs,AES

    1. AES加密,相对比较简单,之前已经配置好工具类. package com.bbguoxue.poetry.util; import java.security.SecureRandom; imp ...

  9. 合并果子 (codevs 1063) 题解

    [问题描述] 在一个果园里,多多已经将所有的果子打了下来,而且按果子的不同种类分成了不同的堆.多多决定把所有的果子合成一堆. 每一次合并,多多可以把两堆果子合并到一起,消耗的体力等于两堆果子的重量之和 ...

  10. 第五节:AppDomain FirstChance异常通知

    每个AppDomain都可关联一组回调方法:CLR开始查找AppDomain中的catch块时,这些回调方法就会得到调用.这些方法可执行日志记录操作.除此之外,宿主可利用这个机制监视AppDomain ...