में कुछ को छोड़कर सभी डेटाबेस को कैसे छोड़ें, मैं कुछ को छोड़कर सभी डेटाबेस छोड़ना चाहता हूं। आइए कहें कि 20 डेटाबेस हैं और मैं उनमें से 18 को हटाना चाहता हूं लेकिन 2 रखना क्योंकि यह नवीनतम है और उपयोग में है।पोस्टग्रेज़
कृपया सुझाव दें।
में कुछ को छोड़कर सभी डेटाबेस को कैसे छोड़ें, मैं कुछ को छोड़कर सभी डेटाबेस छोड़ना चाहता हूं। आइए कहें कि 20 डेटाबेस हैं और मैं उनमें से 18 को हटाना चाहता हूं लेकिन 2 रखना क्योंकि यह नवीनतम है और उपयोग में है।पोस्टग्रेज़
कृपया सुझाव दें।
सबसे पहले, psql टर्मिनल में निम्न क्वेरी निष्पादित करें।
select 'drop database "'||datname||'";'
from pg_database
where datistemplate=false;
यह सभी डेटाबेस के लिए drop database
आदेश उत्पन्न होगा। परिणाम को एक टेक्स्ट एडिटर में कॉपी करें और जिसे आप रखना चाहते हैं उसे हटाएं (हटाएं) और इसे dd.sql
फ़ाइल के रूप में सहेजें। और यह इस तरह निष्पादित करें:
psql -d postgres -f dd.sql
स्वीकार किए जाते हैं जवाब थोड़े इसे पता चलता है, विभिन्न डेटाबेस छोड़ने मेरे लिए विशेष रूप से कठिन था, इसलिए मैं इस आपरेशन को कम करने के लिए एक सहायक पटकथा लिखी: https://github.com/Kraymer/ezdropdb
संक्षेप में, आप में प्रवेश एक पैटर्न जिसे आप दबाने वाले डेटाबेस को मेल करना चाहते हैं, तब मेल खाना चाहिए, फिर सभी डीबी नामों के परिणाम सूचीबद्ध हैं और एक अंतिम संकेत है जहां आप उनमें से कौन से ड्रॉप (प्रोजेक्ट पेज पर सीएफ स्क्रीनशॉट) दर्ज कर सकते हैं।
अपने हटाए गए 18 डेटाबेस के लिए "डेटाबेस डेटाबेस डेटाबेस ड्रॉप" .. – SkyWalker
त्वरित उत्तर के लिए धन्यवाद! मुझे एक स्क्रिप्ट चाहिए जहां मैं केवल 2 डेटाबेस नामों का उल्लेख करना चाहता हूं जिन्हें मैं रखना चाहता हूं। – ManishD
@ user3800715 ... और जब आपने अपनी पसंद की स्क्रिप्टिंग भाषा का उपयोग करके स्वयं को इस स्क्रिप्ट को लिखने का प्रयास किया, तो आप कहां फंस गए? –