न्यूनतम डाउनटाइम के साथ अमेज़न आरडीएस में हरोकू डेटाबेस को माइग्रेट करें


15

मेरे पास एक हेरोकू पोस्टग्रेज डेटाबेस है और लागत बचाने के लिए इसे अमेजन आरडीएस में माइग्रेट करना चाहते हैं। न्यूनतम डाउनटाइम के साथ ऐसा करने का एक तरीका क्या है? आमतौर पर इसमें वास्तविक समय में डेटाबेस की प्रतिकृति बनाना और फिर मुख्य DB के रूप में प्रतिकृति DB को बढ़ावा देना शामिल होता है।

मुझे पता है कि मैं एक अनुयायी डेटाबेस का उपयोग DB को हर्को के भीतर करने के लिए कर सकता हूं, और मैं अमेज़ॅन टीडीएस के भीतर डीबी को स्थानांतरित करने के लिए रीड प्रतिकृति डेटाबेस का उपयोग कर सकता हूं। क्या हर्को डीबी के डेटाबेस प्रतिकृति बनाने के लिए एक समान विधि है जो मेरे अपने अमेज़ॅन आरडीएस में रहती है?


2
आप RDS में एक गुलाम बना सकते हैं जब सब कुछ दोहराया जाता है, तो मास्टर को RDS को बढ़ावा देने वाले हरोकू मास्टर को हटा दें।
सैम

2
@SamD मुझे नहीं लगा कि अमेज़ॅन ने पोस्टग्रेक्यूएल दासों का समर्थन किया है जो अभी तक बाहर के डेटाबेस से प्राप्त करते हैं। क्या उन्होंने इसे जोड़ा है? मैं इसे docs.aws.amazon.com/AmazonRDS/latest/UserGuide/… में नहीं देखता । यदि इसे जोड़ा गया है, तो एक दस्तावेज़ीकरण लिंक की बहुत सराहना की जाएगी। आप इसे कैसे pg_basebackupशुरू करने के लिए फ़ीड करते हैं ? और विभिन्न प्रमुख संस्करणों के साथ सौदा?
क्रेग रिंगर

जवाबों:


3

बहुत यकीन है कि आप एक पुराने जमाने के डंप और यहाँ पुनर्स्थापित करने जा रहे हैं। डंप में लोड करने की तुलना में अमेज़ॅन किसी अन्य आयात विकल्प की पेशकश नहीं करता है:

http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/PostgreSQL.Procedural.Importing.html

और यहां तक ​​कि अगर उन्होंने किया, तो AFAICT हेरोकू द्वारा पेश किए जाने वाले एकमात्र निर्यात विकल्प pg_dumps हैं (अर्थात बेसबैकअप या बाहरी हॉट स्टैंडबाय नोड सेट करने की क्षमता नहीं):

https://devcenter.heroku.com/articles/heroku-postgres-import-export

यदि आप भाग्यशाली हैं, तो आप एक पोस्टग्रेज संस्करण का उपयोग कर रहे हैं, जो समानांतर pg_dump (9.3+) और समानांतर pg_restore (8.4+) दोनों का समर्थन करने के लिए पर्याप्त है, जो आपके काम को थोड़ा तेज़ कर देगा। और उम्मीद है कि आप एक रखरखाव विंडो ले सकते हैं जिसके दौरान आप अपनी साइट पर लिखते हैं जबकि स्विचओवर चल रहा है ...


1

आप अपने वर्तमान ऐप को आरडीएस डेटाबेस से कनेक्ट कर सकते हैं और इसे हरोकू और आरडीएस दोनों में सम्मिलित कर सकते हैं , मेरा मतलब प्रतिकृति स्थापित करना नहीं है, बस दोनों सर्वरों में सम्मिलित करना है।

एक बार यह सेट हो जाने के बाद आपके पास दोनों डेटाबेस में नए रिकॉर्ड संग्रहीत होंगे।

यह देखना काफी आसान होना चाहिए कि आरडीएस डेटाबेस में पहली पंक्ति को पढ़कर कौन से रिकॉर्ड गायब हैं (उदाहरण के लिए: आईडी 100 में आईडी 100 या उससे कम रिकॉर्ड वाले सभी रिकॉर्ड)। तब तक एक सरल निर्यात स्क्रिप्ट लिखना बहुत मुश्किल नहीं होना चाहिए जब तक कि आपके पास बहुत सारी टेबल न हों।

आशा करता हूँ की ये काम करेगा


1

ऐसा लगता है कि AWS DMS (डेटाबेस माइग्रेशन सर्विस) बाहरी SQL इंस्टेंस से डेटा माइग्रेट करने का समर्थन करता है। मैं एक माइग्रेशन कार्य सेट करने में सक्षम था जो डेटा और हर्को से आरडीएस में परिवर्तन की प्रतिकृति बनाता है। क्या यह वास्तव में मेरे लिए काम करता है अभी तक देखा जाना है;)

--- संपादित करें ---

ऐसा लगता है कि डीएमएस जैसी सेवाएं हेरोकू के साथ काम नहीं करती हैं, क्योंकि उन्हें अपने डेटाबेस पर हेरोकू की तुलना में अधिक विशेषाधिकार प्राप्त भूमिकाओं की आवश्यकता होती है: https://help.heroku.com/E10ZZ6IJ/why-can-ti-use-third-party-tools करने वाली दोहराने-मेरी-Heroku-postgres-डेटाबेस करने वाली एक गैर-Heroku-डेटाबेस

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.