MongoDB-এ বড় পরিমাণ ডেটা ডিলিট করার পর ডিস্ক স্পেস রিক্লেইম করতে repairDatabase() কমান্ড ব্যবহার করা হয়।
বর্তমান ডেটাবেস চেক করা
> db;
আউটপুট
test
স্টোরেজ স্পেস কম করার কমান্ড
> db.repairDatabase()
আউটপুট
গুরুত্বপূর্ণ নোট
repairDatabase()ডেটাবেস রি-রাইট করে এবং অব্যবহৃত স্পেস রিলিজ করে- এটি ব্লকিং অপারেশন - বড় ডেটাবেসের জন্য وقت নিতে পারে
- পর্যাপ্ত ডিস্ক স্পেস থাকা দরকার (ডেটাবেস সাইজের ২ গুণ)
- MongoDB 4.0+ এ
compactকমান্ডও ব্যবহার করা যায় (ক্লাস্টার মোডে) - রিপ্লিকা সেটে সেকেন্ডারি নোডে রান করুন, তারপর প্রাইমারি ফেইলওভার করান
বিকল্প: compact কমান্ড (MongoDB 4.0+)
db.runCommand({ compact: "collectionName" })
চিতাবনি: প্রোডাকশন এনভায়রনমেন্টে রান করার আগে ব্যাকআপ নিন এবং মেইনটেন্যান্স উইন্ডোতে চালান।