1.noSQL(not only sql):
非关系型数据库,用于超大规模数据的存储。
2.MongoDB
MongoDB由c++编写,是一个基于分布式文件存储的开源数据库系统,MongoDB将数据存储为一个文档,数据结构由键值(key=>value)对组成。MongoDB文档类似于JSON对象,字段值可以包含其他文档,数组及文档数组。
3.mongodb基本概念
参考如下表格:
实例参考:
- 数据库
"show dbs": 显示所有数据的列表
>show dbs
local 0.078G
test 0.078G
"db": 显示当前数据库对象或集合
>db
test
>
"use": 可以连接到一个指定的数据库
>use local
switched to db local
>db
local
>
数据库名必须满足的条件:
不可能是空字符串
不得含有空格(' ')、.、$、/、\和\0(空字符)
应该全部小写
最多64个字节
特殊作用数据库:
admin: "root"数据库,如果将一个用户添加到该数据库,则这个用户自动继承所有数据库权限。一些特殊的服务器端命令也只能从该数据库运行,例如列出所有数据库或者关闭服务器。
local: 这个数据库永远不会被复制用来存储限于本地单台服务器的任意集合
config: 当Mongo用于分片设置时,config数据库在内部使用,用于保存分片的相关信息
- 文档
文档是一个键值对(即BSON)
RORMS 与 MongoDB对应术语
注意事项:
(1) 文档中键值对有序
(2) MongoDB区分类型和大小写
(3) MongoDB文档不能有重复的键
(4) 文档的键为字符串
文档键命名规范
(1) 键不能含有空字符
(2) .和$有特别意义,只有在特定环境下才能使用
(3) 以下划线开头的键是保留的
- 集合
MongoDB文档组,类似于RDBMS(关系数据库管理系统)中的表格
合法集合名:
集合名不能是空字符串
集合名不能含有空字符,空字符表示集合名的结尾
集合名不能以"system."开头,这是为系统集合保留的前缀
用户创建的集合名字不能含有保留字符
- 元数据
数据库信息存储在集合中,使用系统命名空间: dbname.system.*
- MongoDB数据类型
至此,最基本的描述结束了。