परिचय
हमने हाल ही में दिखाया कि उबंटू 18.04 में MongoDB कैसे इंस्टॉल करें। एक बार जब आप अपने डेटाबेस को सफलतापूर्वक तैनात कर लेते हैं, तो चलते समय इसके प्रदर्शन की निगरानी करने की आवश्यकता होती है। यह डेटाबेस प्रशासन के तहत सबसे महत्वपूर्ण कार्यों में से एक है।
सौभाग्य से, MongoDB इसके प्रदर्शन और गतिविधि को पुनः प्राप्त करने के लिए विभिन्न विधियाँ प्रदान करता है। इस लेख में, हम एक चल रहे MongoDB इंस्टेंस की स्थिति के बारे में आंकड़े रिपोर्ट करने के लिए निगरानी उपयोगिताओं और डेटाबेस कमांड को देखेंगे।
1. Mongostat
Mongostat कार्यक्षमता में vmstat निगरानी टूल के समान है, जो लिनक्स, फ्रीबीएसडी, सोलारिस के साथ-साथ MacOS जैसे सभी प्रमुख यूनिक्स-जैसे ऑपरेटिंग सिस्टम पर उपलब्ध है। Mongostat का उपयोग आपके डेटाबेस की स्थिति का त्वरित अवलोकन प्राप्त करने के लिए किया जाता है; यह एक चल रहे mongod या mongos इंस्टेंस का डायनामिक रियल-टाइम व्यू प्रदान करता है। यह प्रकार के अनुसार डेटाबेस ऑपरेशन की गिनती पुनः प्राप्त करता है, जैसे इन्सर्ट, क्वेरी, अपडेट, डिलीट और बहुत कुछ।
आप mongostat को निम्नानुसार चला सकते हैं। ध्यान दें कि यदि आपके पास प्रमाणीकरण सक्षम है, तो उपयोगकर्ता पासवर्ड को सिंगल कोट्स में डालें ताकि त्रुटि से बचा जा सके, विशेष रूप से यदि इसमें विशेष वर्ण हैं।
$ mongostat -u "root" -p '=@!#@%$admin1' --authenticationDatabase "admin"
अधिक mongostat उपयोग विकल्पों के लिए, निम्न कमांड टाइप करें।
$ mongostat --help
2. Mongotop
Mongotop एक चल रहे MongoDB इंस्टेंस का डायनामिक रियल-टाइम व्यू भी प्रदान करता है। यह उस समय की मात्रा को ट्रैक करता है जो एक MongoDB इंस्टेंस डेटा पढ़ने और लिखने में खर्च करता है। यह डिफ़ॉल्ट रूप से हर सेकंड मान लौटाता है।
$ mongotop -u "root" -p '=@!#@%$admin1' --authenticationDatabase "admin"
अधिक mongotop उपयोग विकल्पों के लिए, निम्न कमांड टाइप करें।
$ mongotop --help
3. serverStatus कमांड
सबसे पहले, आपको mongo शेल में लॉग इन करने के लिए निम्न कमांड चलाने की आवश्यकता है।
$ mongo -u "root" -p '=@!#@%$admin1' --authenticationDatabase "admin"
फिर serverStatus कमांड चलाएं, जो इंस्टेंस के बारे में आंकड़े एकत्र करके डेटाबेस की स्थिति का अवलोकन प्रदान करता है।
>db.runCommand( { serverStatus: 1 } )
या
>db.serverStatus()
4. dbStats कमांड
dbStats कमांड एक विशेष डेटाबेस के लिए स्टोरेज आंकड़े लौटाता है, जैसे उपयोग किए गए स्टोरेज की मात्रा, डेटाबेस में निहित डेटा की मात्रा, और ऑब्जेक्ट, कलेक्शन, और इंडेक्स काउंटर।
>db.runCommand({ dbStats: 1 } )
या
>db.stats()
5. collStats
collStats कमांड का उपयोग dbStats द्वारा प्रदान किए गए समान आंकड़ों को कलेक्शन स्तर पर एकत्र करने के लिए किया जाता है, लेकिन इसके आउटपुट में कलेक्शन में ऑब्जेक्ट की संख्या, कलेक्शन का आकार, कलेक्शन द्वारा उपभोग की गई डिस्क स्पेस की मात्रा, और इसके इंडेक्स के बारे में जानकारी शामिल होती है।
>db.runCommand( { collStats : "aurthors", scale: 1024 } )
6. replSetGetStatus कमांड
replSetGetStatus कमांड उस सर्वर के दृष्टिकोण से रेप्लिका सेट की स्थिति को आउटपुट करता है जिसने कमांड को प्रोसेस किया। इस कमांड को निम्न रूप में admin डेटाबेस के विरुद्ध चलाया जाना चाहिए।
>db.adminCommand( { replSetGetStatus : 1 } )
उपरोक्त उपयोगिताओं और डेटाबेस कमांड के अलावा, आप समर्थित थर्ड-पार्टी मॉनिटरिंग टूल का उपयोग सीधे, या उनके अपने प्लगइन के माध्यम से भी कर सकते हैं। इनमें mtop, munin और nagios शामिल हैं।
अधिक जानकारी के लिए, देखें: MongoDB डॉक्यूमेंटेशन के लिए मॉनिटरिंग।
अभी के लिए बस इतना ही! इस लेख में, हमने एक चल रहे MongoDB इंस्टेंस की स्थिति के बारे में आंकड़े रिपोर्ट करने के लिए कुछ उपयोगी निगरानी उपयोगिताओं और डेटाबेस कमांड को कवर किया है। नीचे दिए गए फीडबैक फॉर्म का उपयोग करके हमसे कोई भी प्रश्न पूछें या अपने विचार साझा करें।