MongoDB Windows安裝服務(wù)
MongoDB作為一個(gè)基于分布式文件存儲(chǔ)的數(shù)據(jù)庫(kù),近兩年大受追捧。數(shù)據(jù)靈活的存取方式和高效的處理使得它廣泛用于互聯(lián)網(wǎng)應(yīng)用。
最近本人開(kāi)始在Windows 32位平臺(tái)下研究MongoDB的使用,為了方便,本人更喜歡將其安裝為Windows的系統(tǒng)服務(wù)。這樣就不用每次開(kāi)一個(gè)mongod的主流程序了。
但是在網(wǎng)上搜索的命令有時(shí)候并沒(méi)有讓服務(wù)成功注冊(cè),出現(xiàn)若干問(wèn)題。接下來(lái)我將寫(xiě)出我所遇到的問(wèn)題和解決辦法。
首先從MongoDB官方下載最新的發(fā)行版本:http://www.mongodb.org/downloads
目前我所使用的是2.0.2版。
安裝很簡(jiǎn)單,解壓出來(lái)就可以了。我把它放在了D盤(pán)下,以下是目錄結(jié)構(gòu):
C:\Documents and Settings\chaijunkun>d:
D:\&;cd mongodb-win32-i386-2.0.2
D:\mongodb-win32-i386-2.0.2>cd bin
D:\mongodb-win32-i386-2.0.2\bin>dir
驅(qū)動(dòng)器 D 中的卷沒(méi)有標(biāo)簽。
卷的序列號(hào)是 F4CA-B47C
D:\mongodb-win32-i386-2.0.2\bin 的目錄
2012-02-01 16:48 DIR> .
2012-02-01 16:48 DIR> ..
2011-12-14 12:23 3,644,928 bsondump.exe
2011-12-14 12:25 1,793,536 mongo.exe
2011-12-14 12:28 3,952,640 mongod.exe
2011-12-14 12:30 3,660,800 mongodump.exe
2011-12-14 12:32 3,651,072 mongoexport.exe
2011-12-14 12:34 3,656,192 mongofiles.exe
2011-12-14 12:36 3,668,992 mongoimport.exe
2011-12-14 12:38 3,654,656 mongorestore.exe
2011-12-14 12:39 2,807,808 mongos.exe
2011-12-14 12:41 3,689,472 mongostat.exe
2011-12-14 12:46 3,657,216 mongotop.exe
11 個(gè)文件 37,837,312 字節(jié)
2 個(gè)目錄 97,404,313,600 可用字節(jié)
接下來(lái)就要安裝MongoDB服務(wù)了,不過(guò)此時(shí)要注意兩點(diǎn):
1.保持命令行當(dāng)前目錄不變,即仍停留在D:\mongodb-win32-i386-2.0.2\bin 目錄。任何更改到其他目錄后使用絕對(duì)定位來(lái)操作此目錄都會(huì)導(dǎo)致服務(wù)安裝失敗
注:什么意思呢?就是說(shuō)保持當(dāng)前狀態(tài)就行了。假設(shè)你重新打開(kāi)了一個(gè)cmd,起始目錄變成了
C:\Documents and Settings\chaijunkun>
這時(shí)候你即便使用
C:\Documents and Settings\chaijunkun>D:\mongodb-win32-i386-2.0.2\bin\mongod.exe .............
這樣的方式來(lái)注冊(cè)服務(wù),仍然會(huì)注冊(cè)失敗。
2.事先創(chuàng)建一個(gè)目錄用來(lái)保存數(shù)據(jù)庫(kù)文件。如果不創(chuàng)建這個(gè)目錄,注冊(cè)服務(wù)時(shí)會(huì)在表象上看似已經(jīng)注冊(cè)成功。但啟動(dòng)服務(wù)后會(huì)發(fā)現(xiàn)mongod.exe進(jìn)程會(huì)反復(fù)建立、銷(xiāo)毀、建立、銷(xiāo)毀。跟著服務(wù)狀態(tài)也會(huì)變成“已啟動(dòng)”、“已停止”、“已啟動(dòng)”、“已停止”,客戶端根本無(wú)法連接到數(shù)據(jù)庫(kù)。
這里我使用C盤(pán)下的MongoDBData目錄作為數(shù)據(jù)文件存放目錄,于是建立目錄:
D:\mongodb-win32-i386-2.0.2\bin>mkdir c:\MongoDBData
好了,到這里準(zhǔn)備工作就做好了,下面就可以安裝服務(wù)了:
D:\mongodb-win32-i386-2.0.2\bin>mongod --install --serviceName MongoDB --serviceDisplayName MongoDB --logpath c:\MongoDB.Log --dbpath c:\MongoDB --directoryperdb
這里簡(jiǎn)單介紹一下使用的參數(shù)及其含義:
--install:安裝MongoDB服務(wù)
--serviceName:安裝Windows服務(wù)時(shí)使用的服務(wù)名
--serviceDisplayName:在Windows服務(wù)管理器中顯示的服務(wù)名,如下所示:

--logpath:MongoDB日志輸出文件名稱。雖說(shuō)該參數(shù)直譯是“日志路徑”,其實(shí)要指定的是一個(gè)具體的完整文件名。這里我使用的是C盤(pán)根目錄下的MongoDB.Log文件。該文件不用事先創(chuàng)建,直接指定就是了。
--dbpath:指定MongoDB數(shù)據(jù)存放的路徑。這個(gè)就是最關(guān)鍵的參數(shù)了,不僅該目錄要存在,并且最好不要以“\”結(jié)尾。
--directoryperdb:這個(gè)參數(shù)很好理解,讓MongoDB按照數(shù)據(jù)庫(kù)的不同,針對(duì)每一個(gè)數(shù)據(jù)庫(kù)都建立一個(gè)目錄,所謂的“目錄每數(shù)據(jù)庫(kù)”
好了,執(zhí)行了上面的命令后,服務(wù)就可以成功注冊(cè)了。如果你使用的操作系統(tǒng)是Windows Vista或者Windows 7,那么你要特別注意它的UAC機(jī)制了,必須以管理員權(quán)限打開(kāi)cmd,然后注冊(cè)服務(wù)才能成功注冊(cè)。
打開(kāi)服務(wù)管理器,啟動(dòng)MongoDB服務(wù),發(fā)現(xiàn)該服務(wù)可以穩(wěn)定持續(xù)運(yùn)行。恭喜你,成功了!

感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!
您可能感興趣的文章:- MongoDB加入到Windows服務(wù)的方法
- MongoDB入門(mén)教程之Windows下的MongoDB數(shù)據(jù)庫(kù)安裝圖解
- 將MongoDB加入到Windows的本地服務(wù)項(xiàng)的方法
- Windows下MongoDB配置用戶權(quán)限實(shí)例
- mongodb在windows下的安裝步驟分享
- mongoDB在windows下安裝與配置方案
- Windows下把MongoDB安裝為系統(tǒng)服務(wù)的方法
- Windows下自動(dòng)備份MongoDB的批處理腳本
- MongoDB系列教程(三):Windows中下載和安裝MongoDB
- windows下mongodb安裝與使用圖文教程(整理)
- Windows或Linux系統(tǒng)中備份和恢復(fù)MongoDB數(shù)據(jù)的教程