Saya mengalami beberapa masalah dengan MongoDB dan penggunaan ruang. Secara khusus, saya pernah menggunakan koleksi besar sekitar 600 juta catatan dengan total 110+ GB pada disk. Baru-baru ini saya memutuskan untuk menghapusnya karena datanya sudah usang, untuk melakukannya saya menjatuhkan koleksi melalui antarmuka web rockmongo. Karenanya, rockmongo tidak menunjukkan koleksi lagi kepada saya, namun penggunaan disk saya tidak berubah sama sekali.
Apakah ada operasi bersih yang tidak saya sadari, yang harus dijalankan untuk menyinkronkan database dengan file database pada disk?
Saya telah mencoba melakukan "perbaikan" tetapi sistem mengeluh bahwa tidak ada cukup ruang pada disk ... itu karena semuanya digunakan oleh MongoDB.
sumber
mongodump
,oldDatabase.dropDatabase()
,mongorestore --db newDatabase dump/oldDatabase
.Meskipun pendekatan mongodump / drop / mongorestore di atas akan berfungsi dengan baik dari perspektif teknis, itu akan mengharuskan Anda untuk membuat database offline saat Anda melakukannya, yang akan menjadi peristiwa yang mempengaruhi layanan.
Jika Anda ingin melakukan ini tanpa downtime DAN jika Anda menggunakan Kumpulan Replika MongoDB [1], Anda dapat melakukannya seperti ini:
Kemudian ulangi langkah-langkah di atas untuk masing-masing anggota lain dalam Set Replika.
[1] https://docs.mongodb.org/manual/tutorial/deploy-replica-set )
sumber
Menurut FAQ ini https://docs.mongodb.com/manual/faq/storage/#faq-disk-size
satu-satunya cara adalah dengan melakukan hal berikut:
sumber