#MongoDB をWindowsのサービスで動かす。

MongoDBの「Quickstart」の「Install MongoDB on Windows」に従って、サービスで動かそうとすると、

C:\>\\bin\mongod.exe --config=c:\\mongod.cfg
all output going to: C:\\log
logpath [C:\\log] should be a file name not a directory
Thu Aug 16 14:16:10 dbexit:
Thu Aug 16 14:16:10 shutdown: going to close listening sockets...
Thu Aug 16 14:16:10 shutdown: going to flush diaglog...
Thu Aug 16 14:16:10 shutdown: going to close sockets...
Thu Aug 16 14:16:10 shutdown: waiting for fs preallocator...
Thu Aug 16 14:16:10 shutdown: closing all files...
Thu Aug 16 14:16:10 closeAllFiles() finished
Thu Aug 16 14:16:10 dbexit: really exiting now

なんてエラーになってサービスに登録できない。ドキュメントの通りのままだと動かないようだ。

そこで、C:\mongodb\logに空のlog.txtというファイルを作って、c:\mongodb\mongod.cfgに

logpath=C:\mongodb\log\log.txt
dbpath=C:\mongodb\data

というようにファイル名まで指定してあげると

C:\>\mongodb\bin\mongod.exe --config=c:\mongodb\mongod.cfg --install
all output going to: C:\mongodb\log\log.txt

C:\>net start MongoDB
The Mongo DB service is starting.
The Mongo DB service was started successfully.

のように無事に起動できるようになった。