mongodb- 主从复制

以一个主节点和一个从节点为例(从节点可以有多个),从节点是从主节点定时复制内容(非菊花链)。

主节点(Master):

           Mongodb Home:D:\mongodb\mongodb-win32-i386-2.0.4

           HOST:localhost:20000

           Log File:D:\mongodb\logs\master\logs.txt

           Data File:D:\mongodb\dbs\master

从节点1(Slave):

           Mongodb Home:D:\mongodb\mongodb-win32-i386-2.0.4

           HOST:localhost:20001

           Log File:D:\mongodb\logs\slave1\logs.txt

           Data File:D:\mongodb\dbs\slave1

将mongodb下的bin目录加入到path环境变量中 方便操作 不用切换目录

启动主节点(Master):

          打开dos窗口

         mongod --dbpath D:\mongodb\dbs\master --logpath D:\mongodb\logs\master\logs.txt --logappend --oplogSize 100 --port 20000 --master

启动从节点1(Slave):

          重新打开一个dos窗口

          mongod --dbpath D:\mongodb\dbs\slave1 --logpath D:\mongodb\logs\slave1\logs.txt --logappend --port 20001 --slave --source localhost:20000 

 

参数解释:

--dbpath 数据库文件路径
--logpath 日志文件路径
--master 指定为主节点
--slave 指定为从节点
--source 指定主节点机器的IP地址
--pologSize 主节点操作记录,默认大小为当前可用磁盘空间的5%(64位机器最小值为1G,32位机器为50M),单位为mb。
--logappend 日志文件末尾添加
--port 指定端口号
--only 用在从节点中,用于指定只复制特定的数据库(默认是复制全部),如--only test 从节点只复制test数据库
--fork 在后台运行
--slavedelay 用在从节点上,指从复制检测的时间间隔
--autoresync  如果从节点与主节点不同步了,则自动重新同步

一个集群中有多少个从节点并没有明确限制,但是上千个从节点对单个主节点发起查询也会让其吃不消。所以实际中,建议不要超过12个从节点集群,

如果规模比较大,从节点比较多,可以采用菊花链形式复制。 

测试:

1.在主节点上面新增数据

 2.从节点查询

posted on 2012-07-24 23:01  YangJin  阅读(192)  评论(0编辑  收藏  举报