• mongodb系列~回收磁盘空间


    一 说明

        由于mongo版本众多,所以本文说明会进行分类汇总

    二 版本

        1 <3.2版本 官方版本 : repairDatabase确认并修复数据存储中的错误和不一致的地方,类似于linux下的文件操作命令fsck 。当数据库被意外重启或破坏时,使用repairDatabase命令来确保数据完整。

                          实际操作:压缩数据库中所有的collections,等同于分别在每个collection上进行compact命令。减少了磁盘中数据文件的总大小,并且重建了数据库中的所有索引。

                          需求  repairDatabase操作所需要磁盘的空余空间为当前数据总量再加上2G。如果当前磁盘分区空间不足,可以尝试用 –repairpath 参数指定一个空间足够的分区路径。

                          风险 : Repair过程中,其他所有操作都无法执行,直到修复完成。

                      语句命令 db.runCommand({repairDatabase :1})

     

    不仅能整理碎片还可以回收磁盘空间

         2 3.2版本 新的命令compact

                     语句命令 db.tablename.runCommand("compact");

                     风险  加集合所在DB的互斥写锁,会导致该DB上所有的读写请求都阻塞 执行的时间可能很长,跟集合的数据量相关,所以强烈建议在业务低峰期执行,避免影响业务。 适用于 WiredTiger 引擎

    三 其他方式

           1 如果只是主本身有问题,可以调整优先级,将主变成从 将从变成主 重新进行同步

           2 可以采用dump restore方式

  • 相关阅读:
    经典卷积神经网络算法(4):GoogLeNet
    经典卷积神经网络算法(3):VGG
    经典卷积神经网络算法(2):AlexNet
    经典卷积神经网络算法(1):LeNet-5
    卷积神经网络入门篇
    人工神经网络实践
    Python操作Oracle数据库:cx_Oracle
    源码剖析@ApiImplicitParam对@RequestParam的required属性的侵入性
    实战SpringCloud通用请求字段拦截处理
    Elasticsearch系列---生产集群部署(下)
  • 原文地址:https://www.cnblogs.com/danhuangpai/p/14356007.html
Copyright © 2020-2023  润新知