Posted on 2011-03-02 04:27
leekiang 阅读(540)
评论(0) 编辑 收藏 所属分类:
nosql
MongoDB是一个介于关系数据库和非关系数据库之间的产品,MongoDB的数据结构非常松散,他的数据格式类似json的bjson格式,因此可以存储比较复杂的数据类型。
主要功能是解决website的操作性数据存储,session对象的存储,数据缓存,高效率的实时计数(比如统计pv,uv)等
跟mysqld一样,一个mongod服务可以有建立多个数据库,每个数据库可以有多张表,这里的表名叫collection,每个collection
可以存放多个文档(document),每个文档都以BSON(binary
json)的形式存放于硬盘中。跟关系型数据库不一样的地方是,它是的以单文档为单位存储的,你可以任意给一个或一批文档新增或删除字段,而不会对其它文
档造成影响,这就是所谓的schema-free,这也是文档型数据库最主要的优点。跟一般的key-value数据库不一样的是,它的value中存储
了结构信息,所以你又可以像关系型数据库那样对某些域进行读写、统计等操作。可以说是兼备了key-value数据库的方便高效与关系型数据库的强大功能。
出处
window下配置运行mongodb:
mongodb压缩包解压缩到目标目录,比如D:\mongodb,在d:\mongodb目录下创建db文件夹
打开cmd窗口,输入:
d:\mongodb\bin>mongod.exe –dbpath d:\mongodb\db
此时mongod进程运行起来,
再打开一个cmd窗口,输入:
d:\mongodb\bin\mongo.exe
进入mongodb命令模式
常用命令:
show dbs 查看有哪些数据库,默认会有admin,local两个数据库
db.serverStatus() 查询服务器状态
use testdb 打开数据库,没有的话立即建一个
db.testc.save({a:10}) 向 collection testc 中保存一条信息,没有collection的话立即建一个
db.testc.find() 检索所有记录
show collections 显示所有collection名字
Mongodb不支持内建的事务(没有内建事务不意味着完全不能有事务的功能),对于某些应用也就不适合,例如银行或会计系统。不过对于大部分的互联网应用来说并不存在这个问题。
适用场景见官方说明 http://www.mongodb.org/display/DOCS/Use+Cases
MongoDB support map/reduce operations
MongoDB中对象的最大尺寸被限制为4MB?
参考:
http://www.fushanlang.com/blog/install-windows-mongodb-302/
http://www.javaeye.com/topic/748322
http://www.jzxue.com/shujuku/shujukuzonghe/201005/19-3807.html
http://database.51cto.com/art/201005/198041.htm
mongodb小结 http://www.wentrue.net/blog/?p=772