设为首页 收藏本站
查看: 2391|回复: 0

[经验分享] Mongodb-初步了解

[复制链接]

尚未签到

发表于 2015-7-7 12:35:13 | 显示全部楼层 |阅读模式
  一、基本概念
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'});

插入文档时,自动生成的键'_id',默认类型是ObjectId类型
Insertsave的区别:如果插入的文档的_id值,集合中已经存在,用insert执行插入会报异常;用save,如果系统中没有相同的_id,就执行插入操作,有的话,就修改  

删除数据:
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概念的文章,只是把一些基本特性以及语法特点记录下来,以备查看。。。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-84123-1-1.html 上篇帖子: SQL to MongoDB 下篇帖子: MongoDB下载文件 百度盘共享
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表