MongoDB清理資料磁碟不釋放的解決方法

2021-09-24 23:25:28 字數 642 閱讀 8325

mongodb 不會釋放已經占用的硬碟空間,除非drop整個庫,有以下兩個方法可以釋放磁碟空間。

方法一:

在mongodb的shell中進入相應庫中執行db.repairdatabase()db.runcommand()

缺點是花費的時間並不短,要保證剩餘一定量磁碟空間,而且當repair database的時候處於鎖表狀態,既不能讀也不能寫

方法二:

匯入匯出

mongodump --port 27017 -u root -p mypassword --authenticationdatabase admin -d test -o /backup
在mongodb的shell中進入相應庫中執行db.dropdatabase()

mongorestore --port 27017 -u root -p manager --authenticationdatabase admin  -d test /backup/test
缺點是當庫很大時花費的時間也會相當長

以上兩種方法其實都不建議在生產環境做,都會影響正常業務,測試環境可以嘗試,生產環境磁碟空間不夠還是建議增加磁碟。

mongodb刪除集合後磁碟空間不釋放

mongodb刪除集合後磁碟空間不釋放,只有用db.repairdatabase 去修復才能釋放。但是在修復的過程中如果出現了非正常的mongodb的掛掉,再次啟動時啟動不了的,需要先修復才可以,可以利用.mongod repair dbpath data mongo 如果你是把資料庫單獨的放在乙個...

mongodb刪除集合後磁碟空間不釋放的問題

mongodb刪除集合後磁碟空間不釋放的問題 mongodb刪除集合後磁碟空間不釋放,只有用db.repairdatabase 去修復才能釋放。但是在修復的過程中如果出現了非正常的mongodb的掛掉,再次啟動時啟動不了的,需要先修復才可以,可以利用.mongod repair dbpath dat...

Linux 刪除檔案後磁碟空間不釋放的解決方法

我們的系統是 red hat,有乙個盤快要滿了,需要清理一些日誌。我使用 rm 刪除了乙個600mb 的檔案,cd var log rm test.log 然後使用 ls xargs du sh 檢視log目錄下的所有檔案及資料夾的大小 發現 log 目錄減小了 600mb,然後用 df h 檢視磁...