mongo的简介及基本操作

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

MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库中功能最丰富、最像关系数据库的。在高负载的情况下,添加更多的节点,可以保证服务器性能。

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

{

  field1:value1,       //一个字段即一个键值对,值可以是多种数据类型。键值对之间用逗号分隔。

  field2:value2,

  field3:value3,

  ........

}

mongo

连接mongodb

show dbs #查看所有数据库
local 0.078125GB
test 0.203125GB

use local #切换到local
switched to db local

show collections #查看local的所有collection
startup_log

db.startup_log.find() #产看startup_log
{ “_id” : “jlan-pc-1466044795232”, “hostname” : “jlan-pc”, “startTime”,…}

db.createCollection(‘startup_log2’) #创建collection
{ “ok” : 1 }

db.startup_log.remove() #清空collection
数据导出
mongoexport -d local -c startup_log -o startup_log.json #把startup_log导出为json文件,在终端执行

mongoexport -d local -c startup_log --csv -f _id,hostname,startTime -o startup_log.csv #startup_log导出为csv文件,–csv表示导出为csv格式,-f表示字段名;
数据导入
mongoimport -d local -c startup_log2 --file startup_log.json #把json文件导入collection,–file用于指定文件

mongoimport -d local -c startup_log2 --type csv --headerline --file startup_log.csv #把csv文件导入collection,–headerline表示忽略第一行
高级操作
修改collection的字段类型
mongo可以通过find(…).forEach(function(x) {})语法来修改collection的field类型。
假设collection为hotels_info,field为dpcount:

db.hotels_info.find({dpcount:{$exists:true}}).forEach(function(x){
    x.dpcount=new NumberInt(x.dpcount);
    db.hotels_info.save(x);
})

查询操作
db.hotels_info.find({'dpcount':{'$gte':200}},{'id':1,'name':1,'_id':0})
#第一个{}中设定查询条件,第二个{}中设定需要显示的字段

你可能感兴趣的:(mongo的简介及基本操作)