推荐工具
RoboMongo
推荐书目
50 Tips and Tricks for MongoDB Developers
Related Blogs
Snail in a Turtleneck
JCZ2MkKb5S8ZX9pq
V2EX  ›  MongoDB

mongodump/restore 丢数据?

  •  
  •   JCZ2MkKb5S8ZX9pq · Jun 14, 2021 · 2124 views
    This topic created in 1794 days ago, the information mentioned may be changed or developed.
    • 想从一台电脑上把一个数据库挪出来腾点地方,用的 mongodump+restore 。
    • 结果大部分 collection 正常,但有几个新库 collection 比源库少了几十万条数据,还有一个新库比源库多了几百条数据。
    • 数据量比较大,排查比较麻烦。以前用 dump 也没遇到过这种情况。想请问看看大家有遇到过这种情况嘛?
         src |      new |  same |    diff
    -------- | -------- | ----- | -------
     1386863 |  1387090 | False |     227
    33635751 | 33004251 | False | -631500
    ...
    
    3 replies    2021-06-15 23:57:36 +08:00
    piapia123
        1
    piapia123  
       Jun 15, 2021
    1. 新库比源库少是因为源库数据一直有更新?
    2. 新库比源库多是因为 mongo 本身 count 函数的不准确性?
    JCZ2MkKb5S8ZX9pq
        2
    JCZ2MkKb5S8ZX9pq  
    OP
       Jun 15, 2021
    @piapia123

    1. 数据未更新,所以 dump 到硬盘做备份了,打算移到另一台机器上 restore,偶尔本地读取。
    2. count / estimated_document_count 结果一致。
    JCZ2MkKb5S8ZX9pq
        3
    JCZ2MkKb5S8ZX9pq  
    OP
       Jun 15, 2021
    @piapia123

    换成了 DB[collection].count_documents({}) 好了

    好像另两种是读 meta 还是啥的,碰到意外 shutdown 等情况会导致数据不准。这种基本等同于 find 再 count,应该就对了。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   3256 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 56ms · UTC 13:35 · PVG 21:35 · LAX 06:35 · JFK 09:35
    ♥ Do have faith in what you're doing.