2017-01-16 5 views
7

मैंने अभी एक नया एडब्ल्यूएस लिनक्स एएमआई 2016.09.1 ​​(एचवीएम) शुरू किया और नवीनतम मोंगोड रिलीज डाउनलोड किया। मैं मोंगोडीबी संस्करण 3.0.14 का उपयोग कर रहा हूं। मैं निम्नलिखित के लिए /etc/mongod.conf अद्यतन,मोंगो पुनरारंभ त्रुटि - /var/run/mongodb/mongod.pid मौजूद है

# mongod.conf 

# for documentation of all options, see: 
# http://docs.mongodb.org/manual/reference/configuration-options/ 

# where to write logging data. 
systemLog: 
destination: file 
logAppend: true 
path: /var/log/mongodb/mongod.log 

# Where and how to store data. 
storage: 
dbPath: /var/lib/mongo 
journal: 
enabled: true 
# engine: 
# mmapv1: 
# wiredTiger: 

# how the process runs 
processManagement: 
    fork: true # fork and run in background 
    pidFilePath: /var/run/mongodb/mongod.pid # location of pidfile 

# network interfaces 
net: 
    port: 27017 
# bindIp: 127.0.0.1 # Listen to local interface only, comment to listen on 
    all interfaces. 


#security: 

#operationProfiling: 

#replication: 

#sharding: 

## Enterprise-Only Options 

#auditLog: 

#snmp: 

मैं पहली बार सेवा का उपयोग करने के लिए MongoDB चलाने के लिए,

sudo service mongod start 

सब कुछ ठीक काम करता है। जब मैं MongoDB और पुन: प्रारंभ, रोक

sudo service mongod stop 
sudo service mongod restart 

मैं, तो निम्न त्रुटि,

Error starting mongod. /var/run/mongodb/mongod.pid exists. 

यहाँ, लॉगफ़ाइल में है /var/log/mongodb/mongod.log है मिल

2017-01-16T14:11:16.869+0000 I CONTROL ***** SERVER RESTARTED ***** 
2017-01-16T14:11:16.872+0000 I CONTROL [initandlisten] MongoDB starting : 
    pid=2820 port=27017 dbpath=/var/lib/mongo 64-bit hos 
    t=ip-10-0-0-91 
2017-01-16T14:11:16.872+0000 I CONTROL [initandlisten] db version v3.0.14 
2017-01-16T14:11:16.872+0000 I CONTROL [initandlisten] git version: 
    08352afcca24bfc145240a0fac9d28b978ab77f3 
2017-01-16T14:11:16.872+0000 I CONTROL [initandlisten] build info: Linux 
    ip-10-63-190-181 3.4.43-43.43.amzn1.x86_64 #1 SMP Mon 
    May 6 18:04:41 UTC 2013 x86_64 BOOST_LIB_VERSION=1_49 
2017-01-16T14:11:16.872+0000 I CONTROL [initandlisten] allocator: tcmalloc 
2017-01-16T14:11:16.872+0000 I CONTROL [initandlisten] options: { config: 
    "/etc/mongod.conf", net: { port: 27017 }, processMan 
    agement: { fork: true, pidFilePath: "/var/run/mongodb/mongod.pid" }, 
    storage: { dbPath: "/var/lib/mongo", journal: { enabled: t 
    rue } }, systemLog: { destination: "file", logAppend: true, path: 
    "/var/log/mongodb/mongod.log" } } 
2017-01-16T14:11:16.893+0000 E NETWORK [initandlisten] Failed to unlink 
    socket file /tmp/mongodb-27017.sock errno:1 Operation 
    not permitted 
2017-01-16T14:11:16.893+0000 I -  [initandlisten] Fatal Assertion 
    28578 
2017-01-16T14:11:16.893+0000 I -  [initandlisten] 

***aborting after fassert() failure 

मैंने कई समस्याओं को समाधान के साथ इस समस्या के बारे में पोस्ट किया है लेकिन उनमें से कोई भी काम नहीं कर रहा है। पूरे दिन रविवार को यह पता लगाने की कोशिश कर रहा था। पहले एडब्ल्यूएस इंस्टेंस और मोंगो चलाने से पहले कभी भी यह समस्या नहीं थी।

+0

'sudo rm /var/run/mongodb/mongod.pid' आज़माएं, फिर सेवा को फिर से शुरू करें –

+0

हैलो डेव, हाँ, मैंने पहली चीजों में से एक था। काम नहीं किया। फ़ाइल में केवल एक पंक्ति है, "2 9 43"। मुझे लगता है कि कुछ मोंगोडीबी प्रक्रिया में से कुछ का पीआईडी ​​है। – skmansfield

उत्तर

2

ठीक है, मेरे पहले जवाब में मेरे पास एक बेहतर समाधान मिला। मेरे पिछले जवाब ने लक्षणों को आसानी से हटा दिया। मैंने देखा कि कई अन्य लोगों को कई अन्य निर्देशिकाओं को बोना पड़ा था। मेरा मानना ​​है कि समस्या यह है कि मोंगोड ठीक से पुनरारंभ नहीं करता है और कई निर्देशिकाओं को गलत तरीके से सेट अप करता है क्योंकि यह विफल रहता है। मुझे संदेह है कि कई थ्रेड चल रहे हैं, इसलिए जो निर्देशिका गलत तरीके से सेट हो जाती है वह कुछ हद तक यादृच्छिक है। मैं अमेज़ॅन के एडब्ल्यूएस एएमआई लिनक्स रिलीज का उपयोग कर रहा हूं और मोंगोडीबी 3.4 स्थापित कर रहा हूं। मुझे

https://docs.mongodb.com/manual/tutorial/install-mongodb-on-amazon/ 

पर बहुत अच्छी मोंगोडीबी इंस्टॉल स्क्रिप्ट मिली, तो यहां ठीक है। मैंने इसे कई बार परीक्षण किया और यह हर बार काम करता था। जैसा कि आप सामान्य रूप से मोंगो स्थापित करें। सहायक होने पर उपर्युक्त स्क्रिप्ट का प्रयोग करें।इससे पहले कि आप mongod, निम्न आदेश निष्पादित

sudo chkconfig mongod on 

शुरू आप देखेंगे कि इसके बाद के संस्करण स्थापित स्क्रिप्ट chkconfig लेकिन स्क्रिप्ट जहां यह देखा नहीं हो सकता है के तल पर प्रकाश डाला गया है। यह सुनिश्चित करेगा कि आप प्रत्येक बार मोंगोड को सफलतापूर्वक पुनरारंभ कर सकते हैं। यह अन्य लिनक्स संस्करणों पर काम करना चाहिए।

9

ठीक है, समस्या मिली। मैंने उपरोक्त डेव मैपल द्वारा सुझाए गए अनुसार /var/run/mongodb/mongod.pid फ़ाइल को हटा दिया है। हालांकि, मोंगोडीबी अभी भी नहीं चलेगा। मैं फिर से लॉग फ़ाइल को देखा और अब यह,

/tmp/mongodb-27017.sock 

इस फाइल के बारे में भौंकने यह देखा है कि यह सही अनुमति नहीं थी देखा। मैंने कोशिश की,

sudo chown mongod:mongod /tmp/mongodb-27017.sock 

और यह ठीक काम किया। अब जब मैं मोंगोडीबी को कई बार शुरू/बंद/पुनरारंभ करता हूं तो मुझे अब समस्या नहीं है। मुझे लगता है कि फ़ाइल अनुमतियों ने मोंगोडीबी को निर्देशिका में ठीक से साफ नहीं किया है और बाएं /var/run/mongodb/mongod.pid फ़ाइल को छोड़ दिया है। इसने "त्रुटि शुरू करने में त्रुटि। /var/run/mongodb/mongod.pid मौजूद है" त्रुटि। हालांकि, यह असली समस्या नहीं थी। वास्तविक समस्या/tmp/अनुमतियां थीं। Mongod.pid फ़ाइल को हटाए जाने के बाद लॉग फ़ाइल को देखकर और मोंगोद को पुनरारंभ करने से अनुमति समस्या दिखाई गई। तो यहाँ क्या समस्या ठीक हो गई है,

sudo rm /var/run/mongodb/mongod.pid 
sudo chown mongod:mongod /tmp/mongodb-27017.sock 

मुझे यकीन है कि अगर मैं सिर्फ कोशिश की "sudo chown mongod: mongod /tmp/mongodb-27017.sock" सही चल रहा MongoDB बचा है | से पहले नए सर्वर पर स्थापित करने के बाद MongoDB समस्या। इस पर एक पूरी तरह से अच्छा फ्लोरिडा धूप दिन बर्बाद कर दिया।

+1

वही सेटअप और समस्या है, लेकिन अभी भी मेरे लिए शुरू नहीं होगी। मुझे 'आरएम/var/lib/mongo/mongod.lock' भी था और फिर भी यह सोचा कि डिफ़ॉल्ट पता पहले से ही उपयोग में था। यह सुनिश्चित करना था कि '/ var/run/mongodb/mongod.pid' फिर से चला गया था और 'mongod.lock' फिर से चला गया था और फिर' mkdir/data/db' और' chown -R mongod: mongod/data' इससे पहले अंत में शुरू, बंद, और पुनरारंभ किया। सौभाग्य। – Rachel

+1

मैं वापस गया और मेरे इंस्टॉल नोट्स को देखा। मैं इन दिनों अपने सर्वर पर स्थापित सब कुछ पर इंस्टॉल नोट्स रखता हूं। बहुत सारी खोज समस्याओं को खत्म कर देता है। मैंने उन पर सावधानीपूर्वक नजर डाली और ध्यान दिया कि मैंने निम्नलिखित नोट किया है "यह सुनिश्चित करने के लिए कि मोंगो पुनः बूट के बाद पुनरारंभ करने के बाद निम्न आदेश दर्ज करें: sudo chkconfig mongod"। मेरा मानना ​​है कि यह मूल समस्या है। पहले आप मोंगो बूट करने के बाद आपको chkconfig कमांड निष्पादित करने की आवश्यकता है। – skmansfield

+0

धन्यवाद। यह मेरी समस्या हल करता है। मेरा ढेर सेंटोस 6.5 है –

1

आप विन्यास फाइल में आईपी बदल सकता है:

vim /etc/mongod.conf

# bindIp: 127.0.0.1 # Listen to local interface only, comment to listen on 
    all interfaces. 
    bindIp: xxx.xxx.xxx.xxx 
-1

सर्वर रोक, आप पुनः आरंभ करने की कोशिश कर रहे हैं के बाद। आप केवल सर्वर शुरू कर सकते हैं। यही कारण है कि आप रोक त्रुटि प्राप्त कर रहे हैं। और इस त्रुटि के बारे में चिंता करने की कोई आवश्यकता नहीं है।

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