यह लगभग सही है।
कृपया नहीं करें PostgreSQL के लिए पोर्ट 5432 का उपयोग करें। उस सीमा के बाहर एक गैर-डिफ़ॉल्ट पोर्ट चुनें, जैसे 5599 या कुछ और। Postgresql.conf को संशोधित करके और port
. सेट करके पोर्ट बदलें निर्देश। आपको बस include_dir = conf.d
append को जोड़ना उपयोगी लग सकता है या आपके मुख्य postgresql.conf
. में समान फिर एक datadir\conf.d\myapp.conf
create बनाएं आपके कॉन्फ़िगरेशन ओवरराइड के साथ।
initdb
. के लिए पासवर्ड सेट करने के लिए बिना किसी संकेत के, --pwfile=/path/to/file
पास करें विकल्प। पहली पंक्ति को पासवर्ड के रूप में पढ़ा जाएगा। देखें initdb.
आपका अनइंस्टॉल प्लान उचित और सही है।
हालांकि उन्नयन के बारे में सोचें - अपने आप को एक कोने में चित्रित न करें। आप 9.4 और pg_upgrade
के समानांतर 9.5 इंस्टॉल करने में सक्षम होना चाहेंगे , जब तक कि आप केवल डंप और पुनर्स्थापना का उपयोग नहीं करना चाहते।
मेरा सुझाव है कि PostgreSQL बायनेरिज़ को %PROGRAMFILES%\MyApp\PostgreSQL\9.4
में स्थापित करें . आपको शायद डेटाबेस को %PROGRAMDATA%\MyApp\PostgreSQL\9.4
में रखना चाहिए आपके ऐप के %PROGRAMFILES%
. के बजाय निर्देशिका। (PostgreSQL इंस्टालर को भी ऐसा ही करना चाहिए; इसका वर्तमान व्यवहार एक ऐतिहासिक आर्टिफैक्ट है जिसे ठीक किया जाना चाहिए)।
कृपया दस्तावेज़ करें कि आपका एप्लिकेशन PostgreSQL को बंडल करता है ताकि कोई भी इसे "साफ़" न करे, और इसलिए हमारे पास अभी तक कोई अन्य ऐप नहीं है जो भ्रमित उपयोगकर्ताओं को pgsql-General पर उगलता है। नाराज उपयोगकर्ताओं को यह समझाते हुए थका देने वाला हो जाता है कि "हमने" उनके सिस्टम पर PostgreSQL स्थापित नहीं किया है, हम इसे हटा नहीं सकते हैं, यह शायद इसलिए है क्योंकि यह उनके द्वारा उपयोग की जाने वाली किसी चीज़ द्वारा स्थापित किया गया था, और यदि वे इसे हटा देते हैं तो यह काम करना बंद कर देगा . इसी तरह, यह उन उपयोगकर्ताओं को समझाते हुए थकाऊ हो जाता है जिन्होंने अभी-अभी PostgreSQL प्रक्रियाओं को मार डाला और अपने PostgreSQL डेटा को हटा दिया कि हम उनका पोकर ट्रैकर (या जो भी) डेटाबेस वापस नहीं पा सकते हैं क्योंकि उन्होंने इसे अभी-अभी हटा दिया है...
सुनिश्चित करें कि आपका ऐप उपयोगकर्ताओं के लिए PostgreSQL डंप और पुनर्स्थापित करने के लिए कार्यक्षमता को उजागर करता है।
उपयोगकर्ता मैनुअल को स्पष्ट रूप से स्पष्ट करना चाहिए कि उन्हें आपके ऐप में डेटा की सुरक्षा के लिए अतिरिक्त बैकअप कदम उठाने की आवश्यकता है। आप विश्वसनीय PostgreSQL बैकअप प्राप्त करने के लिए केवल Windows बैकअप का उपयोग नहीं कर सकते क्योंकि यह कई फ़ाइलें हैं जिन्हें एक साथ कॉपी किया जाना चाहिए; यह प्रत्येक फ़ाइल को ठीक से कॉपी करेगा, लेकिन संयुक्त परिणाम तब तक अनुपयोगी होगा जब तक कि बैकअप से पहले PostgreSQL को रोक नहीं दिया गया। लाइव बैकअप करने के लिए आपको विशेष कदम उठाने होंगे - pg_start_backup()
, कॉपी करें, pg_stop_backup()
और अतिरिक्त WAL खंडों को संग्रहित करें, या pg_basebackup
. का उपयोग करें ।