MongoDB में बैकअप बनाने के लिए, या तो फ़ाइलों को सीधे कॉपी करें, या कई बैकअप/प्रबंधन टूल में से किसी एक का उपयोग करें।
MongoDB डेटाबेस का बैकअप लेने के कई तरीके हैं:
- डेटा फ़ाइलें कॉपी करें
mongodump
का उपयोग करें- MongoDB क्लाउड मैनेजर का उपयोग करें
- ऑप्स प्रबंधक का उपयोग करें
डेटा फ़ाइलें कॉपी करें
आप उन अंतर्निहित डेटा फ़ाइलों की प्रतिलिपि बना सकते हैं जिनका उपयोग MongoDB डेटा संग्रहीत करने के लिए करता है। ये डेटा निर्देशिका में स्थित हैं।
डेटा निर्देशिका का डिफ़ॉल्ट स्थान /data/db है , हालांकि, यदि आप किसी भिन्न स्थान का उपयोग करते हैं तो आपको इसके बजाय उसका उपयोग करना होगा।
पूर्ण बैकअप के लिए आपको पूरी निर्देशिका की प्रतिलिपि बनानी चाहिए।
यदि वॉल्यूम इसका समर्थन करता है तो आप स्नैपशॉट का भी उपयोग कर सकते हैं। उदाहरण के लिए, Linux पर, स्नैपशॉट बनाने के लिए LVM (लॉजिकल वॉल्यूम मैनेजर) का उपयोग करें, फिर आप उस स्नैपशॉट से अपने बैकअप साइट/दूरस्थ स्थान पर कॉपी कर सकते हैं।
mongodump
का उपयोग करें
आप mongodump
. का उपयोग कर सकते हैं डेटा का बैकअप लेने के लिए और mongorestore
इसे पुनर्स्थापित करने के लिए।
चल रहे सर्वर की सभी सामग्री का त्वरित रूप से बैकअप लेने के लिए, एक नया टर्मिनल/कमांड प्रॉम्प्ट खोलें, उस निर्देशिका में बदलें जिसे आप /dump चाहते हैं। बनाने के लिए फ़ोल्डर, और निम्नलिखित टाइप करें:
mongodump
यदि MongoDB बिन निर्देशिका आपके PATH में नहीं है, तो आपको पूरा पथ प्रदान करने की आवश्यकता होगी।
यदि आप पाते हैं कि आप mongodump नहीं चला सकते हैं , सुनिश्चित करें कि आप mongo . से बाहर निकल चुके हैं उपयोगिता, या mongodump चलाने से पहले एक नई टर्मिनल/कमांड प्रॉम्प्ट विंडो खोली , क्योंकि यह एक अलग उपयोगिता है।
परिणामी संदेश:
2016-07-12T15:44:34.467+0700 writing music.artists to 2016-07-12T15:44:34.467+0700 writing music.musicians to 2016-07-12T15:44:34.467+0700 writing music.catalog to 2016-07-12T15:44:34.468+0700 done dumping music.artists (13 documents) 2016-07-12T15:44:34.469+0700 done dumping music.musicians (10 documents) 2016-07-12T15:44:34.469+0700 done dumping music.catalog (10 documents) 2016-07-12T15:44:34.470+0700 writing music.producers to 2016-07-12T15:44:34.470+0700 writing music.jazz to 2016-07-12T15:44:34.470+0700 done dumping music.producers (5 documents) 2016-07-12T15:44:34.470+0700 done dumping music.jazz (1 document) 2016-07-12T15:44:34.534+0700 writing test.restaurants to 2016-07-12T15:44:34.705+0700 done dumping test.restaurants (25359 documents)
और यह मेरे मैक के फाइंडर पर कैसा दिखता है:
जैसा कि आप देख सकते हैं, इसने dump . नामक एक फ़ोल्डर बनाया है , फिर प्रत्येक डेटाबेस के लिए एक फ़ोल्डर, फिर सभी संग्रह और उनके मेटाडेटा को संबंधित डेटाबेस फ़ोल्डर में डंप कर दिया। मैंने संगीत का विस्तार किया है उस निर्देशिका के भीतर फ़ाइलों को दिखाने के लिए डेटाबेस फ़ोल्डर।
ध्यान दें कि mongodump
आउटपुट फ़ाइलों को अधिलेखित कर देता है यदि वे बैकअप डेटा फ़ोल्डर में मौजूद हैं, इसलिए mongodump
चलाने से पहले किसी भी फ़ाइल को स्थानांतरित करना या उसका नाम बदलना सुनिश्चित करें जिसे आपको रखने की आवश्यकता है फिर से।
एकल डेटाबेस का बैकअप लें
आप --db
. में डेटाबेस का नाम निर्दिष्ट करके एकल डेटाबेस का बैकअप ले सकते हैं पैरामीटर:
mongodump --db=music
एकल संग्रह का बैकअप लें
आप --collection
. में संग्रह का नाम निर्दिष्ट करके एकल संग्रह का बैकअप ले सकते हैं पैरामीटर:
mongodump --db=music --collection=artists
बैकअप स्थान निर्दिष्ट करें
--out
का प्रयोग करें उस निर्देशिका को निर्दिष्ट करने के लिए पैरामीटर जिसमें आप चाहते हैं कि बैकअप लिखा जाए:
mongodump --db music --out /data/backups
अधिक विकल्प
mongodump
डेटा का बैकअप कैसे लिया जाता है, यह निर्दिष्ट करने के लिए कई और विकल्प हैं। आप हमेशा mongodump --help
चला सकते हैं यह देखने के लिए कि कौन से विकल्प उपलब्ध हैं।
एक mongodump
को पुनर्स्थापित करना बैकअप
आप किसी भी mongodump
को पुनर्स्थापित कर सकते हैं mongorestore
. चलाकर बैकअप लें . जो mongodump
. के समान कार्य करता है ।
देखें mongorestore --help
अधिक जानकारी के लिए।
mongodump
और mongorestore
मुख्य रूप से छोटे परिनियोजन के लिए, और एक क्वेरी के आधार पर आंशिक बैकअप और पुनर्स्थापना के लिए, उत्पादन से स्टेजिंग या विकास वातावरण में समन्वयित करने, या एक स्टैंडअलोन के स्टोरेज इंजन को बदलने के लिए अभिप्रेत हैं।
बड़े सिस्टम, या शार्प्ड क्लस्टर, या प्रतिकृति सेट के लिए, अधिक मजबूत बैकअप सिस्टम का उपयोग करें, जैसे MongoDB क्लाउड मैनेजर या Ops Manager।
MongoDB क्लाउड मैनेजर
MongoDB क्लाउड मैनेजर MongoDB के प्रबंधन के लिए एक होस्टेड प्लेटफ़ॉर्म है।
आप अपने MongoDB परिनियोजन से oplog डेटा पढ़कर MongoDB प्रतिकृति सेट और शार्प क्लस्टर का लगातार बैकअप लेने के लिए MongoDB क्लाउड प्रबंधक का उपयोग कर सकते हैं।
MongoDB क्लाउड मैनेजर सब्सक्रिप्शन के आधार पर काम करता है। अधिक जानकारी यहाँ।
ऑप्स प्रबंधक
Ops Manager, MongoDB क्लाउड मैनेजर की तरह है, सिवाय इसके कि यह आपके स्थानीय वातावरण (यानी क्लाउड में नहीं) पर स्थापित है। तो आप अपने MongoDB परिनियोजन की निगरानी, स्वचालित और बैकअप के लिए इसका उपयोग कर सकते हैं।
Ops Manager MongoDB सब्सक्राइबर्स के लिए उपलब्ध है।