`
LJ你是唯一LT
  • 浏览: 243451 次
社区版块
存档分类
最新评论

mongodb删除集合后磁盘空间不释放

阅读更多
mongodb删除集合后磁盘空间不释放,只有用db.repairDatabase()去修复才能释放。

但是在修复的过程中如果出现了非正常的mongodb的挂掉,再次启动时启动不了的,需要先修复才可以,
可以利用./mongod --repair --dbpath=/data/mongo/ 如果你是把数据库单独的放在一个文件夹中指定dbpath时就指
向要修复的数据库就可以,修复可能要花费很长的时间,在使用db.repairDatabase()去修复时一定要停掉读写,并且
mongodb要有备机才可以,不然千万不要随便使用db.repairDatabase()来修复数据库,切记。




mongos> db.repairDatabase()
{ "raw" : { "121.42.169.128:27034" : { "ok" : 1 } }, "ok" : 1 }
4个分片 不知道为啥只清除了128的这个磁盘空间,其他没动静

{  "_id" : "syslog",  "partitioned" : true,  "primary" : "shard0001" } --发现128是primary 分片

可能清除只能达到这个效果吧。
分享到:
评论

相关推荐

    MongoDB释放空闲空间的几种常用方法

    然而,当我们在MongoDB中删除文档或集合后,MongoDB不会立即释放这些已占用的磁盘空间,而是保留空记录列表供后续插入操作使用。这可能导致磁盘空间利用率低下,尤其是在频繁进行增删改操作的环境中。为了优化空间...

    mongodb 集群重构和释放磁盘空间实例详解

    在实际运营中,数据的增删改查是常态,但MongoDB在删除数据后并不会立即回收磁盘空间,这可能导致磁盘空间逐渐被浪费。本实例将详细解释如何在MongoDB集群中进行数据目录重构,以释放已被删除数据所占用的磁盘空间。...

    MongoDB的数据存储结构.docx

    当需要分配新的盘区时,MongoDB会检查$freelist命名空间,这是一个特殊的空间,用于记录已被释放(如删除的集合或索引)的盘区。如果$freelist中有合适大小的盘区,MongoDB会优先复用这些空间,以提高资源利用率。 ...

    Mongodb批量删除gridfs文件实例

    `db.repairDatabase()` 由于上述删除操作并未立即释放磁盘空间,`fs.chunks`集合中的数据块可能仍然存在。运行`repairDatabase`命令可以整理数据库,回收不再使用的空间。注意,这会锁定整个数据库,消耗大量内存和...

    OpenStack Ceilometer用MongoDB解决占用磁盘空间过大问题

    3. 数据导出再导入:通过`mongodump`和`mongorestore`工具,可以将数据导出后再导入,这个过程会重建索引并清理已删除数据的空间。这有助于释放被占用的磁盘空间。 4. 定期删除无用数据:针对Ceilometer的具体场景...

    深入了解MongoDB是如何存储数据的

    同时,如果物理内存不足,操作系统会执行交换操作(swap-out),将不常用的数据换出到磁盘,释放物理内存空间。 MongoDB的存储模型基于这种内存映射文件机制,使得数据库的读写操作只需要与虚拟内存交互,而数据的...

    MongoDB CRUD技术操作概述.pptx

    * `drop` 方法:删除集合所有的数据和索引,释放磁盘空间,例如 `db.<collection>.drop()`。 * `dropDatabase` 方法:删除数据库,释放磁盘空间,例如 `db.dropDatabase()`。 读取(Read) * `find` 方法:返回 ...

    蚂蚁中间件团队面试题:Netty+Redis+Kafka+MongoDB+分布式

    当Redis内存达到配置的阈值时,它会根据一定的策略删除部分数据来释放内存空间。 - **分区的原因**:通过分区可以有效地利用多台机器的内存资源,提高系统的整体吞吐量和计算能力。同时,分区还可以帮助解决单机内存...

    mongdb+GridFS文件上传

    - 文件删除不会立即释放磁盘空间,因为MongoDB会等待垃圾回收机制清理已删除的文件块。定期运行`db.fs.files.deleteMany()`和`db.fs.chunks.deleteMany()`可以手动清理。 6. 应用场景: - 大规模文件存储:适用于...

    Java笔试面试题解答

    ### Java笔试面试题解答知识点详解 ...垃圾回收机制自动管理内存,释放不再使用的对象占用的空间。 以上知识点涵盖了Java笔试面试题中的核心内容,对于准备面试的开发者来说是非常有价值的参考资料。

    数据库试题某次考试试卷及答案

    也可以是非关系型的,如MongoDB、Redis等。 2. **数据库管理系统(DBMS)**:是用于创建和管理数据库的软件。它提供了用户与物理数据库之间的接口,使得用户可以通过SQL等语言来查询和操作数据。 3. **信息系统...

Global site tag (gtag.js) - Google Analytics