mongodb
MongoDB的概念
www.mongodb.org
https://docs.mongodb.com/
www.mongoing.com
http://docs.mongoing.com/
https://github.com/mongodb/mongo/
https://jira.mongodb.org/browse/TOOLS-352?jql=
所有bug的反馈以及解决办法
论坛,FQ
mongodb-user
mongodb-cn
传统数据库:oracle,mysql随着大规模互联网应用的出现,遇到了一些设计上得弊端,
比如,sql对表的定义使得应用不够灵活,横向扩展比较困难,与一些特性不能满足相比,
反而sql一些特性没有用武之地 -- 及时存储在很多时候都不是必要的,也没有特别多的事务需求;而这些消耗着sql数据库的性能 Nosql数据库: not only sql; (都悄悄的放弃了对sql数据库的支持) redis、memecache、mongodb
memcached/redis key/value数据库
mongodb 文档数据库,存储的是文档(Bson ->json的二进制)
特点:内部执行引擎为js解释器,把文档存储成bason结构,在查询时,转换为JS对象,并可以通过熟悉的js语法来操作
mongo和传统数据库相比最大的不同是:
传统数据库:结构化数据,定义好了表结构后,每一行的内容,必是符合表结构的,就是说 (列的个数 类型都是一样的)
mongo文档型数据库:表下的每篇文章,都可以有自己的独特的结构(json对象都可以有自己独特的属和值)
mongodb 数据库格式 :体现出文档型数据库的反范式化
{ film:"猪猪侠", long:120, comment:[ { content:"影评1", reply:["写的不错", ....] }, ............. ] }
mysql : 可能需要很多表,还得链表操作,很复杂
mongodb的特点
1)不支持事务
2)mongodb占用空间多,空间采用预分配
3)大小写敏感
1、无数据结构的限制
没有表结构的概念,每条记录可以有完全不同的结构
业务开发方便快捷
sql数据库需要事先定义表结构在使用
2、完全的索引支持
redis的key-value
hbase的但索引,二级索引需要自己实现
单键索引,多键索引,数组索引,全文索引,地理位置索引
3、方便的冗余与扩展
复制集保证数据安全
分片扩展数据规模

提供了对数据库的统一访问入口,不需要再应用层来进行分发
4、良好的支持
完善的文档
齐全的驱动支持
版本 2.6.5 2 大版本 6 奇/偶 开发版/稳定版 5 小版本
安装
直接在官网下载二进制文件

诊断工具:
mongostats
mongotop
mongosniff 用来检查mongo运行状态
mongodb要求磁盘剩余空间>=4G, 如果不够,可以用 --smallfiles 选项
./bin/mongod -f mongod.conf
path = /usr/local/database logpath = /var/log/mongodb/mongo.log fork = true port = 27017
dbpath 数据存储目录
logpath 日志存储目录
port 运行端口 默认27017
fork 后台进程运行


浙公网安备 33010602011771号