मैंने अपना पहला MongoDb सेटअप करने के लिए MongoDb डॉक्स का अनुसरण किया,
जब मैं कमांड का उपयोग करके MongoDB शुरू करता हूं
C:\Program Files\MongoDB\Server\3.4\bin\mongod.exe
जवाबों:
MongoDB को डेटाबेस को स्टोर करने के लिए एक फ़ोल्डर की आवश्यकता होती है। एक C:\data\db\
निर्देशिका बनाएँ :
mkdir C:\data\db
और फिर शुरू करें MongoDB:
C:\Program Files\MongoDB\Server\3.4\bin\mongod.exe
कभी-कभी C:\data\db
पिछले स्थापना के कारण फ़ोल्डर पहले से मौजूद है। इसलिए यदि इस कारण से mongod.exe
काम नहीं करता है, तो आप C:\data\db
फ़ोल्डर से सभी सामग्रियों को हटा सकते हैं और mongod.exe
फिर से निष्पादित कर सकते हैं।
/mongodb_data/db
MacOS उपयोगकर्ताओं के लिए इस समस्या को ठीक करने के लिए:
आपको निम्न चरणों से गुजरने की आवश्यकता है:
"DB" निर्देशिका बनाएँ। यह वह जगह है जहां मैंगो डेटा फाइलें लाइव होंगी। आप निर्देशिका को डिफ़ॉल्ट स्थान पर चलाकर बना सकते हैं:
sudo mkdir -p /data/db
सुनिश्चित करें कि /data/db
निर्देशिका को चलाने से सही अनुमतियाँ हैं:
sudo chown -R `id -un` /data/db
अब आप सभी सेट हैं और आप sudo mongod
Mongo सर्वर को शुरू करने के लिए चला सकते हैं ।
यदि आप केवल चलाते हैं तो यह काम नहीं कर रहा है mongod
स्रोत ।
mkdir: /data/db: Read-only file system
पहली कमांड चलाते समय मिलता है । मैं इसे कैसे ठीक कर सकता हूं? धन्यवाद।
मेरे मैक पर समान मुद्दा (ब्रू का उपयोग करके) का उपयोग करके हल किया गया:
sudo mongod
डिफ़ॉल्ट db फ़ोल्डर C:\data\db
को विंडोज़ में बदलने के लिए , कमांड है:
--dbpath
उदाहरण के लिए:
\mongod --dbpath C:\myfolder
मैक उपयोगकर्ता
इसके बजाय MongoDB चलाने के बजाय:
sudo mongod
आप mongod
इसके बजाय उपयोग कर सकते हैं यदि आप:
sudo chmod -R ugo+rw data
यदि आपको sudo
मोंगोडब ( sudo mongod
) चलाते समय उपयोग करने की आवश्यकता है , तो इसका मतलब है कि आपने मोंगोडब डेटा फ़ोल्डर पर पढ़ने और लिखने की अनुमति नहीं दी है
कृपया निम्नलिखित कदम उठाएँ:
जैसा कि अन्य दोस्तों ने उल्लेख किया है, आपको अपने डेटाबेस डेटा को संग्रहीत करने के लिए पहले एक निर्देशिका बनाना चाहिए। यह फ़ोल्डर कुछ इस तरह हो सकता है:
C: \ मोंगो-डेटा
कमांड लाइन नेविगेट से जहां आपने मोंगॉडब को स्थापित किया है और जहां मोंगोड.ईएक्स रहता है। मेरे मामले में पूरा रास्ता है:
C: \ Program Files \ MongoDB \ Server \ 3.4 \ bin
यहां से mongod.exe चलाएं और इसे अपने द्वारा बनाए गए फ़ोल्डर में जाने का मार्ग झंडा --dbpath का उपयोग करके निम्नानुसार बनाएं:
mongod.exe --dbpath "C: \ mongo-data"
कृपया ध्यान दें : यदि आप खिड़कियों पर हैं, तो ठीक से चलाने के लिए उपरोक्त में डबल-कोट्स ("") का उपयोग करना आवश्यक है।
इस तरह से आपको निम्न जैसा कुछ मिलेगा:
2017-06-14T12:45:59.892+0430 I NETWORK [thread1] waiting for connections on port 27017
यदि आप खिड़कियों पर एकल उद्धरण ('') का उपयोग करते हैं, तो आपको मिलेगा:
2017-06-14T01:13:45.965-0700 I CONTROL [initandlisten] shutting down with code:100
आशा है कि यह मुद्दे को हल करने में मदद करता है।
mongod
कमांड के साथ मोंगो डीबी दानव को चलाने के लिए , आपके पास एक डेटाबेस निर्देशिका होनी चाहिए, शायद आपको चलाने की आवश्यकता है:
mkdir C:\data\db
इसके अलावा, MongoDB को उस निर्देशिका के लिए लिखने की अनुमति होनी चाहिए या इसे सुपरयूज़र अनुमतियों के साथ चलाया जाना चाहिए, जैसे sudo mongod
।
मैं निम्न त्रुटि प्राप्त करता रहा जब मैंने मैंगोडब (मैक ओएस पर) शुरू करने की कोशिश की।
"shutting down with code:100"
मैं निम्नलिखित कमांड का उपयोग कर रहा था:
./mongod --dbpath=~/mongo-data
मेरे लिए यह तय था कि मुझे "=" चिह्न की आवश्यकता नहीं थी और यह त्रुटि पैदा कर रहा था। तो मैंने किया
./mongod --dbpath ~/mongo-data
बस इसे बाहर फेंकना चाहते थे क्योंकि किसी भी तरह से त्रुटि निर्दिष्ट नहीं करती है कि यह समस्या है। मैंने लगभग ~ / mongo-data निर्देशिका की सामग्री को हटा दिया, यह देखने के लिए कि क्या मदद मिली। खुशी है कि मुझे याद आया कि कभी-कभी सीएलआई आर्ग्स "=" संकेत का उपयोग नहीं करते हैं।
पहले आपको डेटा डायरेक्टरी बनानी होगी जहाँ MongoDB डेटा स्टोर करता है। MongoDB का डिफ़ॉल्ट डेटा निर्देशिका पथ उस ड्राइव पर निरपेक्ष पथ \ data \ db है जिससे आप MongoDB प्रारंभ करते हैं।
अगर आपने C: / ड्राइव में इंस्टॉल किया है तो आपको डेटा \ db डायरेक्टरी बनानी होगी। cmd में इस रन कमांड को करने के लिए
C:\>mkdir data\db
MongoDB शुरू करने के लिए, mongod.exe चलाएँ।
"C:\Program Files\MongoDB\Server\4.2\bin\mongod.exe" --dbpath="c:\data\db"
--Dbpath विकल्प आपके डेटाबेस निर्देशिका को इंगित करता है।
MongoDB से कनेक्ट करें।
"C:\Program Files\MongoDB\Server\4.2\bin\mongo.exe"
सभी काम अच्छे से करने के लिए:
show dbs
1. यदि यह त्रुटि दिखाता है (कोड 100 के साथ बंद हो रहा है) इसका मतलब है कि यह फ़ाइल का वांछित स्थान नहीं ढूंढ रहा है।
1. यदि macOS कैटालिना से पहले इसकी है तो sudo mkdir -p / data / db के साथ डायरेक्टरी बनाएं और इसे
sudo chown -R का उपयोग करने की अनुमति देंid -un
/ data / db ।
1. बी अगर यह कैसिनो कैसिना को आगे करता है तो सुडो mkdir -p / System / Volumes / data / db बनाता है और इसे अनुमति देता है sudo chown -R id -un
/ System / Volumes / data / db।
2. शुरू mongo डीबी काढ़ा सेवाओं mongodb- समुदाय चलाते हैं
3. टाइप mongod या mongod --dbpath / सिस्टम / वॉल्यूम / डेटा / डेटा / डीबी
4.और अगर मोंगोड शो एरर (कोड 48 के साथ बंद हो रहा है), जिसका
मतलब है कि पोर्ट पहले से ही इस्तेमाल किया जा रहा है, तो आप दो काम कर सकते हैं
4.A या तो आप पोर्ट
नंबर mongod --dbpath / System / Volumes / Data / data / db –port 27018 को निर्दिष्ट करके mongod के पोर्ट को बदलते हैं ।
4. बी या आप सूडो द्वारा प्रक्रिया को पाकर उस बंदरगाह पर मार सकते हैं lsof -i: 27017 और फिर कमांड
किल -9 द्वारा मारें
चरण 2 और 3 को फिर से खोलें।
MacOS उपयोगकर्ताओं के लिए नीचे दी गई समस्या का ध्यान रखना:
यदि आप .tgz टारबॉल का उपयोग कर macOS पर MongoDB समुदाय स्थापित कर रहे हैं
(( MacOS 10.15 कैटालिना के साथ शुरू, Apple / डेटा / डीबी के MongoDB डिफ़ॉल्ट डेटा निर्देशिका तक पहुंच को प्रतिबंधित करता है। macOS 10.15 कैटालिना पर, आपको एक अलग डेटा निर्देशिका, जैसे / usr / स्थानीय / var / mongodb का उपयोग करना होगा। )
आप इसे निम्नानुसार हल कर सकते हैं:
(MacOS कैटालिना आगे)
Apple ने सुरक्षा उद्देश्यों के लिए कैटालिना में एक नया वॉल्यूम बनाया। यदि आप कैटालिना पर हैं, तो आपको सिस्टम / वॉल्यूम / डेटा में / डेटा / डीबी फ़ोल्डर बनाने की आवश्यकता है।
इस कमांड का उपयोग करें:
sudo mkdir -p /System/Volumes/Data/data/db
फिर, अनुमति देने के लिए इस आदेश का उपयोग करें:
sudo chown -R `id -un` /System/Volumes/Data/data/db
यह सामान्य की जगह लेगा
sudo mkdir -p /data/db
सुनिश्चित करें कि / data / db डायरेक्टरी को रन करके सही अनुमतियाँ हैं:
sudo chown -R `id -un` /data/db
एक बार जब आप समाप्त कर लेते हैं और शुरू करते हैं तो आप टर्मिनल में निम्नलिखित का उपयोग कर सकते हैं:
sudo mongod --dbpath /System/Volumes/Data/data/db
मेरे मामले में, मुझे एक समान त्रुटि मिली और यह इसलिए हो रहा था क्योंकि मैंने रूट उपयोगकर्ता के साथ मैंगोड चलाया था और जिसने रूट द्वारा केवल एक लॉग फाइल को सुलभ बनाया था। मैं स्वामित्व को रूट से उस उपयोगकर्ता में बदलकर ठीक कर सकता हूं जिसे आप सामान्य रूप से mongod चलाते हैं। लॉग फ़ाइल / var / lib / mongodb / journal / में थी
मैं आप अपने वीएम की जांच के लिए वर्चुअलबॉक्स का उपयोग कर रहा हूं।
docker-machine ssh
df -h
Dev / sda1 को देखें यदि आपके पास कोई खाली जगह नहीं है तो यह बड़ी संख्या में छवियों, या कंटेनरों के कारण हो सकता है। आप उन्हें "docker rm" और "docker rmi" का उपयोग करके हटा सकते हैं
अरविंद।
यह मेरे साथ भी हुआ क्योंकि मैंने टास्क मैनेजर द्वारा MongoDB को रोक दिया था।
बनाना डेटा \ db \: सी फ़ोल्डर और पर MongoDB शुरू कर सी: \ Program Files \ MongoDB \ सर्वर \ 3.4 \ बिन \ mongod.exe मेरे लिए काम किया, के रूप में cespon सुझाव दिया, लेकिन MongoDB मेरी डेटाबेस के किसी भी दिखाई नहीं दिया पहले बनाया गया।
फिर, C: \ data \ db फ़ोल्डर को हटाने और MongoDB इंस्टॉलर के साथ स्थापना की मरम्मत करते हुए, मैंने अपना डेटा पुनर्प्राप्त किया और सामान्य रूप से MongoDB शुरू किया।
(मैं MongoDB के साथ बहुत नया हूं, लेकिन इससे मुझे इस समस्या को हल करने में मदद मिली और डेटा का पूर्वावलोकन हो सकता है)।
टाइप किए गए मैंगोड और त्रुटि हो रही है
त्रुटियाँ:
अपवाद initAndListen: NonExistentPath: डेटा निर्देशिका / डेटा / db नहीं मिला।, समाप्त कर रहा है
कोड 100 के साथ बंद हो जाता है
फिर प्रयास करें (सभी अनुमति के साथ डेटा और डीबी फ़ोल्डर बनाएं)
mongod --dbpath = / डेटा
नए टैब का उपयोग करें और मोंगो टाइप करें।
यदि फिर भी आपको संभावना का सामना करना पड़ रहा है, तो आप mac catalina की जांच कर सकते हैं: ( https://docs.mongodb.com/manual/tutorial/install-mongodb-on-os-x-tarball/ )
खिड़कियों के लिए: https://docs.mongodb.com/manual/tutorial/install-mongodb-on-windows-attatt//
C:\data\db\
नहीं मिली। उपयोग:mkdir C:\data\db