一、基本概念

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

转载于:https://www.cnblogs.com/fanfan259/archive/2013/03/20/2971469.html

Mongodb-初步了解相关推荐

  1. 【学习笔记】mongoDB初步(一)MongoDB的安装和增删改查基本语法,使用和命令

    MongoDB适合储存大量关联性不强的数据. MongoDB中的数据以"库"-"集合"-"文档"-"字段"结构进行储 存 ...

  2. MySQL自动建立集合自动分片_1.mongodb初步使用总结

    mongoDB2.6使用总结 一.准备工作 下载java驱动包 驱动包下载地址:http://www.doczj.com/doc/3305bc20960590c69ec376c0.html/artif ...

  3. 2.非关系型数据库(Nosql)之mongodb:mongodb显示所有数据库,使用数据库,集合创建(显示和隐式创建),集合查询,初步数据的增删改查,分页

     1代开一个cmd窗口,当作mongodb客户端,执行以下命令: mongo localhost:27017 2查看所有的数据库: > show dbs; admin (empty) loc ...

  4. MongoDB之Shard初步认识

    2019独角兽企业重金招聘Python工程师标准>>> 准备工作 1.  什么是shard 副本集实现了网站的安全备份和故障的无缝转移,但是并不能实现数据的大容量存储,MongoDB ...

  5. 分布式服务器框架之搭建C#+MongoDB+Redis初步

    后面为了学习准备搭建一个分部署的游戏服务器,还有一套基于Unity的客户端轻量级框架.架构图后面补上,用CSDN记录一下自己的开发笔记. 游戏服务器主要分成了四个库(Dll).三个逻辑服务器.一个We ...

  6. 从MongoDB迁移到ES后,我们减少了80%的服务器

    来自:DBAplus社群 作者介绍 李猛(ynuosoft),Elastic-stack产品深度用户,ES认证工程师,2012年接触Elasticsearch,对Elastic-Stack开发.架构. ...

  7. 双活方案_MySQL业务双活的初步设计方案

    这是学习笔记的第 2142 篇文章 在之前设计两地三中心方案时,提到了一个方案,在文章发布后收到了很多朋友的反馈,当然这个事情不是拍脑袋想的,我们最近在落实这件事情. 我们先来看下之前的一个简略版设计 ...

  8. mongodb不等于某个值_MongoDb进阶实践之四 MongoDB查询命令详述

    一.引言 上一篇文章我们已经介绍了MongoDB数据库的最基本操作,包括数据库的创建.使用和删除数据库,文档的操作也涉及到了文档的创建.删除.更新和查询,当然也包括集合的创建.重命名和删除.有了这些基 ...

  9. mongodb windwos 安装(转)

    原文 1: 下载http://www.mongodb.org/downloads mongodb win32最新版本 2:建立一个DB(数据库文件)文件夹 我是放到D盘,路径d:\db  3. 解压m ...

  10. MongoDB 连接数高产生原因及解决

    MongoDB Sharding架构下连接数很容易达到很高,这里连接数分为几个概念: tcp 连接数 netstat可以统计的,一般这个是最高.如果mongod/mongos在同一台服务器,更明显. ...

最新文章

  1. 【FFmpeg】打印日志函数分析(可以根据不同级别打印不同颜色的日志)
  2. Android热修复原理,已整理成文档
  3. 关机相关(shutdown,reboot)
  4. C++ BUILDER 消息处理的深入探索
  5. 虚拟化(8)_Docker容器
  6. 新版Elemen Plus 国际化 1.0.2-beta.59(包含59)
  7. Java7并发编程指南——第八章:测试并发应用程序
  8. 如何双击就以管理员身份运行批处理
  9. Deep_Rank,经典ctr系列预估模型复现框架
  10. 手机话费充值页面HTMLcss3+html5模板
  11. Aspose.Words.FileCorruptedException: The document appears to be corrupted and cannot be loaded
  12. 使用Intrinsics优化
  13. windows安装perl
  14. BZOJ_1022_[SHOI2008]_小约翰的游戏John_(博弈论_反Nim游戏)
  15. 02_星仔带你学Java之变量、常量、字面量、数据类型
  16. css3动画与过渡效果结合出现的树叶飘落效果
  17. java事件模型——EventObject
  18. 笔记:以太网帧格式及其type取值说明
  19. PAT甲级 1014 刷题记录
  20. 一个嵌入式初学者引发的思考(jesse谈自己的经验体会) 【转】

热门文章

  1. 十五周 苏浪浪 201771010120
  2. Alpha 冲刺(2/10)
  3. 【*2000】【2018-2019 ICPC, NEERC, Southern Subregional Contest C 】Cloud Computing
  4. 切图工具优化的几点总结
  5. C++11实战——多线程的日志类
  6. python中的引用、浅拷贝和深拷贝
  7. 转:深入理解Java G1垃圾收集器
  8. ---随心买统计查询
  9. .net 使用 Aspose.Words 进行 Word替换操作
  10. sql server 2000 删除重复数据