mongodb篇五:Mongodb主从部署

来源:互联网 发布:2017编程需要排行榜 编辑:程序博客网 时间:2024/05/21 08:40

首先:mongodb主从部署是用来做什么的?

主从部署中有主节点,从节点之分,一个主节点对应对多个从节点;每个节点对应一个端口号;而每个端口号下对应一个服务和多个数据库;

在修改主节点所对应的数据库时,从节点会自备份主节点中的数据;

所以mongodb主从部署可以看做是用来备份的,使mongodb具备了容错,故障恢复等性能。


一。创建节点

1.1创建主节点master,以11011端口为例:

首先命令行切换之mongodb的bin目录,执行mongod操作,如图


需要注意的是路径中的文件夹事先都要创建好,命令不会自动创建目录;

命令行中所输入的命令所代表的意思

--dbpath:数据库DB路径(注意:文件夹必须先创建,不然命令会失败)

--master:主节点--logpath:日志log路径

--slave:从节点

--source:附属于哪一个主节点


1.2之后创建两个slave从节点11012和11013,以11012端口为例:如图


2.测试是否创建成功:

2.1首先连接到端口号为11011的服务

命令行切换至mongodb的bin目录,创建一个测试数据库,然后创建一个测试表再随便插入数据:

如图:


此时主数据库已经被修改,(当然删除和更新操作也都会备份的)

2.2切换至端口号为11012和11013的服务,查看里面的数据库和表以及表里面的内容,可以看到也已经更新了,如图


至此,mongodb实现了备份的功能。


注:从节点不能执行crud操作

不过以上功能要想使用的话每次都要把每个服务启动一遍,不然部署的服务是不能使用的,从节点不会克隆主节点内容;


二。如果想让服务每次自动启动的话,可以安装服务:

命令基本上与上面相同:不过要加上install命令和指定服务名称serviceName,默认服务名称serviceDisplayName


2.1创建master节点并安装服务:

同上,先将命令行切换至mongodb的bin目录:

之后执行命令:

mongod -install -master -dbpath d:\mongodb\db\11011\data   -logpath d:\mongodb\db\11011\log\mongodb.log  -port 11011 -serviceName mongodb11011 -serviceDisplayName mongodb11011

此时:可以在window服务中看到名称为mongodb11011的服务;

启动此服务,以后该服务便会自启动。

2.2创建从节点并安装服务:

mongodb -install -slave -source localhost:11011 -dapath d:\*\*  -logpath d:\*\*\mongodb.log -port 11012            -serviceName mongodb11012 -serviceDisplayName mongodb11012 

2.3如果创建节点的命令有误但服务创建成功了。可以删除服务重新创建:

mongodb -remove -serviceName mongodb11012

之后同步骤一中,主节点执行crud操作,从节点会自动更新。


其他参数

--only 从节点配置,只复制特定某个数据库

--autoresync从节点配置,如果主节点与从节点数据不同,则自动重新同步。配置这个节点可以给运行了一段时间的主节点加上一个新节点,则这个新节点会把之前的主节点数据全部同步过来,而不是从现在这个时间同步。

--slavedelay从节点配置,从数据库延迟同步主数据库的时间

--fastsync从节点配置,以主节点的数据库快照启动从节点,可以加快启动速度。

--oplogsize主节点配置,主节点oplog大小,主节点会把数据库操作的日志写在oplog中,从节点参考 oplog做复制操作,可以根据自身情况调节日志大小。如果不指定oplogsize大小,mongod将指配5%的可用磁盘空间给他,32位机最小是 50M,64位机最小是1G。








0 0
原创粉丝点击