• MongoDB如何无缝版本升级


    如何无缝对MongoDB集群版本升级 2.8以下

    升级需要做什么
    数据备份
    非常重要
    用于数据回滚
    下载目标版本Binary
    Mongos mongod

    2.8以上升级类型

    Upgrade MonoDB instance
    单个Mongodb实例升级
    步骤
    下载bin程序
    解压
    停止老的mongod节点
    使用下载的mongod节点代替老的mognod节点
    重启下载的mongod节点
    问题
    shut down & restart可能导致短暂暂停
    可以脚本化加速切换过程
    Upgrade Relica Sets
    副本集实例升级
    步骤
    下载bin
    解压
    每个节点需要单独升级
    首先升级Second节点
    停止老的mongod节点
    使用下载的节点代替老的mongodb节点
    登录mongo客户端,使用rs.status()查看second恢复情况
    startup2 or recovering表示正在回复
    secondary表示恢复成功
    继续采用以上方式进行剩余second节点升级
    使用rs.stepDown()降级当前主节点
    使用rs.status()查看是否已有新的primary,老的节点降级为Second节点
    采用升级Second节点方式升级老的主节点
    Upgrade Sharded Clusters
    集群实例升级
    步骤
    下载bin
    解压
    解压
    每个节点单独升级
    首先升级mongos即诶但那
    其次升级config server节点
    mognos --configdb cfg1:xx,cfg2:xxx,cfg2:xxx
    每个config server节点单独升级
    升级顺序
    cfg3->cfg2->cfg1
    数据节点升级
    upgrade a mognodb instance
    采用upgrade replica sets方式
    根据情况使用两种方式进行升级

    2.8以上

    2.8->3.0
    采用MMAP存储升级必要性不大
    主要是为了3.0新的存储引擎的升级(Wired Tiger)
    使用3.0存储引擎采用直接替换Binary方式不能无缝升级
    MMAP->Wired Tiger
    数据存储格式不同
    数据导出->导入
    既然不能直接替换Binary的方式无缝升级,那么如何进行无缝升级
    通用数据迁移方案
    适用于任何需要迁移数据的系统
    适用于Replic Set内部以及Sharding分片
    数据类型
    时效性数据(双写)
    过期作为(1个月)
    迁移简单
    永久性数据(线上线下、消息队列)
    永久有效
    迁移复杂
    整体负载

    MongoDB集群无缝升级实践 针对场景用适合的升级方案

    2.8以下
    单个mongo节点版本升级
    测试环境
    非线上
    副本集合版本升级
    线上较少
    小业务量使用
    集群Sharding版本升级
    较多
    采用文本的无缝迁移方案
    ---------------------
    作者:断剑走江湖
    来源:CSDN
    原文:https://blog.csdn.net/hanyueqi/article/details/60580266?utm_source=copy
    版权声明:本文为博主原创文章,转载请附上博文链接!

  • 相关阅读:
    洛谷 P1896 [SCOI2005]互不侵犯(状压DP)
    POJ 3208 Apocalypse Someday(数位DP)
    HDU 3555 Bomb(数位DP)
    HDU 3652 B-number(数位DP)
    蜂鸣器版天空之城
    【洛谷习题】小木棍[数据加强版]
    【NOIP2009】靶形数独
    【洛谷习题】填涂颜色
    【NOIP2003】加分二叉树
    【NOIP2000】单词接龙
  • 原文地址:https://www.cnblogs.com/iors/p/9803611.html
Copyright © 2020-2023  润新知