एक पूरे-डीबी पुनर्स्थापना के दौरान असामान्य नहीं है क्योंकि यह एक असाधारण विशाल ऑपरेशन है। यदि आप इसे सामान्य ऑपरेशन के दौरान देखते हैं, तो checkpoint_segmentsस्थायी रूप से त्रुटि संदेश संकेत की तरह अपनी सेटिंग बढ़ाने पर विचार करें ।
आप checkpoint_segmentsपुनर्स्थापना से ठीक पहले उच्च सेटिंग की समस्या पर जा सकते हैं और फिर इसे कम कर सकते हैं। यह वही है जो मैनुअल सुझाव देता है (स्पष्टीकरण सहित) :
अस्थायी रूप से checkpoint_segmentsकॉन्फ़िगरेशन चर बढ़ाने से बड़े डेटा लोड भी तेज हो सकते हैं। ऐसा इसलिए है क्योंकि PostgreSQL में बड़ी मात्रा में डेटा लोड करने से सामान्य चेकपॉइंट फ़्रीक्वेंसी ( checkpoint_timeoutकॉन्फ़िगरेशन चर द्वारा निर्दिष्ट ) की तुलना में अधिक बार होने वाली चौकियों का कारण होगा
। जब भी कोई चेकपॉइंट होता है, तो सभी गंदे पन्नों को डिस्क में फ्लश करना चाहिए। checkpoint_segmentsबल्क डेटा लोड के दौरान अस्थायी रूप से बढ़ने
से, आवश्यक चौकियों की संख्या कम हो सकती है।
अधिक विवरण के साथ संबंधित जवाब:
पोस्टगर्ल्स 9.5
आगामी नई रिलीज़ में एक स्मार्ट तरीका है। बीटा रिलीज़ नोट का हवाला देते हुए :
कॉन्फ़िगरेशन पैरामीटर checkpoint_segmentsको बदलें min_wal_size
और max_wal_size(Heikki Linnakangas)
यह बड़ी संख्या में वाल फ़ाइलों को आवंटित करने की अनुमति देता है, अगर उन्हें ज़रूरत नहीं है तो उन्हें रखे बिना। इस प्रकार के लिए डिफ़ॉल्ट max_wal_size
बढ़ा दिया गया है 1GB।
एक तरफ: विचारों की संख्या मुश्किल से प्रासंगिक है, जिनके पास कोई डेटा नहीं है, बस "नुस्खा", यानी: दृश्य की क्वेरी और कुछ विशेषताएँ। हाथ में सवाल के लिए, मूल रूप से केवल बैकअप फ़ाइल का कुल आकार मायने रखता है।