文章内容概述:

  1.MongoDB介绍

  2.MongoDB安装(windows及Linux)

  3.MongoDB基本操作命令

MongoDB介绍

  MongoDB 是一个基于分布式文件存储的数据库。由 C++ 语言编写。旨在为 WEB 应用提供可扩展的高性能数据存储解决方案。

  MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的

  注:NoSQL(NoSQL = Not Only SQL ),泛指非关系型的数据库,用于超大规模数据的存储。

MongoDB安装(windows及Linux):

  windows:

下载地址:https://www.mongodb.com/download-center?jmp=nav#community

双击下载好的文件

点击next

勾选选择框,点击next

选择complete,点击next

点击next

点击下一步

点击install

完成后,在bin所在目录新建data文件夹,data文件夹里创建db和log文件夹,分别存放数据库文件和日志文件

启动cmd

输入以下命令来启动服务器,回车执行

接下来启动数据库客户端,直接输入mongo.exe 或指定端口启动

输入help查看命令

Linux安装:

 MongoDB基本操作命令:

【查看】

使用show命令来查看

show dbs    #查看全部数据库

show collections   #显示当前数据库中的集合

show users    #查看当前数据库的用户信息

【创建/切换】

use命令来切换、创建数据库

use db_name

【显示当前数据库】

使用db命令来显示当前数据库

db

【删除数据库】

db.dropDatabase()

删除当前数据库,默认为 test,你可以使用 db 命令查看当前数据库名

【创建集合】

在插入文档时,MongoDB首先检查上限集合capped字段的大小,然后检查max字段

db.createCollection(name, {capped: <Boolean>, autoIndexId: <Boolean>, size: <number>, max <number>} )

name:集合的名字

capped:是否启用集合限制,如果开启需要制定一个限制条件,默认为不启用,这个参数没有实际意义

max:集合中最大条数限制,默认为没有限制

size:限制集合使用空间的大小,默认为没有限制,size的优先级比max要高

autoIndexId:是否使用_id作为索引,默认为使用(true或false)

注:向集合中插入文档时,如果集合不存在 ,则会自动创建集合

【删除集合】

db.collection.drop()

如果成功删除选定集合,则 drop() 方法返回 true,否则返回 false

【插入文档】

使用 insert() 或 save() 方法向集合中插入文档,文档的格式为JSON。而所有存储在集合中的数据都是BSON格式。BSON是一种类json的一种二进制形式的存储格式,简称Binary JSON。

db.collection_name.insert

db.col.insert({title: '鱼鱼教程', description: 'MongoDB 是一个 Nosql 数据库',, tags: ['mongodb', 'database', 'NoSQL'], likes: 100 })

注:col 是集合名,如果该集合不在该数据库中, MongoDB 会自动创建该集合并插入文档

【查询文档】

db.collection.find(query, projection)

  • query :可选,使用查询操作符指定查询条件
  • projection :可选,使用投影操作符指定返回的键。查询时返回文档中所有键值, 只需省略该参数即可(默认省略)

【更新文档】

使用 update() 和 save() 方法来更新集合中的文档

update方法:
db.collection.update(
<query>,
<update>,
{
upsert: <boolean>,
multi: <boolean>,
writeConcern: <document>
}
)

  • query : update的查询条件,类似sql update查询内where后面的。
  • update : update的对象和一些更新的操作符(如$,$inc...)等,也可以理解为sql update查询内set后面的
  • upsert : 可选,这个参数的意思是,如果不存在update的记录,是否插入objNew,true为插入,默认是false,不插入。
  • multi : 可选,mongodb 默认是false,只更新找到的第一条记录,如果这个参数为true,就把按条件查出来多条记录全部更新。
  • writeConcern :可选,抛出异常的级别

save方法:

db.collection.save(
<document>,
{
writeConcern: <document>
}
)

  • document : 文档数据。
  • writeConcern :可选,抛出异常的级别。

【删除文档】

remove()函数是用来移除集合中的数据

db.collection.remove(
<query>,
{
justOne: <boolean>,
writeConcern: <document>
}
)

  • query :(可选)删除的文档的条件。
  • justOne : (可选)如果设为 true 或 1,则只删除一个文档。
  • writeConcern :(可选)抛出异常的级别。

【MongoDB系列】简介、安装、基本操作命令的更多相关文章

  1. MongoDB系列---入门安装操作

    MongoDB 学习大纲: 1.MongoDB简介与其它数据库对比以及数据类型 2.MongoDB安装 3.MongoDB简单操作 环境要求: Linux 一.MongoDB简介 1 什么是Mongo ...

  2. MongoDB数据库简介及安装

    一.MongoDB数据库简介 简介 MongoDB是一个高性能,开源,无模式的,基于分布式文件存储的文档型数据库,由C++语言编写,其名称来源取自"humongous",是一种开源 ...

  3. MongoDB第一天(MongoDB的简介和安装)

    MongoDB 简介 什么是 MongoDB MongoDB 是一个基于分布式文件存储的数据库.由 C++语言编写.在为 WEB 应用提供可扩展的高性能数据存储解决方案. MongoDB 是一个介于关 ...

  4. MongoDB系列一:CentOS7.2下安装mongoDB3.2.8

    最近在又在倒腾MongoDB,把安装配置的相关命令贴出来 1.下载 wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70- ...

  5. MongoDB系列(二):C#应用

    前言 上一篇文章<MongoDB系列(一):简介及安装>已经介绍了MongoDB以及其在window环境下的安装,这篇文章主要讲讲如何用C#来与MongoDB进行通讯.再次强调一下,我使用 ...

  6. mongodb系列之---副本集配置与说明

    在配置副本集之前,我们先来了解一些关于副本集的知识. 1,副本集的原理 副本集的原理与主从很相似,唯一不同的是,在主节点出现故障的时候,主从配置的从服务器不会自动的变为主服务器,而是要通过手动修改配置 ...

  7. MongoDB系列二

    简介 MongoDB是一个基于分布式文件存储的数据库.由C++语言编写.旨在为WEB应用提供可扩展的高性能数据存储解决方案.  MongoDB是一个高性能,开源,无模式的文档型数据库,是当前NoSql ...

  8. MongoDB入门简介

    MongoDB入门简介 http://blog.csdn.net/lolinzhang/article/details/4353699 有关于MongoDB的资料现在较少,且大多为英文网站,以上内容大 ...

  9. MongoDB系列之二(主动复制)

    目前我正在进行MongoDB的双机热备方面相关的工作.根据我目前看到的MongoDB方面的材料,MongoDB的实际部署有三种方式,分别是“主动复制”,“副本集”以及“分片副本集”. 首先我们从最简单 ...

  10. Linux系统下MongoDB的简单安装与基本操作

    这篇文章主要介绍了Linux系统下MongoDB的简单安装与基本操作,需要的朋友可以参考下   Mongo DB ,是目前在IT行业非常流行的一种非关系型数据库(NoSql),其灵活的数据存储方式,备 ...

随机推荐

  1. Emgu 学习笔记(8)之膨胀腐蚀

    static void Main(String[] args) { Mat img = CvInvoke.Imread(); Mat d = new Mat(); Mat e = new Mat(); ...

  2. alembic的使用

  3. java开发性能调优

    从总体上来看,对于大型网站,比如门户网站,在面对大量用户访问.高并发请求方面,基本的解决方案集中在这样几个环节:1.首先需要解决网络带宽和Web请求的高并发,需要合理的加大服务器和带宽的投入,并且需要 ...

  4. .Net Core控制台应用加载读取Json配置文件

    ⒈添加依赖 Microsoft.Extensions.Configuration Microsoft.Extensions.Configuration.FileExtensions Microsoft ...

  5. 2019中山纪念中学夏令营-Day12[JZOJ]

    Begin (题目的排序方式:题号) 每期新姿势:(今天推荐一位巨佬)Cefola-Kiroxs 推荐知识:namespace的用法(本赛我的代码中将用到) 2019.08.12[NOIP普及组]模拟 ...

  6. 打印指针要用%p而不要用%x

    注意: 打印指针要用%p而不要用%x 原因: https://boredzo.org/blog/archives/2007-01-23/please-do-not-use-percent-x-for- ...

  7. Docker 构建私有镜像仓库

    在使用Docker一段时间后,往往会发现手头积累了大量的自定义镜像文件,这些文件通过公有仓库进行管理并不方便,另外有时候只是希望在内部用户之间进行分享,不希望暴露出去.这种情况下,就有必要搭建一个本地 ...

  8. 关于redis的几件小事(九)redis的并发竞争问题

    1.什么是并发竞争 就是多客户端同时并发写一个key,可能本来应该先到的数据后到了,导致数据版本错了.或者是多客户端同时获取一个key,修改值之后再写回去,只要顺序错了,数据就错了. 2.怎么解决 采 ...

  9. day3-3种实现小图标与文字水平对齐的方式

    效果图: 1.使用小图标作为背景图实现 html: <div class="test"> <ul> <li class="method1&q ...

  10. isAssignable

    import java.util.HashMap; import java.util.Map; public class MapTest { public static void main(Strin ...