मैं एक एकल mongodb डेटाबेस के लिए दैनिक बैकअप करना चाहता हूं, शायद मोंगोडम्प के साथ। किसी भी डेटा को खोने के लिए, मैं इसे बढ़ाना चाहूंगा ताकि अगर दिन के मध्य में कुछ गलत हो जाए, तो मुझे उस दिन के लिए बदलावों को फिर से चलाने में सक्षम होना चाहिए, जो कि मैंगोरस्टोर करने के बाद विफलता के बिंदु तक है।mongodb के लिए एक incremental बैकअप करना चाहते हैं। Journaling? Oplog?
क्या मैं सही ढंग से समझ रहा हूं कि मुझे इसके लिए एक ओप्लोग का उपयोग करने की आवश्यकता है? या जवाब जर्नल कर रहा है? मैंने निम्नलिखित करने का प्रयास किया:
- मेरे मोंगो डेटाबेस को केवल एक के प्रतिकृति सेट में बदलना, ताकि यह एक ओप्लॉग बनाता है। (यह सुंदर hacky महसूस करता है)
- --oplog विकल्प
- परिवर्तन है कि oplog
हालांकि कुछ भी नहीं कभी oplog में संग्रहीत हो जाता है में दर्ज किया जाना चाहिए प्रदर्शन के साथ mongod पुन: प्रारंभ हो। ऐसे वृद्धिशील बैकअप करने का सबसे अच्छा तरीका क्या है? मैं मूल रूप से mysql binlog को फिर से चलाने के लिए एक समान दृष्टिकोण की तलाश में हूं।
धन्यवाद
स्पष्टीकरण के लिए धन्यवाद, मैंने कल और अधिक देखा है और मैं समझता हूं कि क्या होने की आवश्यकता है। मैं जो करना चाहता हूं वह एक दैनिक मोंगोडम्प करता है, इसे एस 3 में सहेजें, और हर घंटे मेरे ओप्लॉग को एस 3 में भी बचाता है। मेरे पास दो अनुवर्ती प्रश्न हैं यदि आप बहुत दयालु होंगे: 1. मेरा ओप्लोग स्थानीय डेटाबेस में संग्रहीत है और मैं अब इसे मोंगो शैल से एक्सेस करने में सक्षम हूं। ओप्लॉग का बैकअप लेने के लिए, क्या मैं बस अपने सभी स्थानीय प्रतिलिपि बना सकता हूं। (1-एन) और local.ns फाइलें s3 पर? 2. oplogs को फिर से चलाने का सबसे अच्छा तरीका क्या है? क्या mongorestore --oplog इस के लिए पर्याप्त प्रदर्शन है? बहुत बहुत धन्यवाद! –
mongodump --oplog सुनिश्चित करता है कि डंप होने पर बनाई गई किसी भी ओप्लॉग प्रविष्टियों को mongorestore --oplogReplay के साथ फिर से चलाया जा सकता है। डंप समाप्त होने के बाद हुई ओप्लॉग ऑपरेशंस को फिर से चलाने के लिए आप mongorestore --oplogReplay का उपयोग नहीं कर सकते। एक समाधान जिसे आप जांच सकते हैं, हर घंटे ओप्लॉग संग्रह को डंप करना और applyOps कमांड का उपयोग करना है: http://docs.mongodb.org/manual/reference/commands/#applyOps – Jenna
यह हैकी हो सकता है .. लेकिन मुझे लगता है कि मॉन्गोरस्टोर का उपयोग करना --oplogReplay वास्तव में काम किया। मैंने जो किया वह ओप्लोग को मिलाकर, परिणामस्वरूप 'oplog.rs को स्थानांतरित कर दिया गया।bson 'to' dump/oplog.bson 'और mongorestore --oplogReplay चलाया। क्या यह खतरनाक है? यदि यह है तो मैं निश्चित रूप से applyOps तकनीक के साथ जाऊंगा। –