postgresql
एक उत्पादन DB के लिए बैकअप स्क्रिप्ट
खोज…
वाक्य - विन्यास
- स्क्रिप्ट आपको निम्नलिखित सिंटैक्स के साथ प्रत्येक निष्पादन के लिए एक बैकअप निर्देशिका बनाने की अनुमति देता है: डेटाबेस बैकअप निर्देशिका का नाम + निष्पादन की तारीख और समय
- उदाहरण: prodDir22-11-2016-19-1955
- इसके बनने के बाद, यह निम्नलिखित सिंटैक्स के साथ दो बैकअप फाइल बनाता है: डेटाबेस का नाम + निष्पादन की तारीख और समय
- उदाहरण :
- dbprod22-11-2016-19h55.backup (डंप फ़ाइल)
- dbprod22-11-2016-19h55.sql (sql फ़ाइल)
- 22-11-2016 @ 19h55 पर एक निष्पादन के अंत में, हम प्राप्त करते हैं:
- /save_bd/prodDir22-11-2016-19h55/dbprod22-11-2016-19h55.backup
- /save_bd/prodDir22-11-2016-19h55/dbprod22-11-2016-19h55.sql
पैरामीटर
पैरामीटर | विवरण |
---|---|
save_db | मुख्य बैकअप निर्देशिका |
dbProd | माध्यमिक बैकअप निर्देशिका |
दिनांक | निर्दिष्ट प्रारूप में बैकअप की तारीख |
dbprod | डेटाबेस का नाम सहेजा जाना है |
/opt/postgres/9.0/bin/pg_dump | Pg_dump बाइनरी के लिए पथ |
-h | उस मशीन का होस्ट नाम निर्दिष्ट करता है जिस पर सर्वर चल रहा है, उदाहरण: लोकलहोस्ट |
-p | टीसीपी पोर्ट या स्थानीय यूनिक्स डोमेन सॉकेट फ़ाइल एक्सटेंशन निर्दिष्ट करता है जिस पर सर्वर कनेक्शन के लिए सुन रहा है, उदाहरण 5432 |
यू | उपयोगकर्ता नाम के रूप में कनेक्ट करने के लिए |
टिप्पणियों
- यदि कोई बैकअप उपकरण जैसे HDPS , या सिमेंटेक बैकअप है , ... प्रत्येक लॉन्च से पहले बैकअप निर्देशिका को खाली करना आवश्यक है।
बैकअप टूल को अव्यवस्थित करने से बचने के लिए क्योंकि पुरानी फ़ाइलों का बैकअप होना चाहिए।
इस सुविधा को सक्षम करने के लिए कृपया एन लाइन 3 को अनकंप्लीमेंट करें।
rm -R / save_db / *
- ऐसे मामले में जहां बजट में बैकअप का साधन नहीं है, व्यक्ति हमेशा कार्य योजनाकार ( क्रोन कमांड ) का उपयोग कर सकता है।
वर्तमान उपयोगकर्ता के लिए क्रोन तालिका को संपादित करने के लिए निम्न कमांड का उपयोग किया जाता है।
crontab -e
11 बजे कैलेंडर के साथ स्क्रिप्ट के लॉन्च का शेड्यूल करें।
0 23 * * * /saveProdDb.sh
saveProdDb.sh
सामान्य तौर पर, हम pgAdmin क्लाइंट के साथ DB का बैकअप लेते हैं। डेटाबेस को बचाने के लिए उपयोग की जाने वाली एक स्क्रिप्ट निम्न है (लिनक्स के तहत) दो स्वरूपों में:
SQL फ़ाइल : PostgreSQL के किसी भी संस्करण पर डेटा के संभावित फिर से शुरू के लिए।
डंप फ़ाइल : वर्तमान संस्करण की तुलना में उच्च संस्करण के लिए।
#!/bin/sh
cd /save_db
#rm -R /save_db/*
DATE=$(date +%d-%m-%Y-%Hh%M)
echo -e "Sauvegarde de la base du ${DATE}"
mkdir prodDir${DATE}
cd prodDir${DATE}
#dump file
/opt/postgres/9.0/bin/pg_dump -i -h localhost -p 5432 -U postgres -F c -b -w -v -f "dbprod${DATE}.backup" dbprod
#SQL file
/opt/postgres/9.0/bin/pg_dump -i -h localhost -p 5432 -U postgres --format plain --verbose -f "dbprod${DATE}.sql" dbprod
Modified text is an extract of the original Stack Overflow Documentation
के तहत लाइसेंस प्राप्त है CC BY-SA 3.0
से संबद्ध नहीं है Stack Overflow