• Mongodb的主从复制


    主从服务器的实现原理
    
        首先,主节点会把本服务的与写有关的操作记录下来,读操来不记录,这些操作就记录在local数据库中的oplog.$admin这个集合中,这是一个固定集合,大小是可以配置的,主要是通过配置oplogSize这个参数来实现,
    单位是M,大小一般为磁盘剩余空间的5
    %左右.因为是固定集合所以当固定集合放满日志的时候,新进来的日志就会把最旧的日志覆盖掉,如果这个值设置的不合理,导致数据很快的被覆盖,而从节点没有来得及更新,这样就会产生数据不同步的情况.
    设置为主节点的local数据库有会有oplog.$admin与slave这两个集合.slave记录的是从节点的信息. 从节点与主节点的数据同步主要是从节点定时的会去连接主节点,请求主节点的操作日志,从而对自己的数据副表进行同样的操作来达到数据的同步.从节点的local数据库中会多了source与me这两个集合,source是记录主节点的信息,me是记录从节点的标识
     
    mongodb 启动master 的方式是 
    ./mongod --master 
    启动slave 模式执行
    ./mongod --slave --source master_address (主库的ip地址和端口)
    例如 例子是在同一个主机:
    主库:./mongod --master --dbpath=/opt/monogdata/data --port=60000
    从库:./mongod --slave --dbpath=/opt/monogdata/slavedata/ --port=60010 --source=127.0.0.1:60000
    异机的例子:
    主库:./mongod --master --dbpath=/opt/monogdata/data --port=60000
    从库:./mongod --slave --dbpath=/opt/monogdata/slavedata/ --port=60010 --source=10.250.7.220:60000
    所有的slave库必须从一个主库进行复制,到目前为止,现在的版本还不支持从备库进行复制即级联形式的复制,因为slaves 并不保持他们自己的oplog。对于一对多形式的主从复制对于从库并没有数量的限制,但是设置从库时必须考虑主库IO方面的压力。
    下面介绍一些比较重要的且常见的选项
    --slavedelay 
      延迟应用主库的oplog,和oracle 的dataguard 中的 delay 关键字的作用一直,单位为秒。如果在主库进行误操作,设置延迟应用,这样可以一个维护窗口进行恢复数据。
    --fastsync 
     Start a slave from a snapshot of the master node. This option allows a slave to bootstrap much faster than doing a full sync, 
     if its data directory is initialized with a snapshot of the master’s data. 
    ##以主库的一个快照为基础,启动一个slave。当快照中已经保存了主库的数据字典,这样可以比从库进行完全同步要快##
    --autoresync 
       ##自动执行一个完整的同步操作##
      Automatically perform. a full resync if this slave gets out of sync with the master 
    --oplogSize 
      ##主库的oplog的大小以M 为单位。##
  • 相关阅读:
    sync.waitGroup的wait可以多次wait,同时通知
    广播与服务(2)
    Android中的广播与服务(包含代码)
    Android的Activity的页面跳转和数据传递
    Android基础4(get、post乱码解决、Asynchttpclient的GET_POST访问网络、上传文件、多线程下载、多线程下载的Android移植、XUtils实现多线程下载)
    Android3的知识点补充
    Android基础3(数据库创建、增删改查、事务、listView)
    Android基础2(包含测试、保存数据、获取目录等)
    关于Android的基础概念
    c++与c几点比较
  • 原文地址:https://www.cnblogs.com/zping/p/11193047.html
Copyright © 2020-2023  润新知