मैंने REINDEX
एक डेटाबेस में अनुक्रमित करने के लिए एक स्क्रिप्ट लिखी । उनमें से एक यहां पर है:
echo -e "\nreindex for unq_vbvdata_vehicle started at: `date "+%F %T"`" >> ${LOG_FILE}
psql -U ${USERNAME} -h ${HOSTNAME} -d ${DBNAME} -c "REINDEX INDEX scm_main.unq_vbvdata_vehicle;"
if [[ ${?} -eq 0 ]]; then
echo "reindex for unq_vbvdata_vehicle finished at: `date "+%F %T"`" >> ${LOG_FILE}
else
echo "reindex for unq_vbvdata_vehicle failed" >> ${LOG_FILE}
exit 1
fi
समस्या यह है कि मैं इस स्क्रिप्ट को स्टैंडअलोन मोड में नहीं चला सकता। psql
हर बार जब यह चलता है पासवर्ड संकेत दे रहा है। इसकी भी दो सीमाएँ हैं:
मैं बिना पासवर्ड वाले डेटाबेस पर उपयोगकर्ता नहीं बना सकता।
क्योंकि
REINDEX
तालिकाओं में ताले, मुझेsleep <num>
प्रत्येक के बीच उपयोग करना चाहिएREINDEX
।
क्या कोई स्वचालित समाधान है?
peer
स्थानीय कनेक्शन के लिए प्रमाणीकरण विधि भी है । वर्तमान में केवल लिनक्स, बीएसडी, ओएस एक्स या सोलारिस (विंडोज के लिए नहीं)।