Mongodb-初步了解
一、基本概念
mongodb是最接近关系型数据库的非关系型数据库
支持的数据结构是类似json的bjson格式
面向集合的 模式自由的 文档型数据库
和关系型数据库的对比:
数据库 → db
集合 → table
文档 → record
mongodb最主要不是要解决高并发带来的问题,
而是保证在大数据量存储的同时,查询效率的流畅
mongodb是一个可移植的数据库,在流行的平台上都可以使用,
即,跨平台特性
二、启动与停止
启动:
进程服务:mongod
mongod -dbpath -p
默认存储路径是:data /
默认端口:27017
-log 日志功能
-logappend
mongod -f 以配置文件的方式启动
关于mongodb以配置文件的方式启动,还用有专门的文章来贴出来。。。
停止:
crtl+c (命令行中的停止)
shudownServer()
kill -2 PID 或者 kill -15 PID ( kill -9 PID 不可以 ) (linux系统中)
三、管理工具
mongoVUE
rockmongo
monghub
自带的管理工具 mongo shell,本身是js shell
所以识别js代码
四、简单命令
启动mongod实例进程后,输入mongo 即可进入:
默认进入的数据库是test
注意:数据库以及数据表事先不用建立,插入数据后,
则自动建立相应的数据表和数据库
对于mongodb中存储的内容,是以一种 BSON 的形式 键/值对 存储的,
键必须是字符串类型的,值可以是其支持的任意类型
db 是当前数据库的连接,
输入db ,显示当前连接的数据库名字
查看帮助 : db.help()
db.foo.help()
建立数据库:
use db1
然后建立表,并插入数据,这样就相当于建立了一个数据库
删除数据库:
use db1
db.dropDatabase();
建立数据表:
db.foo.insert({'uid':123});
这样就相当于建立数据表,并插入了一条记录
db.createCollection('foo');
删除表:
db.foo.drop();
插入数据:
db.foo.insert({'uid':123,'username':'sss'});
db.foo.save({'uid':123,'username':'sss'});
删除数据:
db.foo.remove();
删除所有
db.foo.remove({'uid':123})
删除uid=123的记录
五、查询
db.foo.findOne();
查询单条记录
db.foo.find({},{})
第一个参数:条件文档
第二个参数:返回值文档
db.foo.find({'uid':123},{'uid':true});
db.foo.find({'uid':123},{'uid':1})
六、更新
db.foo.update({},{},args1,args2)
1,条件文档
2,修改器文档
3,upsert (表示,如果有的话,则更新,没有的话,就插入; 默认 false )
4,multi (mongodb默认只更新匹配的第一条数据,此参数为真时,表示更新全部; 默认false)
一般都是 db.foo.update({},{},0,1)
这是凭着自己的理解写下来的,有很多不足之处,后续还会补充添加。。。
本文并不是详细介绍mongodb概念的文章,只是把一些基本特性以及语法特点记录下来,以备查看。。。