मैं कसम खाता हूँ कि जैसे-जैसे मैं अपने Oracle करियर में आगे और आगे बढ़ता जा रहा हूँ, मेरे पास Oracle की पृष्ठभूमि प्रक्रियाओं को ध्यान में रखते हुए एक कठिन और कठिन समय है। मैं इसे बड़े होने के लिए चाक-चौबंद करना चाहता हूं, लेकिन इसमें खुदाई करने के बाद, मुझे पूरा यकीन है कि यह ओरेकल की 11g में पृष्ठभूमि प्रक्रियाओं का विस्फोट है जो मुझे फिट कर रहा है।
इससे पहले आज, मैं ग्रिड कंट्रोल में उत्पादन डेटाबेस प्रदर्शन टैब देख रहा था। मेरा 3-नोड आरएसी क्लस्टर उच्च सीपीयू का अनुभव कर रहा था इसलिए मैंने नीचे ड्रिल किया और देखा कि अधिकांश सीपीयू चक्र एनएसए 2 नामक पृष्ठभूमि प्रक्रिया से थे। क्या?!?!?! NSA2 क्या है? मुझे पूरा यकीन है कि इसका राष्ट्रीय सुरक्षा से कोई लेना-देना नहीं है।
इस पृष्ठभूमि प्रक्रिया की Google खोज करते समय, मुझे प्रत्येक Oracle पृष्ठभूमि प्रक्रिया का त्वरित विवरण देने के लिए एक अच्छी क्वेरी मिली। आपको इसे SYS के रूप में चलाने की आवश्यकता होगी क्योंकि यह X$ तालिकाओं से पूछताछ करता है:
column EXTERNAL_NAME format a13
;
column INTERNAL_NAME format a13
set lin 120
SELECT x$ksbdd.ksbddidn AS external_name,
x$ksmfsv.ksmfsnam AS internal_name, x$ksbdd.ksbdddsc AS description
FROM x$ksbdd, x$ksbdp, x$ksmfsv
WHERE x$ksbdd.indx = x$ksbdp.indx AND x$ksbdp.addr = x$ksmfsv.ksmfsadr
ORDER BY 1
मेरे 11.2.0.2 डेटाबेस में, इस क्वेरी ने 296 पंक्तियाँ लौटा दीं! कोई आश्चर्य नहीं कि मैं नहीं रख सकता। मुझे याद है जब मैं अपने सिर के ऊपर से सभी पृष्ठभूमि प्रक्रियाओं को सूचीबद्ध कर सकता था (SMON, PMON, ARCH, DBWR, LGWR, CKPT, और RECO)। प्रत्येक नया Oracle संस्करण पृष्ठभूमि प्रक्रियाओं की संख्या बढ़ाता है, जो शायद एक अच्छी बात है। लेकिन डीबीए के लिए कभी-कभी समस्याओं का निदान करना मुश्किल हो जाता है।
तो NSA2 क्या है? यह मेरे स्टैंडबाय डेटाबेस में संग्रहीत रीडो लॉग को शिपिंग के लिए जिम्मेदार एक फिर से परिवहन प्रक्रिया है। एक बार जब मैंने उपरोक्त क्वेरी से विवरण देखा, तो यह स्पष्ट था।
इसलिए अपनी यात्रा में मिलने वाली सभी अद्भुत पृष्ठभूमि प्रक्रियाओं को देखने के लिए अपने डेटाबेस में पढ़ें। सूची में मेरे पसंदीदा में से एक टेस्ट है।
अद्यतन - 09/12/2012 - इस ब्लॉग प्रविष्टि को लिखने के बाद, मैंने पाया कि Oracle ने पहले से ही डेटाबेस संदर्भ के परिशिष्ट F में पृष्ठभूमि प्रक्रियाओं का दस्तावेजीकरण किया है। मुझे यकीन नहीं है कि ओरेकल ने इस परिशिष्ट को कब शुरू किया था और अगर मुझे इसके बारे में पता होता, तो मैं एनएसएएक्स प्रक्रिया को देखता। लेकिन ऊपर दी गई स्क्रिप्ट अभी भी मज़ेदार है और इसका उपयोग उन नई पृष्ठभूमि प्रक्रियाओं को खोजने के लिए किया जा सकता है जिन्हें Oracle ने प्रलेखित नहीं किया है।