sql >> Databasteknik >  >> NoSQL >> MongoDB

Hur kan jag köra MongoDB som en Windows-tjänst?

Efter att ha försökt i flera timmar gjorde jag det äntligen.

Se till att du har lagt till <MONGODB_PATH>\bin katalogen till systemvariabeln PATH

Först körde jag det här kommandot:

D:\mongodb\bin>mongod --remove

Sedan körde jag det här kommandot efter att ha öppnat kommandotolken som administratör:

D:\mongodb\bin>mongod --dbpath=D:\mongodb --logpath=D:\mongodb\log.txt --install

Efter det där i kommandotolken kör du:

services.msc

Och leta efter MongoDB-tjänsten och klicka på Start.

OBS:Se till att köra kommandotolken som administratör.

Om du inte gör detta, din loggfil (D:\mongodb\log.txt i exemplet ovan) kommer att innehålla rader som dessa:

2016-11-11T15:24:54.618-0800 I CONTROL  [main] Trying to install Windows service 'MongoDB'
2016-11-11T15:24:54.618-0800 I CONTROL  [main] Error connecting to the Service Control Manager: Access is denied. (5)

och om du försöker starta tjänsten från en icke-administratörskonsol, (dvs. net start MongoDB eller Start-Service MongoDB i PowerShell), får du ett svar så här:

System error 5 has occurred.
Access is denied.

eller detta:

Start-Service : Service 'MongoDB (MongoDB)' cannot be started due to the following error: Cannot open MongoDB service
on computer '.'.
At line:1 char:1
+ Start-Service MongoDB
+ ~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : OpenError: (System.ServiceProcess.ServiceController:ServiceController) [Start-Service],
   ServiceCommandException
    + FullyQualifiedErrorId : CouldNotStartService,Microsoft.PowerShell.Commands.StartServiceComman


  1. Hur sorterar jag efter datum i Mongoose? (node.js)

  2. Enklaste sättet att kopiera/klona en mongoose-dokumentinstans?

  3. Redis - Lua-tabeller som returvärden - varför fungerar inte detta

  4. Pub/sub-implementering i nodeJS