NoSQL:非关系型数据库
使用范围:论坛、博客、sns、微博
NoSQL优势:
1.易扩展
2.数据量大,高性能
3.灵活的数据模型
4.高可用
MongoDB特点
- 模式自由 :可以把不同结构的文档存储在同一个数据库里
- 面向集合的存储:适合存储 JSON风格文件的形式
- 完整的索引支持:对任何属性可索引
- 复制和高可用性:支持服务器之间的数据复制,支持主-从模式及服务器之间的相互复制。复制的主要目的是提供冗余及自动故障转移
- 自动分片:支持云级别的伸缩性:自动分片功能支持水平的数据库集群,可动态添加额外的机器
- 丰富的查询:支持丰富的查询表达方式,查询指令使用JSON形式的标记,可轻易查询文档中的内嵌的对象及数组
- 快速就地更新:查询优化器会分析查询表达式,并生成一个高效的查询计划
- 高效的传统存储方式:支持二进制数据及大型对象(如照片或图片)
MongoDB 三元素
- 三元素:数据库,集合,文档
- 集合就是关系数据库中的表
- 文档对应着关系数据库中的行
- 文档,就是一个对象,由键值对构成,是json的扩展Bson形式
{'name':'guojing','gender':'男'}
- 集合:类似于关系数据库中的表,储存多个文档,结构不固定,如可以存储如下文档在一个集合中
{'name':'guojing','gender':'男'}
{'name':'huangrong','age':18}
{'book':'shuihuzhuan','heros':'108'}
- 数据库:是一个集合的物理容器,一个数据库中可以包含多个文档
- 一个服务器通常有多个数据库
MongoDB服务端
- 配置文件在/etc/mongod.conf,默认端口为27017
- 启动sudo service mongod start
停止sudo service mongod stop
重启sudo service mongod restart
启动后查看进程,以确定是否启动成功ps ajx|grep mongod
如果进程中没有的mongod的项则没有启动成功,可以通过查看日志来确定错误原因,日志目录为/var/log/mongodb/mongod.log,最新的信息在最下边
客户端
开启:mongo
终端退出连接:exit或ctrl+c