ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

MongoDB利用dbhash检查一致性

2021-04-27 11:02:05  阅读:233  来源: 互联网

标签:hdshard1 MongoDB clusterTime db usertable NumberLong Timestamp 一致性 dbhash


我的环境是分片集群,抽样检查ycsb库hdshard1是否一致。

检查primary节点

hdshard1:PRIMARY> use ycsb
switched to db ycsb
hdshard1:PRIMARY> db.runCommand({dbhash:1})
{
    "host" : "mongo6:40001",
    "collections" : {
        "usertable" : "8606c40cdb5bc61de864a745e71a343c"
    },
    "capped" : [ ],
    "uuids" : {
        "usertable" : UUID("10ebd9a7-fad0-4891-a8b3-454dbe2095e7")
    },
    "md5" : "68ca51e2d360adba7258c504b34806ca",
    "timeMillis" : 4272,
    "ok" : 1,
    "$gleStats" : {
        "lastOpTime" : Timestamp(0, 0),
        "electionId" : ObjectId("7fffffff00000000000000b6")
    },
    "lastCommittedOpTime" : Timestamp(1619491176, 2),
    "$configServerState" : {
        "opTime" : {
            "ts" : Timestamp(1619491184, 2),
            "t" : NumberLong(22)
        }
    },
    "$clusterTime" : {
        "clusterTime" : Timestamp(1619491184, 2),
        "signature" : {
            "hash" : BinData(0,"mWREst7NePQWOC/KmRzHyswkTfA="),
            "keyId" : NumberLong("6941260985399246879")
        }
    },
    "operationTime" : Timestamp(1619491176, 2)
}

检查secondary节点

hdshard1:SECONDARY> db.runCommand({dbhash:1})
{
    "host" : "mongo7:40001",
    "collections" : {
        "usertable" : "8606c40cdb5bc61de864a745e71a343c"
    },
    "capped" : [ ],
    "uuids" : {
        "usertable" : UUID("10ebd9a7-fad0-4891-a8b3-454dbe2095e7")
    },
    "md5" : "68ca51e2d360adba7258c504b34806ca",
    "timeMillis" : 31044,
    "ok" : 1,
    "$gleStats" : {
        "lastOpTime" : Timestamp(0, 0),
        "electionId" : ObjectId("000000000000000000000000")
    },
    "lastCommittedOpTime" : Timestamp(1619491315, 1),
    "$configServerState" : {
        "opTime" : {
            "ts" : Timestamp(1619491302, 1),
            "t" : NumberLong(22)
        }
    },
    "$clusterTime" : {
        "clusterTime" : Timestamp(1619491315, 1),
        "signature" : {
            "hash" : BinData(0,"1Y/JEnLjwSA2w0x0MXox/dgLXmw="),
            "keyId" : NumberLong("6941260985399246879")
        }
    },
    "operationTime" : Timestamp(1619491269, 3)
}

可以看到是一致的。但是这个操作在大库上会非常耗时,而且会阻塞操作,需谨慎。

标签:hdshard1,MongoDB,clusterTime,db,usertable,NumberLong,Timestamp,一致性,dbhash
来源: https://blog.51cto.com/u_12592884/2736129

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有