Fork me on GitHub

MongoDB 学习笔记

记录笔者日常学习笔记,无深解内容,除了笔者无人看懂。
MongoDB
MongoDB中文网

什么是MongoDB ?

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

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

MongoDB 将数据存储为一个文档,数据结构由键值(key=>value)对组成。MongoDB 文档类似于 JSON 对象。字段值可以包含其他文档,数组及文档数组。

主要特点

  • MongoDB 是一个面向文档存储的数据库,操作起来比较简单和容易。
  • 你可以在MongoDB记录中设置任何属性的索引 (如:FirstName="Sameer",Address="8 Gandhi Road")来实现更快的排序。
  • 你可以通过本地或者网络创建数据镜像,这使得MongoDB有更强的扩展性。
  • 如果负载的增加(需要更多的存储空间和更强的处理能力) ,它可以分布在计算机网络中的其他节点上这就是所谓的分片。
  • Mongo支持丰富的查询表达式。查询指令使用JSON形式的标记,可轻易查询文档中内嵌的对象及数组。
  • MongoDb 使用update()命令可以实现替换完成的文档(数据)或者一些指定的数据字段 。
  • Mongodb中的Map/reduce主要是用来对数据进行批量处理和聚合操作。
  • Map和Reduce。Map函数调用emit(key,value)遍历集合中所有的记录,将key与value传给Reduce函数进行处理。
  • Map函数和Reduce函数是使用Javascript编写的,并可以通过db.runCommand或mapreduce命令来执行MapReduce操作。
  • GridFS是MongoDB中的一个内置功能,可以用于存放大量小文件。
  • MongoDB允许在服务端执行脚本,可以用Javascript编写某个函数,直接在服务端执行,也可以把函数的定义存储在服务端,下次直接调用即可。
  • MongoDB支持各种编程语言:RUBY,PYTHON,JAVA,C++,PHP,C#等多种语言。
  • MongoDB安装简单。

MongoDB 下载

你可以在mongodb官网下载该安装包,地址为:https://www.mongodb.com/download-center#community 。MonggoDB支持以下平台:

  • OS X 32-bit
  • OS X 64-bit
  • Linux 32-bit
  • Linux 64-bit
  • Windows 32-bit
  • Windows 64-bit
  • Solaris i86pc
  • Solaris 64

MongoDB有两种版本:

  1. (Enterprise Edition)企业版,更高级的功能和技术服务(应该要钱)
  2. (Community Edition)社区版,免费,一般来说足够用的了
    两者差异主要体现在安全认证、系统认证等方面。本次讲述安装的当然是免费的

安装MongoDB有三种方式:

  1. 下载安装包。手动安装(manually),需要下载安装包、解压、编译
  2. 采用Homebrew,使用mac系统的Homebrew安装(Homebrew),Homebrew是mac系统上的包管理工具,类似node的npm。

第一种下载安装包,手动安装方式:
下载安装包
选择Mac OS 系统安装包 ,Mac 版的安装包是.tgz 建议把下载链接复制到迅雷下载,会快一点。

新建文件夹
为了方便启动,在任意位置建了一个mongodb的文件夹,将刚才下载的安装包移动到了这个mongodb目录下

解压安装文件
Terminal.app 进到上面新建的那个文件夹下,去解压安装包。解压的命令是:

tar -zxvf mongodb-macos-x86_64-4.4.0.tgz

也可以通过tar -zxvf mongodb-macos-x86_64-4.4.0.tgz -C /Home-C /指定路径 设置解压路径,可以自行了解

包的名字需要根据你刚才下载的文件来书写!!!
解压完毕,就会出现一个文件目录,这就是MongoDB环境文件夹

运行 MongoDB
首先我们创建一个数据库文件存储的目录 db,然后我又把刚刚解压的文件名修改了一下,现在是这个样子

Terminal.app 命令行进到MongoDB环境文件夹下面的bin目录,然后执行命令,./mongod --dbpath 数据库文件存储路径,注意是./mongod

 ./mongod --dbpath /Users/admin/mongodb/db 

其实就是执行 ./mongod --dbpath 数据库文件存储路径,这个数据库文件存储的目录就是上面建的db文件,如果不知道这个文件的路径,可以直接把这个db文件夹托到Terminal.app 里面,就可以看到完整路径了。

执行完命令会出现一大堆提示,可以先不用看,打开浏览器访问http://127.0.0.1:27017/ ,如果出现下面的英文提示,就代表启动了MongoDB服务了,

启动完MongoDB服务的这个Terminal.app命令窗口不要关闭,可以最小化,命令窗口关闭的话MongoDB服务就停了。

MongoDB 工具

有几种可用于MongoDB的管理工具。

监控

MongoDB提供了网络和系统监控工具Munin,它作为一个插件应用于MongoDB中。

Gangila是MongoDB高性能的系统监视的工具,它作为一个插件应用于MongoDB中。

基于图形界面的开源工具 Cacti, 用于查看CPU负载, 网络带宽利用率,它也提供了一个应用于监控 MongoDB 的插件。

GUI

  • Fang of Mongo – 网页式,由Django和jQuery所构成。
  • Futon4Mongo – 一个CouchDB Futon web的mongodb山寨版。
  • Mongo3 – Ruby写成。
  • MongoHub – 适用于OSX的应用程序。
  • Opricot – 一个基于浏览器的MongoDB控制台, 由PHP撰写而成。
  • Database Master — Windows的mongodb管理工具
  • RockMongo — 最好的PHP语言的MongoDB管理工具,轻量级, 支持多国语言.
posted @ 2019-08-04 16:49  较瘦  阅读(127)  评论(0编辑  收藏  举报
知识点文章整理