MongoDB
MongoDB和其他DB有什么区别?
- 基于分布式文件存储的数据库。
- Database,数据库的概念和关系型数据库中的
Database
一样。 - Collection,文档存在
文档集(Collections)
中,文档集是有共同索引的文档的集合。它相当于关系型数据库中的Table。 - Document,将数据存储为一个
文档(Document)
,数据结构由键值对(key=>value)组成,类似于JSON
对象。它相当于关系数据库中的Row,包含若干属性值(field:value)的一行数据。 - 目前并不支持事务。
安装
MongoDB 安装
在Ubuntu下的单机安装方法很简单:
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 7F0CEB10
echo "deb http://repo.mongodb.org/apt/ubuntu trusty/mongodb-org/3.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.0.list
sudo apt-get update
sudo apt-get install -y mongodb-org
man mongod
MongoDB中的数据类型
MongoDB的文档模型叫做BSON
,这个词由Binary和JSON组合而成,所以它是JSON的二进制形式。
MongoDB 使用
配置文件在 /etc/mongod.conf
。
服务名就叫mongod
。
进入后台管理的命令mongo
,在这里是交互式的命令环境。
- ‘show dbs’:显示所有数据库
- ‘db’:显示当前数据库
- ‘use
dbname
‘:使用某个数据库 - ‘db.stats()’ :展示当前数据库的属性
- ‘show collections’ :展示当前数据库中的collection
CRUD 操作
既然是数据库,就应该支持数据库的增删查改操作。
-
创建collection:
db.createCollection("lucky")
-
插入:
db.collection.insert(
{json结构})
-
查询:
db.collection.find()
.针对特定的文档集进行查询。 -
更新:
db.collection.update()
-
删除:
db.collection.remove()
支持的客户端语言
除了交互式环境里的shell,MongoDB还支持下面的语言中进行数据库访问。
- Python
- Java
- Node
- C++
- C#
REF
https://docs.mongodb.org/manual/