一、MongoDB简介

    MongoDB是一个基于分布式文件存储的数据库。由C++语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案。

    MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。他支持的数据结构非常松散,是类似json的bson格式,因此可以存储比较复杂的数据类型。Mongo最大的特点是他支持的查询语言非常强大,其语法有点类似于面向对象的查询语言,几乎可以实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引。

二、MongoDB的下载与安装

MongoDB的下载地址:

安装:

安装?不好意思我下的是windows版本的,解压会吧?解压好就可以使用了!

当时先下的是Windows 32-bit的2.2.*版本,也不知道为什么,就是不能运行,后来换了个1.8.1版本的,跑起来了!(*代表未知,最后以为数字具体多少记不清了……)

三、MongoDB的开启

服务器端的开启:

首先,开启一个cmd窗口,

然后,cd到mongodb的bin目录下(当然,你也可以通过设置环境变量使mongo命令变为全局的)

输入如下命令,红色为数据库文件存放路径,此路径必须存在

mongod -- logappend -- dbpath D:\mongodb\db

想知道更多开启mongo服务器的命令请在开启前输入:mongod --help

客户端的开启:

重新开启一个cmd,同样cd到bin目录下输入命令:mongo

这样就开启了一个客户端,如下图:

mongoDB的使用很像关系型数据库,这一点在数据库切换之间就有所体现,我们来看下面的几个命令

显示该客户端连接到的数据库:show dbs

使用名为test的数据库:use test

显示当前数据库中的表:show tables

四、MongoDB的CURD

增:

 
  1. > item={
    "key":"1","text":"ci ao"
  2. "key" : "1""text" : "ci ao" } 
  3. > db.table1.insert(item) 

查:

 
  1. > db.table1.find() 
  2. "_id" : ObjectId("50b5c063ff64a9f7d3bcf27f"), "key" : "1""text" : "ci ao" } 

删:

 
  1. > db.table1.remove({
    "key":"1"}) 
  2. > db.table1.find() 
  3. "_id" : ObjectId("50b5c1ceff64a9f7d3bcf280"), "key" : "2""text" : "fuck" } 

改:

 
  1. > var t = db.table1.findOne({
    "key":"1"}) 
  2. > t.str = "next" 
  3. next 
  4. > db.table1.update({
    "key":"1"},t) 
  5. > db.table1.find() 
  6. "_id" : ObjectId("50b5c1ceff64a9f7d3bcf280"), "key" : "2""text" : "fuck" } 
  7. "_id" : ObjectId("50b5c063ff64a9f7d3bcf27f"), "key" : "1""text" : "ci ao", " 
  8. str" : "next" } 

以上就是最基本的CURD,但是mongodb远没有这么简单,比如说查询有条件查询,条件查询中还有正则表达式规则查询,还有游标,有索引,有聚合,具体的还是自己去研究吧

推荐本比较好的书《MongoDB权威指南》,附下载地址: