यहां प्री-प्रोसेसिंग के लिए एक आसान स्क्रिप्ट है pg_dump
संस्करण नियंत्रण में अंतर और भंडारण के लिए इसे और अधिक उपयुक्त बनाने के लिए आउटपुट:
https://github.com/akaihola/pgtricks
pg_dump_splitsort.py
डंप को निम्न फाइलों में विभाजित करता है:
0000_prologue.sql
:सब कुछ पहली कॉपी तक0001_<schema>.<table>.sql
.
.NNNN_<schema>.<table>.sql
:प्रत्येक तालिका के लिए डेटा पहली फ़ील्ड द्वारा क्रमबद्ध9999_epilogue.sql
:अंतिम कॉपी के बाद सब कुछ
तालिका डेटा के लिए फ़ाइलें क्रमांकित हैं ताकि डेटाबेस को फिर से बनाने के लिए सभी फ़ाइलों का एक सरल सॉर्ट किया गया संयोजन उपयोग किया जा सके:
$ cat *.sql | psql <database>
मैंने पाया है कि डंप के बीच अंतर पर एक त्वरित नज़र डालने का एक अच्छा तरीका है meld
का उपयोग करना संपूर्ण निर्देशिका पर उपकरण:
$ meld old-dump/ new-dump/
डंप को संस्करण नियंत्रण में संग्रहीत करना भी अंतरों पर एक अच्छा दृष्टिकोण देता है। अलग-अलग रंगों का उपयोग करने के लिए गिट को कॉन्फ़िगर करने का तरीका यहां दिया गया है:
# ~/.gitconfig
[color]
diff = true
[color "diff"]
frag = white blue bold
meta = white green bold
commit = white red bold
नोट: यदि आपने टेबल बना/छोड़ दी/नाम बदल दिया है, तो सभी .sql
. को हटाना याद रखें नए डंप को पोस्ट-प्रोसेस करने से पहले फ़ाइलें।