MongoDB 简介及集群原理说明

一、什么是MongoDB ?MongoDB 是由C++语言编写的,是一个基于分布式文件存储的开源数据库系统。在高负载的情况下,添加更多的节点,可

一、什么是MongoDB ?

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

MongoDB 简介及集群原理说明

二、主要特点

1.MongoDB的提供了一个面向文档存储,操作起来比较简单和容易。

2.你可以在MongoDB记录中设置任何属性的索引来实现更快的排序。

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

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

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

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

7.MongoDB支持各种编程语言:RUBY,PYTHON,JAVA,C++,PHP,C#等多种语言。

8.MongoDB安装简单

三、MongoDB 下载

MongoDB官网下载地址为: http://www.mongodb.org/downloads

MongoDB支持以下平台:OSX、Linux、Windows、Solaris

四、MongoDB 工具 – 监控

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

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

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

五、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管理工具,轻量级, 支持多国语言。

Robomongo – 一个基于 Shell 的跨平台开源 MongoDB 管理工具。(推荐使用)

六、MongoDB部署(Windows)

6.1安装步骤:

1.下载、安装合适的Windows版本的MongoDB,这里使用2.6.12版本。

2.准备数据库目录及配置文件。

3.安装MongoDB服务。

4.安装Robomongo。

5.设置用户。

6.2配置文件(mongod.cfg)

dbpath=C:\MongoDB\data

logpath=C:\MongoDB\log\mongo.log

logappend=true

directoryperdb=true

auth=true

配置文件参数说明:

MongoDB 简介及集群原理说明

MongoDB 简介及集群原理说明

七、安装/卸载MongoDB服务

安装(cmd)

sc create MongoDB binPath= “C:\Program Files\MongoDB 2.6 Standard Legacy\bin\mongod.exe –config=C:\MongoDB\mongod.cfg –service”

卸载(cmd)

定位到MongoDB安装程序的bin目录下,执行:

C:\Program Files\MongoDB 2.6 Standard Legacy\bin mongod.exe –remove –serviceName “MongoDB”

八、安装Robomongo

下载,安装Robomongo。

下载地址https://www.robomongo.org/download

九、设置用户

当数据库里没有用户,则不需要验证也可以操作。直到创建了第一个用户,之后操作都需要验证

执行

use admin

db.addUser(“mxt”, “mxt”);

来设置第一个用户。

十、MongoDB集群

10.1、Master – Slave(主从)

早期的时候,MongoDB是采用主从模式了,后来这个模式已经被Replica sets(复制集)所替代。因此,别再用主从模式了。

MongoDB 简介及集群原理说明

MongoDB 简介及集群原理说明

10.2、Replica sets(复制集)

程序与数据库基本交互

MongoDB 简介及集群原理说明

主集与副集(Primary & Secondary)

MongoDB 简介及集群原理说明

MongoDB 简介及集群原理说明

主集宕机,会投票选择新的主集

MongoDB 简介及集群原理说明

仲裁(Arbiter),只投票,不能成为主集

MongoDB 简介及集群原理说明

主集宕机,会投票选择新的主集,但仲裁集不能成为主集

MongoDB 简介及集群原理说明

当集群节点数据为偶数时,添加一个仲裁保证投票结果不会打平(Tied)

MongoDB 简介及集群原理说明

隐藏集(冷备份),程序无法访问,无法成为主集,但可以投票

MongoDB 简介及集群原理说明

延迟集,单位为秒,有什么作用?

MongoDB 简介及集群原理说明

十一、参考资料

1. MongoDB简介

http://www.runoob.com/mongodb/mongodb-intro.html

2. MongoDB官网

https://www.mongodb.org/

3. MongoDB下载

http://www.mongodb.org/downloads

4. MongoDB文档

https://docs.mongodb.org/manual/

5. MongoDB主从

https://docs.mongodb.org/manual/core/master-slave/

6. MongoDB复制集

https://docs.mongodb.org/manual/core/replication-introduction/

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/5441.html

(0)
上一篇 2022-12-13 23:13
下一篇 2022-12-13 23:13

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

关注微信