zoukankan      html  css  js  c++  java
  • MongoDB主从复制,主主复制

    MongoDB主从复制,是不需要像mysql那样从数据库事先要完整的主数据快照
    背景介绍:mongodb支持一主一从或多从复制
    1)    master节点: 

    mongod --dbpath=/usr/MongoDB/data/ --logpath=/usr/mongodb/log/mongodb.log  --master  

    ##可选--oplogSize 400  --directoryperd   主节点oplog的大小(单位是MB)

    2)    slave 节点: 

    mongod  --dbpath=/usr/mongodb/data/ --logpath=/usr/mongodb/log/mongodb.log --slave --source  masterIP:27017 --autoresync

    ###autoresync自动同步不一致数据

    4)    参数:

    a)—only
        在从节点上指定只复制特定的某个数据库(默认复制所有的数据库)
            b)—slavedelay
                用在从节点上,当应用主节点的操作时增加延时(单位是秒).
            c)—fastsync
                以主节点的数据快照为基础启动从节点。如果数据目录一开始是主节点的数据快照,从节点用这个选项启动要比做完整同步快很多。
            d)—autoresync
                如果从节点与主节点不同步了,则自动重新同步(代价比较大)
               

    5)    查看主从复制状态

    use local

    rs.isMaster() 
    db.printReplicationInfo()
    6)    Master服务器Local库保存了slave信息
    7)    更改oplog大小。默认情况下.oplog大小占服务器剩余空间的5%,为了安全性应该尽量设置较大。
    方法:1)停掉mongodb服务
            2)删除mognodb本地数据库(local)
            3)启动参数添加  --oplogSize 200   (单位:MB)
    4)重启mongodb服务()
    8)   动态 增加节点或删除节点
    在从节点
    use local
    db.sources.insert({“host”:”IP:port”})
    db.sources.remove({“host”:”IP:port”})

    Mongodb主主复制
    主主设置
    192.168.129.47启动参数:
    rm /usr/mongodb/log/mongodb.log
    /usr/mongodb/bin/mongod --dbpath=/usr/mongodb/data/ --logpath=/usr/mongodb/log/mongodb.log  --master --slave --source 192.168.129.48:27017 


    192.168.129.48启动参数:
    rm /usr/mongodb/log/mongodb.log
    /usr/mongodb/bin/mongod --dbpath=/usr/mongodb/data/ --logpath=/usr/mongodb/log/mongodb.log  --master --slave --source 192.168.129.47:27017

    以上两种方案,MongoDB 的最新版本(1.6以后)已不再推荐此方案。推荐Replica Sets 复制集方案

  • 相关阅读:
    你读了该博客中哪些超链接?有何感想
    最理想的师生关系是健身教练和学员的关系,在这种师生关系中你期望获得来自老师的哪些帮助?
    1500802028 王莉娟
    解码方法
    N皇后问题
    两个链表的交叉
    全排列
    交叉字符串
    翻转链表
    爬楼梯
  • 原文地址:https://www.cnblogs.com/wangmo/p/7255720.html
Copyright © 2011-2022 走看看