2010-01-08 3 views
8

मैंने लिनक्स पर कई पीजीएसक्यूएल डेटाबेस चलाए हैं, और डाटाबेस को रखरखाव स्क्रिप्ट के माध्यम से स्पष्ट रूप से खाली कर दिया है।मैं कैसे बता सकता हूं कि मेरे PGSQL डेटाबेस के लिए Windows Server 2003 पर autovacuum चल रहा है या नहीं? पूर्व-8.x दिनों में

जब 8.x आया तो मैं उन प्रणालियों पर ऑटोवैक्यूम में नहीं गया था क्योंकि यह ठीक काम कर रहा था इसलिए कुछ भी बदलने की जरूरत नहीं थी। तो मैं एक autovacuum विशेषज्ञ नहीं हूँ।

अब 8.x युग के बाद में मुझे अपने आप को कुछ सर्वर PGSQL डेटाबेस के साथ Windows Server 2003 या नए पर चल रहा है।

ऐसा लगता है कि ऑटोवैक्यूम चलाना चाहिए क्योंकि हमने निर्देशों का पालन किया है और इसे .conf फ़ाइल में चालू कर दिया है।

हालांकि डेटाबेस में PGAdmin को जोड़ने से हमें संकेत मिलता है कि हमें VACUUM चलाना चाहिए।

आप कैसे बता सकते हैं कि ऑटोवाक्यूम डिमन चल रहा है और आपके डेटाबेस की देखभाल कर रहा है, और उन्हें सही तरीके से खाली कर रहा है?

+0

यूनिक्स-विशिष्ट उत्तर के लिए http://stackoverflow.com/q/19826467/41906 देखें। –

उत्तर

8

pg_stat_user_tables में कॉलम हैं जो सूची में आखिरी ऑटोवाक्यूम और ऑटोनालिज एक टेबल पर चलते थे - यह एक अच्छा प्रारंभिक बिंदु है। और निश्चित रूप से, लॉगफाइल में ऑटोवैक्यूम क्या कर रहा है इसके बारे में जानकारी होगी।

आप प्रक्रिया एक्सप्लोरर जैसे टूल के साथ postgres.exe प्रक्रियाओं पर विशेष रूप से देख सकते हैं। यूनिक्स पर उपलब्ध पीएस कमांडलाइन जानकारी का अनुकरण करने के लिए विशेष रूप से नामित एक म्यूटेक्स होगा। यह खोजना आसान होना चाहिए। और आप यह सुनिश्चित करने के लिए "ऑटोवैक्यूम" खोज सकते हैं कि यह चल रहा है।

+0

आह। बढ़िया, यह आशाजनक लग रहा है। मेरे पास उस तालिका और लॉगफाइल में चारों ओर एक पोक होगा और इस जवाब को अप्रासंगिक रूप से बढ़ावा देगा। – liamf

संबंधित मुद्दे

 संबंधित मुद्दे