2014-10-28 14 views
12

मेरी समस्या इस साइट पर अन्य इनपुट और सुझावों के समान है, लेकिन किसी ने भी मेरी मदद नहीं की है। MongoDB स्थापित करने के बाद, शुरू नहीं हुआ है क्योंकि डेटाबेस नहीं चल रहा है।MongoDB: 127.0.0.1:27017 से कनेक्ट करने में विफल, कारण: त्रुटि: 61 कनेक्शन अस्वीकार

पहले मोंगो को चलाने के लिए कोशिश करते हैं और मैं इस उत्तर दिया:

Mac-Pro-de-User: ~ user $ mongo 
MongoDB shell version: 2.6.4 
connecting to: test 
2014-10-28T10: 47: 08713-0700 warning: Failed to connect to 127.0.0.1:27017, reason: errno: 61 Connection refused 
2014-10-28T10: 47: 08713-0700 Error: could not connect to server 127.0.0.1:27017 (127.0.0.1) Attempt connection failed at src/mongo/shell/mongo.js: 146 
exception: connect failed 

फिर mongod जाँच करने के लिए कोशिश करते हैं और मैंने जवाब इस:

Mac-Pro-de-User: ~ user $ mongod 
mongod --help for help and startup options 
2014-10-28T10: 59: 34485-0700 [initandlisten] MongoDB starting: pid = 926 port = 27017 dbpath =/data/db host = 64-bit Mac-Pro-de-Ernesto.local 
2014-10-28T10: 59: 34485-0700 [initandlisten] 
2014-10-28T10: 59: 34485-0700 [initandlisten] ** WARNING: soft rlimits too low. Number of files is 256, Should be at Least 1000 
2014-10-28T10: 59: 34485-0700 [initandlisten] db version v2.6.4 
2014-10-28T10: 59: 34485-0700 [initandlisten] git version: 3a830be0eb92d772aa855ebb711ac91d658ee910 
2014-10-28T10: 59: 34485-0700 [initandlisten] Build info: Darwin bs-osx108-4 12.5.0 Darwin Kernel Version 12.5.0: Sun Sep 29 13:33:47 PDT 2013; root: xnu-2050.48.12 ~ 1/x86_64 RELEASE_X86_64 BOOST_LIB_VERSION = 1_49 
2014-10-28T10: 59: 34485-0700 [initandlisten] allocator: system 
2014-10-28T10: 59: 34485-0700 [initandlisten] options: {} 
2014-10-28T10: 59: 34486-0700 [initandlisten] journal dir =/data/db/journal 
2014-10-28T10: 59: 34486-0700 [initandlisten] recover: no journal files present, no recovery needed 
2014-10-28T10: 59: 34500-0700 [FileAllocator] allocating new datafile /data/db/local.ns, filling zeroes With ... 
2014-10-28T10: 59: 34500-0700 [FileAllocator] creating directory/data/db/_tmp 
2014-10-28T10: 59: 34512-0700 [FileAllocator] done allocating datafile /data/db/local.ns, size: 16MB, took 0.011 secs 
2014-10-28T10: 59: 34726-0700 [FileAllocator] allocating new datafile /data/db/local.0, filling zeroes With ... 
2014-10-28T10: 59: 35398-0700 [FileAllocator] done allocating datafile /data/db/local.0, size: 64MB, took 0.671 secs 
2014-10-28T10: 59: 35695-0700 [initandlisten] build index on: local.startup_log properties: {v: 1, key: {_id: 1}, name: "_id_" ns "local.startup_log"} 
2014-10-28T10: 59: 35695-0700 [initandlisten] index added to empty collection 
2014-10-28T10: 59: 35695-0700 [initandlisten] Local command $ cmd command. Create {create: "startup_log" size: 10485760, capped: true} ntoreturn: 1 KeyUpdates: 0 numYields: 0 reslen: 37 1194ms 
2014-10-28T10: 59: 35695-0700 [initandlisten] waiting for connections on port 27017 
2014-10-28T11: 00: 34516-0700 [clientcursormon] mem (MB) res: 33 virt: 2653 
2014-10-28T11: 00: 34516-0700 [clientcursormon] mapped (incl journal view): 160 
2014-10-28T11: 00: 34516-0700 [clientcursormon] connections: 0 

फिर से कनेक्ट करने और कुछ समय बिताने के लिए, और फिर से कोशिश फिर वही कहता है:

2014-10-28T11: 05: 34589-0700 [clientcursormon] mem (MB) res: 33 virt: 2653 
2014-10-28T11: 05: 34589-0700 [clientcursormon] mapped (incl journal view): 160 
2014-10-28T11: 05: 34589-0700 [clientcursormon] connections: 0 

और इसी तरह। यदि आप मदद कर सकते हैं तो इसकी सराहना करेंगे।

पुनश्च: वहां पहले से ही/डेटा/777 अनुमति के साथ डाटाबेस है, और मैं OSX मावेरिक्स उपयोग कर रहा हूँ 10.9.5

+0

बस इसे बाहर डालना - मैंने बस अपना कंप्यूटर चालू और बंद कर दिया और फिर से काम करना शुरू कर दिया। यह मेरे साथ दो बार हुआ है – James111

उत्तर

19

आप अलग रूप में एक ही टर्मिनल में इन आदेशों की सभी चल रहे हैं आपके टाइमस्टैम्प के रूप में कार्यवाही का सुझाव है? (यदि नहीं, तो मैं ठीक से निदान करने के लिए विफलताओं और लॉग के बीच ओवरलैप देखने की उम्मीद करूंगा)।

  1. एक खोल शुरू, एक गैर चल डेटाबेस से कनेक्ट करने का प्रयास (कनेक्शन अस्वीकार कर दिया)
  2. डेटाबेस शुरू, 0 कनेक्शन देखकर:

    यदि हां, तो तुम क्या कर रहे इस प्रकार है लॉग

  3. डेटाबेस (Ctrl-C या समान) को रोक रहा है, एक खोल शुरू करने, फिर से कनेक्ट करने के लिए विफल रहता है क्योंकि डेटाबेस नीचे
  4. बंद किया गया है डेटाबेस शुरू, लॉग में 0 कनेक्शन देखकर
  5. दोहराना

डेटाबेस को खोल के साथ समवर्ती रूप से चलने की आवश्यकता है ताकि आप उससे जुड़ सकें। इसलिए आपको एक टर्मिनल में mongod प्रक्रिया शुरू करनी चाहिए, इसे चलाना छोड़ दें, और उसके बाद एक नया टर्मिनल (या टैब) खोलें और mongo कमांड को अभी भी चल रहे डेटाबेस से कनेक्ट करने के लिए चलाएं। दूसरा विकल्प run mongod as a daemon है, जो आपको लौटने के बाद उसी टर्मिनल में mongo कमांड चलाने की अनुमति देगा।

नोट: आपके पास 777 अनुमतियों वाला कोई फ़ोल्डर नहीं होना चाहिए, इसकी आवश्यकता नहीं है और यह एक महत्वपूर्ण सुरक्षा जोखिम है।

+1

धन्यवाद, यह काम किया। पृष्ठभूमि में मोंगोड चलाएं और मोंगो बेचना से पहुंचा जा सकता है। क्या आप मुझे बता सकते हैं कि इस फ़ोल्डर के लिए आप किस प्रकार की अनुमति देते हैं। धन्यवाद फिर से =) –

+1

मान लीजिए कि यह आपके स्वामित्व में है और आप अपने आप के रूप में मोंगोड चला रहे हैं (सुडो का उपयोग नहीं कर रहे हैं), तो 755 ठीक होगा, आप बस यह दुनिया को लिखना नहीं चाहते हैं। यदि यह आपके स्वामित्व में नहीं है तो इसे पहले दिखाया गया है ('chown -R उपयोगकर्ता: कर्मचारी/डेटा/डीबी' - उपयोगकर्ता को अपने वास्तविक उपयोगकर्ता नाम से प्रतिस्थापित करें)। –

+0

बहुत बहुत धन्यवाद =) बहुत उपयोगी था = डी –

1

बस इस आदेश को आज़माएं।

sudo chown MongoDB

और

sudo सेवा /tmp/mongodb-27017.sock mongod पुनः आरंभ

1

फिक्स्ड!

कारण /etc/mongodb.conf में dbpath चर था। पहले, मैं mongodb 1 का उपयोग कर रहा था।8, जहां डीबीपीएथ के लिए डिफ़ॉल्ट मान/डेटा/डीबी था। अपस्टार्ट जॉब mongodb (जो mongodb-10gen पैकेज के साथ आता है) mongod को --config /etc/mongodb.conf विकल्प के साथ आमंत्रित करता है।

एक समाधान के रूप में, मुझे केवल/डेटा/डीबी निर्देशिका के मालिक को दोबारा बदलना पड़ा। टर्मिनल में करने के लिए "/ डेटा" स्थान जाएँ और फिर टाइप

sudo chown -R <username>:foldername

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

sudo chown -R raja db/

0

नमस्ते सिर्फ जाँच

इस तरह

यदि आपने/डेटा/डीबी पथ बनाया है और यदि आपने किया तो 755 प्रति दें chmod के साथ मिशन।

+1

एसओ में आपका स्वागत है! इस प्रश्न का पहले से ही एक स्वीकार्य उत्तर है जिसे लेखक ने पुष्टि की थी। कृपया उत्तर जोड़ने से बचें जब तक कि वे कुछ नया प्रदान न करें। इसके अलावा 777 के साथ चलना एक सुरक्षा मुद्दा हो सकता है और इससे बचा जाना चाहिए। – ext

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