一、安装和部署

1、服务端安装

1、官网下载(官方网站 https://www.mongodb.org/downloads/#production),傻瓜式安装,注意修改安装路径。

安装完成后的目录结构:

bin中,mongo.exe 为客户端,mongod.exe 为数据库:

2、配置环境变量

2、启动服务端

1、配置数据存放地址

创建数据目录:D:\MongoDB\data

2、配置日志存放地址

创建日志目录:D:\MongoDB\log

在命令行中配置:

mongod.exe --dbpath="D:\MongoDB\data" --logpath="D:\MongoDB\log\demo.log" --port=27017

注意:

1、启动成功后再当前控制台中不会有任何提示(没有消息就是最好的消息)。

2、在日志文件可以查看是否启动成功。

3、不要关闭这个命令行。

3、查看 data 、 log 文件夹 和 demo.log 文件:

1、data 文件夹:

2、log 文件夹:

3、打开 demo.log:

  在 demo.log 文件中,可以看到是否配置成功,配置的一些信息。

3、启动客户端

在命令行中输入 mongo.exe 显示如下信息:

二、MongoDB 和其他数据库的区别

三、应用

1、常用命令

1、db.help() 查看命令提示:

2、db 查看当前所在数据库名字:

3、use命令 use + 数据库名 表示切换或是创建数据库:

4、show dbs 显示数据库,需要注意的是show dbs,只会显示有数据的库,没有数据的库,是不会显示的。下图中,dqs数据库中,开始没有数据,所以不会显示,当我插入一条数据库后,show dbs 就会显示它。

5、db.dropDatabase() 删除当前数据库的数据:

6、db.stats() 查看当前数据的状态:

解释:

"db" : "zt01" ,表示当前是针对 "zt01" 这个数据库的描述。

"collections" : 0,表示当前数据库有多少个collections.可以通过运行show collections查看当前数据库具体有哪些collection。

"objects" : 0,表示当前数据库所有collection总共有多少行数据。显示的数据是一个估计值,并不是非常精确。

"avgObjSize" : 0,表示每行数据平均大小,也是估计值,单位是bytes。

"dataSize" : 0,表示当前数据库所有数据的总大小,不是指占有磁盘大小。单位是bytes。

"storageSize" : 0,表示当前数据库占有磁盘大小,单位是bytes,因为mongodb有预分配空间机制,为了防止当有大量数据插入时对磁盘的压力,因此会事先多分配磁盘空间。

"numExtents" : 0,事件数。

"indexes" : 0,表示system.indexes表数据行数。

"indexSize" : 0,表示索引占有磁盘大小。单位是bytes

"fileSize" : 0,表示当前数据库预分配的文件大小。

7、db.version() 查看mongoDB版本:

8、db.getMongo() 查看当前连接机器的ip:

9、db.createCollection() 创建集合:

10、db.collection.drop() 删除集合:

11、db.COLLECTION_NAME.insert(document) 插入文档:

MongoDB 插入数据就和插入 json 数据一样。

文档 document:json格式字符串

{ "_id" : ObjectId("5aa1e91d9f51d3ee8ed16453"), "title" : "mongodb study", "by" : "zt1994" }

12、update() 方法用于更新已存在的文档:

语法:

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

MongoDB 学习(一)安装配置和简单应用的更多相关文章

  1. asp.Net Core免费开源分布式异常日志收集框架Exceptionless安装配置以及简单使用图文教程

    最近在学习张善友老师的NanoFabric 框架的时了解到Exceptionless : https://exceptionless.com/ !因此学习了一下这个开源框架!下面对Exceptionl ...

  2. C#实现多级子目录Zip压缩解压实例 NET4.6下的UTC时间转换 [译]ASP.NET Core Web API 中使用Oracle数据库和Dapper看这篇就够了 asp.Net Core免费开源分布式异常日志收集框架Exceptionless安装配置以及简单使用图文教程 asp.net core异步进行新增操作并且需要判断某些字段是否重复的三种解决方案 .NET Core开发日志

    C#实现多级子目录Zip压缩解压实例 参考 https://blog.csdn.net/lki_suidongdong/article/details/20942977 重点: 实现多级子目录的压缩, ...

  3. 【转】asp.Net Core免费开源分布式异常日志收集框架Exceptionless安装配置以及简单使用图文教程

    最近在学习张善友老师的NanoFabric 框架的时了解到Exceptionless : https://exceptionless.com/ !因此学习了一下这个开源框架!下面对Exceptionl ...

  4. ogre3d环境配置 SDK安装配置及简单事例教程

    ogre3d环境配置 SDK安装配置及简单事例教程 http://www.cr173.com/html/22594_1.html ogre3d环境配置 SDK安装配置及简单事例教程 http://ww ...

  5. MongoDB学习(1)--安装,基本curd操作

    知识点: 1-MongoDB 安装,启动和卸载 2-基本概念 3-基本的增删改查操作(CURD) 来回顾总结一把学习的mongodb,如果有javascript基础,学习"芒果DB" ...

  6. MongoDB入门,安装配置与基本CURD操作

    MongoDB特点 MongoDB是NoSQL的一种,非关系型数据库,或者叫不只是关系型数据库(Not Only SQL).MongoDB采用json格式的文档存储,与Redis的key-value有 ...

  7. InteliiJ IDEA的安装配置与简单使用

    小Alan前段时间一直在家里搬砖,已经很久没有接触技术了,从今天开始重拾技术,工欲善其事,必先利其器,以前在做Java开发的时候最常用的IDE就是Eclipse莫属了,不过随着岁月的流逝,在2016年 ...

  8. Yii的学习(1)--安装配置

    之前在sina博客写过Yii的文章,来到博客园之后,没再写过关于Yii的文章,正好端午假期没啥事,就结合以前的博客,Yii的官方文档,再加上最近的关于Yii的收获总结一下,写个系列~~ Yii是一个基 ...

  9. OpenCV安装配置的简单记录

    在ubuntu16.04下安装OpenCV 2.4.11的简单记录 1. 安装cmake,执行$apt-get install cmake即可,cmake -version验证 2. 下载OpenCV ...

随机推荐

  1. [Objective-C语言教程]循环语句(9)

    当需要多次执行同一代码块时,可以使用循环来解决. 通常,语句按顺序执行:首先执行函数中的第一个语句,然后执行第二个语句,依此类推. 编程语言提供各种控制结构,允许更复杂的执行路径.循环语句可用于多次执 ...

  2. 小记 Linux 之 Vim

    小记 Linux 之 Vim 使用vim用来进行文本流查询,是非常重要的部分. 技巧一:使用 '#' 系统将列出文档相同字符,在代码时很重要. 技巧二:使用 ']I' 具体操作是先使用 ? 或 \ 进 ...

  3. MIT 黑科技:通过脑电波和手势控制机器人

    简评:麻省理工黑科技,虽然现在能实现的操作还很简单,但前景(想象空间)非常巨大. 通常,控制机器人并不容易,常规手段就是编程.但是地球上从来不缺天马行空的科学家,今日 MIT 的计算机科学与人工智能实 ...

  4. Struts2框架action路径问题心得----》页面url请求怎么找action

    Struts2 页面url请求怎么找action Struts2 页面url请求如何找action 1.我们使用最原始的方法去查找action,不同注解. struts.xml文件先配置 <!- ...

  5. js,timeout,promise执行顺序

    总结 macro-task包括:script(整体代码), setTimeout, setInterval, setImmediate, I/O, UI rendering. micro-task包括 ...

  6. Flink学习笔记:Flink Runtime

    本文为<Flink大数据项目实战>学习笔记,想通过视频系统学习Flink这个最火爆的大数据计算框架的同学,推荐学习课程: Flink大数据项目实战:http://t.cn/EJtKhaz ...

  7. c++ 两个set合并

    set<int> a,b; //合并到a a.insert(b.begin(),b.end());

  8. helloweblogic 官方qq群欢迎加入!

    点击加入helloweblogic 官方qq群,大家一起进行中间件技术交流,问题交流,互相帮忙互相学习. 我的网易博客地址:http://fm928.blog.163.com 收到网易博客的邮件,以后 ...

  9. fix the issue that disk space is not the size that aws ec2 have.

    在申请aws ec2时,按照向导,在选择存储的时候默认硬盘大小是 8 G,这时候可以根据自己的需要输入一个合适的数字,例如100.完成向导并启动ec2 instance 后登陆机器.使用命令: df ...

  10. 解决display none到display block 渲染时间过长的问题,以及bootstrap模态框导致其他框中input不能获得焦点问题的解决

    在做定制页面的时候,遇到这么一个问题,因为弹出框用的是bootstrap的自带的弹出框,控制显示和隐藏也是用自带的属性控制 控制显示,在触发的地方 例如botton上面加上 data-toggle=& ...