2013-03-03 9 views
20

मैंने ट्यूटोरियल पर देखा है कि वे --fork का उपयोग मोंगोड के पैरामीटर के रूप में करते हैं। लेकिन जब मैं ऐसा करने की कोशिश करता हूं, तो यह अज्ञात विकल्प --fork कहता है। तो विंडोज़ पर --fork mongodb कैसे करें?विंडोज़ में mongodb कांटा

+1

हाँ --fork, एक लिनक्स बात है मुझे नहीं लगता कि विंडोज़ – Sammaye

उत्तर

11

--fork वास्तव में एक लिनक्स कमांड नहीं है जो विंडोज या mongod कमांड नहीं है। मुझे विश्वास नहीं है कि विंडोज़ पर भी यही मौजूद है।

लिनक्स यहाँ दो पुरातन है, fork और exec हालांकि विंडोज केवल वास्तव में createProcess जो प्रभावी रूप से fork -और- exec है।

सेवा सेट अप करना और fork मोड में इसे चलाने के समान नहीं है, एक सेवा init.d स्क्रिप्ट की तरह है, हालांकि वर्तमान में यह वास्तव में एकमात्र तरीका है।

Cygwin को यहां बताए गए विंडोज पर कांटा का अनुकरण कर सकते हैं, बहुत धीरे से,: What is the closest thing windows has to fork()?

+0

शुरू आदेश का उपयोग कर सकते हैं के लिए एक है है तो यह कमांड प्रॉम्प्ट – tgkprog

2

विंडोज fork तंत्र का समर्थन नहीं करता है जैसे यूनिक्स-एलिक्स डू, विंडोज पर निकटतम समकक्ष सेवा के रूप में मोंगोड चलाने के लिए होगा, जैसा कि the Mongo manual में बताया गया है।

21

आप start /b लिख सकते हैं - mongod आदेश से पहले (/ b साधन नई cmd खिड़की के बिना निष्पादित)। यह आपके mongod कमांड एसिंक्रोनस और रिलीज कंसोल प्रॉम्प्ट शुरू करेगा। तो, इसी तरह का प्रभाव है, जैसे fork

यह .bat स्क्रिप्ट में इस्तेमाल किया जा सकता उदाहरण के लिए, शुरू करने प्रतिकृति सेट:

शुरू/b mongod --replSet M101 --logpath "1.log" --dbpath डेटा \ RS1 - पोर्ट 27017 --smallfiles

शुरू/b mongod --replSet M101 --logpath "2.log" --dbpath डेटा \ RS2 --port 27018 --smallfiles

शुरू/b mongod --replSet M101 --logpath "3.log" --dbpath डेटा \ rs3 --port 27019 --smallfiles

...

+1

कैसे आप तो प्रत्येक या mongods के किसी भी बंद कर देंगे पर अपने में शुरू होता है ? – sdfor

+3

mongo localhost: 27017 --eval "db.adminCommand ({shutdown: 1})" mongo localhost: 27018 --eval "db.adminCommand ({shutdown: 1})" mongo localhost: 27019 --eval "db .adminCommand ({शट डाउन: 1}) " – Hersh

+0

पस्किल, टास्क मैनेजर या रीबूट का भी उपयोग कर सकते हैं :-) – tgkprog

0

कमांड - फोर्क केवल लिनक्स/यूनिक्स के लिए काम करता है। यदि आपको पृष्ठभूमि में मोंगोड चलाने के लिए आवश्यकता है, तो विंडोज़ पर जो सेवा के रूप में मोंगोड स्थापित करके हासिल किया जा सकता है।

जब mongodb सेवा स्थापित करने के लिए mongod --install विकल्प का उपयोग करें, तो --dbpath और --logpath आवश्यक हैं। मेरे मामले में, मुझे सेवा स्थापित करने के लिए व्यवस्थापक कमांड कंसोल का उपयोग करने की आवश्यकता है।

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

mongod --dbpath=C:\mongodb\data --logpath=C:\mongodb\data\log\service.log --install 

फिर सेवा का नाम है और किसी भी संभावित त्रुटियों सहित अन्य जानकारी देखने के लिए लॉग फ़ाइल देखें।

2014-06-25T18:21:14.245-0700 Trying to install Windows service 'MongoDB' 
2014-06-25T18:21:14.253-0700 Service 'MongoDB' (MongoDB) installed with command line 'C:\mongodb-win32-x86_64-2008plus-2.6.1\bin\mongod.exe --dbpath=C:\mongodb\data --logpath=C:\mongodb\data\log\service.log --service' 
2014-06-25T18:21:14.254-0700 Service can be started from the command line with 'net start MongoDB' 

डिफ़ॉल्ट सेवा नाम "MongoDB" है। सेवा स्थापित करते समय आप सेवा नाम के साथ सेवा नाम का नाम दे सकते हैं।

फिर शुद्ध उपयोग के साथ सेवा शुरू करें।

net use MongoDB 

सेवा स्थापित करते समय ध्यान दें, --dbpath और --log के लिए पूर्ण पथ का उपयोग करना बेहतर है। अन्यथा सेवा शुरू करने में कोई समस्या हो सकती है। विवरण यहां चर्चा की गई है: Cannot start MongoDB as a service

2

--fork विकल्प विंडोज उपयोगकर्ताओं के लिए MongoDB के लिए नहीं है और आप इस अलग विंडो में हर mongod आदेश पर अमल करना होगा: यूनिक्स की तरह प्लेटफार्मों विकल्प के लिए

mongod --replSet m101 --logpath "1.log" --dbpath /data/rs1 --port 27017 --smallfiles --oplogSize 64 

mongod --replSet m101 --logpath "2.log" --dbpath /data/rs2 --port 27018 --smallfiles --oplogSize 64 

mongod --replSet m101 --logpath "3.log" --dbpath /data/rs3 --port 27019 --smallfiles --oplogSize 64 

MongoDB --fork

किलिए प्रक्रिया चलाता mongod के लिए एक डेमॉन मोड सक्षमपृष्ठभूमि। यह ऑपरेशन का सामान्य तरीका है, उत्पादन में और उत्पादन-जैसे वातावरण, लेकिन परीक्षण के लिए वांछनीय नहीं हो सकता है।

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