MongoDb कोड 100 के साथ बंद हो जाता है [बंद]


90

मैंने अपना पहला MongoDb सेटअप करने के लिए MongoDb डॉक्स का अनुसरण किया,

जब मैं कमांड का उपयोग करके MongoDB शुरू करता हूं

C:\Program Files\MongoDB\Server\3.4\bin\mongod.exe

मुझे निम्नलिखित त्रुटि मिलती है यहाँ छवि विवरण दर्ज करें

जवाबों:


148

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फिर से निष्पादित कर सकते हैं।


यदि आप त्रुटि का विवरण देखते हैं, तो एक पंक्ति है जो कहती है कि निर्देशिका C:\data\db\ नहीं मिली। उपयोग:mkdir C:\data\db
सेस्पन

@ इस्सपोन गोल्ड टैग ..: पी
अरविंद

मेरा वास्तव में/mongodb_data/db
फैब्रिकियो

सुनिश्चित करें कि डेटा dir और फ़ाइलें mongodb उपयोगकर्ता और समूह (linux पर) के स्वामित्व में हैं।
पीटरएम

69

MacOS उपयोगकर्ताओं के लिए इस समस्या को ठीक करने के लिए:

आपको निम्न चरणों से गुजरने की आवश्यकता है:

"DB" निर्देशिका बनाएँ। यह वह जगह है जहां मैंगो डेटा फाइलें लाइव होंगी। आप निर्देशिका को डिफ़ॉल्ट स्थान पर चलाकर बना सकते हैं:

sudo mkdir -p /data/db

सुनिश्चित करें कि /data/dbनिर्देशिका को चलाने से सही अनुमतियाँ हैं:

sudo chown -R `id -un` /data/db

अब आप सभी सेट हैं और आप sudo mongodMongo सर्वर को शुरू करने के लिए चला सकते हैं ।

यदि आप केवल चलाते हैं तो यह काम नहीं कर रहा है mongod

स्रोत


3
उबंटू में 16.04
मनोज राणा

मुझे mkdir: /data/db: Read-only file systemपहली कमांड चलाते समय मिलता है । मैं इसे कैसे ठीक कर सकता हूं? धन्यवाद।
एलसी

@ एलसी सूद को mkdir कमांड में जोड़ें
Itay Bachar


15

डिफ़ॉल्ट db फ़ोल्डर C:\data\dbको विंडोज़ में बदलने के लिए , कमांड है:

--dbpath

उदाहरण के लिए:

\mongod --dbpath C:\myfolder

7

मैक उपयोगकर्ता

इसके बजाय MongoDB चलाने के बजाय:

sudo mongod

आप mongodइसके बजाय उपयोग कर सकते हैं यदि आप:

  1. मोंगोडब के डेटा फ़ोल्डर का पता लगाएँ (आमतौर पर ~ / डेटा)
  2. के साथ पढ़ने + लिखने की अनुमति जोड़ें sudo chmod -R ugo+rw data

यदि आपको sudoमोंगोडब ( sudo mongod) चलाते समय उपयोग करने की आवश्यकता है , तो इसका मतलब है कि आपने मोंगोडब डेटा फ़ोल्डर पर पढ़ने और लिखने की अनुमति नहीं दी है


1
इसके लिए धन्यवाद। मुझे पढ़ने / लिखने / डेटा के लिए अनुमति जोड़ने की जरूरत है, मुझे समझ नहीं आ रहा है कि मैंने क्या गलत किया है, लेकिन मैंने अपना डेटा फ़ोल्डर ~ / एप्लिकेशन / मोंगोडब / डेटा
vinsentos

3

कृपया निम्नलिखित कदम उठाएँ:

  1. जैसा कि अन्य दोस्तों ने उल्लेख किया है, आपको अपने डेटाबेस डेटा को संग्रहीत करने के लिए पहले एक निर्देशिका बनाना चाहिए। यह फ़ोल्डर कुछ इस तरह हो सकता है:

    C: \ मोंगो-डेटा

  2. कमांड लाइन नेविगेट से जहां आपने मोंगॉडब को स्थापित किया है और जहां मोंगोड.ईएक्स रहता है। मेरे मामले में पूरा रास्ता है:

    C: \ Program Files \ MongoDB \ Server \ 3.4 \ bin

  3. यहां से 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

आशा है कि यह मुद्दे को हल करने में मदद करता है।


1

mongodकमांड के साथ मोंगो डीबी दानव को चलाने के लिए , आपके पास एक डेटाबेस निर्देशिका होनी चाहिए, शायद आपको चलाने की आवश्यकता है:

mkdir C:\data\db

इसके अलावा, MongoDB को उस निर्देशिका के लिए लिखने की अनुमति होनी चाहिए या इसे सुपरयूज़र अनुमतियों के साथ चलाया जाना चाहिए, जैसे sudo mongod


1

मैं निम्न त्रुटि प्राप्त करता रहा जब मैंने मैंगोडब (मैक ओएस पर) शुरू करने की कोशिश की।

"shutting down with code:100"

मैं निम्नलिखित कमांड का उपयोग कर रहा था:

./mongod --dbpath=~/mongo-data

मेरे लिए यह तय था कि मुझे "=" चिह्न की आवश्यकता नहीं थी और यह त्रुटि पैदा कर रहा था। तो मैंने किया

./mongod --dbpath ~/mongo-data

बस इसे बाहर फेंकना चाहते थे क्योंकि किसी भी तरह से त्रुटि निर्दिष्ट नहीं करती है कि यह समस्या है। मैंने लगभग ~ / mongo-data निर्देशिका की सामग्री को हटा दिया, यह देखने के लिए कि क्या मदद मिली। खुशी है कि मुझे याद आया कि कभी-कभी सीएलआई आर्ग्स "=" संकेत का उपयोग नहीं करते हैं।


1

पहले आपको डेटा डायरेक्टरी बनानी होगी जहाँ 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

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 को फिर से खोलें।


1

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

0

में MacOS : -

यदि आप मोंगो सर्वर चलाते समय पहले से बनाए गए डेटाबेस का मार्ग देना भूल गए हैं, तो उपरोक्त त्रुटि दिखाई देगी।

सुडो ।/ मोंगोड - डबपाथ ../../ongo-data/

संदर्भ

नोट: - ./mongod && ../../mongo-data सापेक्ष पथ है। तो आप इसे पर्यावरण चर में विन्यास से बचा सकते हैं

संदर्भ


0

विंडोज के लिए मुझे एक ही मुद्दा मिला है।

फिक्स था - मुझे कमांड लाइन को प्रशासक के रूप में चलाने की आवश्यकता है।


1
मैं कुछ इस तरह से जवाब देने का सुझाव दूंगा: "अगर आपके पास विंडोज के तहत यह समस्या है, तो सुनिश्चित करें कि आप एक प्रशासक के रूप में कमांड लाइन चला रहे हैं"।
फाइलनॉर

0

यदि आपके पास पहले से निर्देशिका है, तो dir अनुमतियों की जाँच करें या sudo के साथ mongo को पुनरारंभ करने का प्रयास करें। sudo brew सेवाएं मोंगॉडब शुरू करते हैं


0

मेरे मामले में, मुझे एक समान त्रुटि मिली और यह इसलिए हो रहा था क्योंकि मैंने रूट उपयोगकर्ता के साथ मैंगोड चलाया था और जिसने रूट द्वारा केवल एक लॉग फाइल को सुलभ बनाया था। मैं स्वामित्व को रूट से उस उपयोगकर्ता में बदलकर ठीक कर सकता हूं जिसे आप सामान्य रूप से mongod चलाते हैं। लॉग फ़ाइल / var / lib / mongodb / journal / में थी


0

मैं आप अपने वीएम की जांच के लिए वर्चुअलबॉक्स का उपयोग कर रहा हूं।

docker-machine ssh

df -h

Dev / sda1 को देखें यदि आपके पास कोई खाली जगह नहीं है तो यह बड़ी संख्या में छवियों, या कंटेनरों के कारण हो सकता है। आप उन्हें "docker rm" और "docker rmi" का उपयोग करके हटा सकते हैं


0

यदि आप MongoDB संस्करण बदल रहे हैं तो यह निकास कोड भी दिया जाएगा और डेटा निर्देशिका असंगत है, जैसे कि डाउनग्रेड। पुरानी निर्देशिका को कहीं और ले जाएं, और एक नई निर्देशिका बनाएं (अन्य उत्तरों में दिए गए निर्देशों के अनुसार)।


0

अरविंद।

यह मेरे साथ भी हुआ क्योंकि मैंने टास्क मैनेजर द्वारा MongoDB को रोक दिया था।

बनाना डेटा \ db \: सी फ़ोल्डर और पर MongoDB शुरू कर सी: \ Program Files \ MongoDB \ सर्वर \ 3.4 \ बिन \ mongod.exe मेरे लिए काम किया, के रूप में cespon सुझाव दिया, लेकिन MongoDB मेरी डेटाबेस के किसी भी दिखाई नहीं दिया पहले बनाया गया।

फिर, C: \ data \ db फ़ोल्डर को हटाने और MongoDB इंस्टॉलर के साथ स्थापना की मरम्मत करते हुए, मैंने अपना डेटा पुनर्प्राप्त किया और सामान्य रूप से MongoDB शुरू किया।

(मैं MongoDB के साथ बहुत नया हूं, लेकिन इससे मुझे इस समस्या को हल करने में मदद मिली और डेटा का पूर्वावलोकन हो सकता है)।


0

टाइप किए गए मैंगोड और त्रुटि हो रही है

त्रुटियाँ:

अपवाद initAndListen: NonExistentPath: डेटा निर्देशिका / डेटा / db नहीं मिला।, समाप्त कर रहा है

कोड 100 के साथ बंद हो जाता है

फिर प्रयास करें (सभी अनुमति के साथ डेटा और डीबी फ़ोल्डर बनाएं)

mongod --dbpath = / डेटा

नए टैब का उपयोग करें और मोंगो टाइप करें।

> dbs का उपयोग करें

यदि फिर भी आपको संभावना का सामना करना पड़ रहा है, तो आप 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//

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.