क्या पोस्टग्रेज़ का उपयोग कर डेटाबेस में एक ही टेबल का बैकअप बनाने का कोई तरीका है? और कैसे? क्या यह pg_dump कमांड के साथ भी काम करता है?पोस्टग्रेज़ डेटाबेस में एक ही तालिका का बैकअप कैसे बनाएं?
उत्तर
उपयोग --table
बताने के लिए pg_dump
क्या तालिका यह बैकअप के लिए है:
pg_dump --host localhost --port 5432 --username postgres --format plain --ignore-version --verbose --file "C:\temp\filename.backup" --table public.tablename dbname
pg_dump -h स्थानीय होस्ट -p 5432 यू postgres -d mydb आयकर My_table> backup.sql
आप एक ही तालिका का बैकअप ले सकते हैं लेकिन मैं पूरे डेटाबेस का बैकअप लेने का सुझाव दूंगा और फिर आपको जो भी टेबल चाहिए उसे पुनर्स्थापित करने का सुझाव दूंगा। पूरे डेटाबेस का बैकअप रखना हमेशा अच्छा होता है।
आपका लिंक अभी तक मर चुका है; ( – Vogel612
आप Ubuntu पर कर रहे हैं,
- अपने postgres उपयोगकर्ता के लिए लॉग इन
sudo su postgres
pg_dump -d <database_name> -t <table_name> > file.sql
सुनिश्चित करें कि आप आदेश जहां postgres
उपयोगकर्ता है क्रियान्वित कर रहे हैं अनुमतियां लिखें (उदाहरण: /tmp
)
संपादित
आप किसी अन्य कंप्यूटर में .sql डंप करना चाहते हैं, तो आप sql फ़ाइल में बचाया हो रही मालिक जानकारी लंघन पर विचार करना पड़ सकता है। यदि आप एक ग्राफिकल यूजर इंटरफेस पसंद करते हैं
आप pg_dump --no-owner -d <database_name> -t <table_name> > file.sql
यदि आप चाहते हैं तो क्या होगा सभी टेबल, प्रत्येक के नाम को निर्दिष्ट किए बिना? – shekeine
बस -t विकल्प को हटा दें! 'pg_dump -d <डेटाबेस_name>> file.sql' –
मुझे नहीं पता कि क्यों --d विकल्प psql9.3 के लिए मान्य नहीं है और दिया गया आदेश मेरे लिए काम नहीं करता है। कार्य करना एक है ** pg_dump -U उपयोगकर्ता नाम db_name -t table_name> fileName ** –
और कैसे है कि बैकअप फ़ाइल को पुनर्स्थापित करने के लिए। (.backup), मैंने 'pg_restore --host localhost --port 5432 --username postgres --dbname" anydb "--table public.tablename -Ft --verbose" /path/filename.backup "का उपयोग किया लेकिन यह बाहर आया: 'pg_restore: [tar archiver] भ्रष्ट टैर हेडर - –
' psql -U उपयोगकर्ता नाम-डी डेटाबेस -1 -f your_dump.sql' – rnaud