项目中需要将一些读多改少的数据存入到 MongoDB 数据库中来提高效率,于是简单学习一些MongoDB数据库的知识,来进行应对,也是对自己知识盲区进行补充。本文主要学习介绍MongoDB数据库在Linux环境下的搭建。在学习过程中有一部分知识来源于 http://www.runoob.com

一、MongoDB简介

  MongoDB 是由C++语言编写而成的,是一个基于分布式文件存储的开源数据库系统。在高负载的情况下,添加更多的结点,开源保证服务器性能。MongoDB 旨在为WEB提供可扩展的高性能数据存储解决方案。MongoDB 将数据存储为一个文档,数据结构由键值(key,value)对组成。MongoDB 文档类似于JSON对象。字段值开源包含其他文档,数组以及文档数组。

二、主要特点

  1. MongoDB 是一个面向文档储存的数据库,操作起来比较容易和简单。

  2. 你可以在 MongoDB 的记录中设置任何属性的索引(如:FirstName=‘Sameer’, Address=‘8 Gandhi Road’)来实现更快的排序。

  3. 你可以通过本地或者网络创建数据镜像,这使得 MongoDB 有更强的扩展性。

  4. 如果负载的增加(需要有更多的储存空间和更强的处理能力),它可以分布在计算机网络中的其他节点上,这就是所谓的分片。

  5. MongoDB 支持丰富的查询表达式。查询指令使用JSON形式的标记,可轻易查询文档中内嵌的对象及数组。

  6. MongoDB 使用 update()命令可以实现替换完成的文档(数据)或者一些指定的数据字段。

  7. MongoDB 的Map/reduce 主要是用来对数据进行批量处理和聚合操作。

  8. Map 和 Reduce。Map函数调用emit(key,value)遍历集合中所有的记录,将key与value传给Reduce函数进行处理。

  9. Map 函数和 Reduce 函数是使用 javascript 编写的,并可以通过db.runCommand或mapreduce命令来执行MapReduce操作。

  10. GridFS 是 MongoDB 中的一个内置的功能,可以用于存放大量小文件。

  11. MongoDB 允许在服务端执行脚本,可以用javascript编写某个函数,直接在服务端执行,也可以把函数的定义储存在服务端,下次直接调用即可。

  12. MongoDB 支持各种编程语言: Ruby,Python, Java, C++, PHP,C# 等多种语言。

  13. MongoDB 安装简单

三、在 Windows 下安装 MongoDB

  1. 资源包 mongodb-win32-x86_64-2008plus-ssl-3.6.5-signed   mongodb-robo3t-x64

  2. 安装 MongoDB

    下载上面资源包,可以获取到一个exe文件,直接运行。

    next,同意

    继续next,选择 complete 完整版

    继续next,

    开始安装install

    安装成功

    配置环境变量:

    安装mongodb服务:

      这也是关键的一步,win10下不要直接进入cmd命令,由于win10系统的原因,我们最好要打开开发者模式。然后win +x 已管理员方式进入cmd窗口:(这个就是问什么你安装不了mongodb服务的原因,由于目标计算机积极拒绝,无法连接–mongoDB连接错误解决办法)

    mongod -dbpath "E:\myTools\work\mongodb\MongoDB\data" --logpath "E:\myTools\work\mongodb\MongoDB\logs\mongodb.log" -logappend

解析:mongod --dbpath 命令是创建数据库文件的存放位置,启动mongodb服务时需要先确定数据库文件存放的位置,否则系统不会自动创建,启动会不成功。

    --logpath 表示日志文件存放的路径     --logappend  表示以追加的方式写日志文件

    再浏览器查看,是否启动成功:

    出现上面文字即启动成功。

       每次启动服务都需要输入以上命令,可以将启动数据库写成window服务的方式:

    这样就可以使用 net start MongoDB 去启动服务

    但是,我在启动时出现以下错误:

    进查询资料,需要在安装路径下删除2个文件:mongod.lock  和 storage.bson

    删除之后就发现服务可以正常启动。

    输入mongo进行操作:

  3. 安装 mongodb-robo3t

    这个就不写如何安装了,比较简单,一路下一步就可以了。

    开始连接,右键add

    这样就连接成功了!

四、在Linux 下安装 MongoDB

  1. 资源包准备 : mongodb-linux-x86_64-debian92-3.6.5

    命令下载地址:wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel62-3.6.0.tgz

  2. 在linux 下创建自己的 mongodb 安装目录

  3. 将准备好的资源文件扔到目录下,并解压。

  4. 将其更名为mongodb

  5. 配置PATH   export PATH=<mongodb-install-directory>/bin:$PATH   其中<mongodb-install-directory>为你自己的安装路径

  6.创建 db 在安装路径下创建 data/db 因为数据库会存在 db 目录下,但是,系统不会自动为我们创建,所以需要我们自己手动去创建。

  7.在data同级目录下创建 logs

  8. 在bin目录下执行 ./mongod --dbpath=/usr/local/MongoDB/data/db --logpath=/usr/local/MongoDB/logs/mongodb.log --fork                    dbpath 是库的位置,logpath 是log日志的位置

  9. 这样就安装好了,./mongo  进入数据库

MongoDB——环境搭建的更多相关文章

  1. 《OD大数据实战》MongoDB环境搭建

    一.MongonDB环境搭建 1. 下载 https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.0.6.tgz 2. 解压 tar -zxvf ...

  2. MongoDB环境搭建

    MongoDB系列第一课:MongDB简介 MongoDB系列第二课:MongDB环境搭建 MongoDB系列第三课:MongDB用户管理 MongoDB系列第四课:MongoDB数据库.集合.文档的 ...

  3. Windows下MongoDB环境搭建

    MongoDB下载 登录MongoDB官网:www.mongodb.org:点击[Download MongoDB]按钮,进入如下所示界面 选择目标操作系统及其版本,比如这里选择的是64位的Windo ...

  4. Spring Data MongoDB 环境搭建

    一.开发环境 spring版本:4.0.6.RELEASE spring-data-mongodb版本:1.4.1.RELEASE junit版本 4.11 maven版本:3.0.5 二.pom.x ...

  5. Python在VSCode环境抓取TuShare数据存入MongoDB环境搭建

    本文出自:https://www.cnblogs.com/2186009311CFF/p/11573094.html 总览 此文分为5个部分 第一:Anaconda(下载和安装) 第二:VSCode( ...

  6. NoSql数据库初探-mongoDB环境搭建

    NoSQL数据库一改关系型数据库的缺点,更容易的集成.分布式.无模式.故障恢复等特点,正在一步步餐食关系型数据库的市场,作为一个与时俱进的码农了解一下新技术是必须的,尤其是在读了<NoSql精粹 ...

  7. MongoDB环境搭建教程收集(待实践)

    先收集,后续再实践. https://my.oschina.net/leezhen/blog/207262 http://www.360doc.com/content/11/0708/09/26606 ...

  8. MongoDB的环境搭建及启动

    MongoDB环境搭建及配置 一.环境搭建 Mac:brew install mongodb 常见问题: Error: Permission denied @ unlink_internal 解决方案 ...

  9. mongodb的linux环境搭建

    一.启动 [mongodb@node1 ~]$ mongod -f /data/config/shard1.confmongod: /usr/lib64/libcrypto.so.10: no ver ...

随机推荐

  1. 【BZOJ】2565: 最长双回文串

    [题意]给定小写字母字符串s,求最长的 [ 可以分成左右两个回文串的 ] 子串,n<=10^5. [算法]回文树 [题解]对于每个字符x,处理出以x结尾的最长回文串,以x开头的最长回文串,然后枚 ...

  2. 在iOS开发中如何播放视频

     技术博客http://www.cnblogs.com/ChenYilong/  新浪微博http://weibo.com/luohanchenyilong  如何播放视频 •iOS提供了叫做MPMo ...

  3. 在mac上安装ruby

    1.先装RVM,一个多版本ruby环境的管理和切换工具 curl -sSL https://get.rvm.io | bash -s stable 会自动装上最新版.更新RVM版本:$ rvm get ...

  4. python3学习笔记.3.条件控制与循环

    1.条件控制 关键字 if.elif.else 一般形式如下: if 条件1: 结果1 elif 条件2: 结果2 else: 结果3 注意:条件后的:语句的缩进的是相同的   2.循环语句 关键字有 ...

  5. ueditor和thinkphp框架整合修改版

    基于tp官网上的一篇文章修改的  因为tp中所有目录其实都是性对于入口文件的 在原来的基础上略做修改后 已经做到 无论项目放在www下的任何位置 图片在编辑器中回填后都能正常显示! http://fi ...

  6. jq时间日期插件的使用-datetimepicker

    分三步  首先引入各种包 然后搞哥容器用id  然后加入一段js 实例: 下载:http://files.cnblogs.com/files/wordblog/datetimepicker-maste ...

  7. ECNA 2017

    ECNA 2017 Abstract Art 题目描述:求\(n\)个多边形的面积并. solution 据说有模板. Craters 题目描述:给定\(n\)个圆,求凸包的周长. solution ...

  8. 关于js函数 形参和局部变量名相同 的问题

    原文:https://segmentfault.com/q/1010000007278354?_ea=1295176 问题: function f1(a) { console.log(a);// 10 ...

  9. mysql 导入数据到postgresql

    创建PG的表脚本 DROP TABLE IF EXISTS "public"."t_resource_info"; CREATE TABLE "pub ...

  10. css3 图标变大变小在变小变大

    css3 @-webkit-keyframes anLoca { from { -webkit-transform: scale3d(1, 1, 1); } to { -webkit-transfor ...