Jak skonfigurować MongoDB, aby mógł działać jako usługa systemu Windows?
mongodb
windows-services
nosql
heisthedon
źródło
źródło
Odpowiedzi:
Myślę, że jeśli uruchomisz go z
--install
przełącznikiem wiersza polecenia, zainstaluje go jako usługę systemu Windows.Warto jednak najpierw przeczytać ten wątek . Wydaje się, że występują pewne problemy ze ścieżkami względnymi / bezwzględnymi podczas zapisywania odpowiedniego klucza rejestru.
źródło
net start MongoDB
Po kilku godzinach prób w końcu to zrobiłem.
Upewnij się, że dodałeś
<MONGODB_PATH>\bin
katalog do zmiennej systemowejPATH
Najpierw wykonałem to polecenie:
Następnie wykonałem to polecenie po otwarciu wiersza polecenia jako administrator:
Następnie w wierszu polecenia wykonaj:
Poszukaj usługi MongoDB i kliknij przycisk Start.
UWAGA: Pamiętaj, aby uruchomić wiersz polecenia jako administrator.
Jeśli tego nie zrobisz, plik dziennika (
D:\mongodb\log.txt
w powyższym przykładzie) będzie zawierał takie wiersze:a jeśli spróbujesz uruchomić usługę z konsoli innej niż administrator (tj.
net start MongoDB
lubStart-Service MongoDB
w PowerShell), otrzymasz odpowiedź w następujący sposób:albo to:
źródło
net start MongoDB
zamiast używaćservices.msc
. (mongod
zalecił mi to.)nie tylko
--install
,także potrzebuję
--dbpath
i--logpath
a po ponownym uruchomieniu systemu operacyjnego musisz ręcznie usunąć „mongod.lock ”
źródło
mongod.lock
Windows 8 x64
W przeciwieństwie do innych odpowiedzi będzie to ..
URUCHOM SERWIS AUTOMATYCZNIE NA PONOWNYM URUCHOMIENIU SYSTEMU
Zainstaluj MongoDB
Windows
(1) Zainstaluj MongoDB
(2) Dodaj bin do ścieżki
(3) Utwórz c: \ data \ db
(4) Utwórz c: \ data \ log
(5) Utwórz c: \ data \ mongod.cfg z zawartością ..
(6) Aby utworzyć usługę, która uruchomi się automatycznie po ponownym uruchomieniu . URUCHOM JAKO ADMINISTRATOR ..
(7) Uruchom usługę. URUCHOM JAKO ADMINISTRATOR ..
WAŻNE: Nawet jeśli powie to „Usługa MongoDB została pomyślnie uruchomiona”, może się nie powieść
Aby dwukrotnie sprawdzić otwórz Panel sterowania> Usługi, upewnij się, że stan usługi MongoDB to „Uruchomiony”
Jeśli nie, sprawdź przyczynę niepowodzenia w pliku dziennika w C: \ data \ log \ mongod.log
(Nie uruchamiaj MongoDB za pomocą Panelu sterowania> Usługi, użyj .. net start MongoDB)
(8) Na koniec zrestartuj komputer przy uruchomionym MongoDB, a on będzie nadal działał przy ponownym uruchomieniu
Jeśli kiedykolwiek chcesz to zabić ...
źródło
3.4
do3.6
wersji tego poleceniasc.exe create MongoDB binPath= "\"C:\Program Files\MongoDB\Server\3.4\bin\mongod.exe\" --service --config=\"C:\data\mongod.cfg\"" DisplayName= "MongoDB" start= "auto"
Uruchom poniżej w trybie administracyjnym
cmd
Spowoduje to usunięcie istniejącej usługi MongoDB (jeśli istnieje).
Upewnij się, że ten
C:\data\db
folder istniejeOtwórz usługi dzięki:
Znajdź MongoDB -> Kliknij prawym przyciskiem myszy -> Start
źródło
Możesz użyć poniższego polecenia do uruchomienia mongodb jako usługi Windows
Jeśli używasz mongodb z parametrami domyślnymi, możesz użyć tych wartości:
Więcej informacji na temat tego polecenia tutaj
http://www.mongodb.org/display/DOCS/Windows+Service
źródło
Próbowałem wszystkich odpowiedzi, a następnie zrobiłem to tak, jak to opisuje https://docs.mongodb.org/manual/tutorial/install-mongodb-on-windows/#configure-a-windows-service-for-mongodb-community-edition .
Użyj pliku konfiguracyjnego ...
"C:\mongodb\bin\mongod.exe" --config "C:\mongodb\mongod.cfg" --install
źródło
Ten skrypt PowerShell pobiera i instaluje MongoDB jako usługę Windows:
źródło
To była jedyna rzecz, która działała dla mnie. Ponieważ wszystko musiało być ścieżką absolutną:
Musiałem też to uruchomić
admin cmd
źródło
Zalecany sposób
mongod --install
powoduje błąd:Po zainstalowaniu mongodb
C:\mongodb
musisz po prostu dodać ścieżkę dziennika:Ścieżka do pliku dziennika musi istnieć i musi być bezwzględną ścieżką systemu Windows. Następnie uruchom usługę MongoDB, wpisując:
źródło
Rozważ użycie
źródło
Praca na Mongo DB: 3.6
(1) Zainstaluj MongoDB
(2) Dodaj bin do zmiennej ścieżki środowiskowej
(3) Utwórz
c:\data\db
(4) Utwórz
c:\data\mongod.log
(5) Uruchom poniżej polecenia w
bin
folderze(6) Aby uruchomić mongo db jako usługę
(7) Na koniec uruchom
mongo
w wierszu polecenia, aby sprawdzić, czy powłoka mongo jest otwarta, czy nie.źródło
Odniesienie
źródło
Oto, co zadziałało dla mnie:
ucieczka przed binPath nie powiodła się, jak opisano w dokumentacji Mongo
Nie powiodło się:
źródło
Najprostszym sposobem jest
C:\data\db
C:\data\db\log.txt
Otwórz wiersz polecenia jako „Uruchom jako administrator” i upewnij się, że ścieżka katalogu bin mogodb jest poprawna i zapisz
Uruchom usługę mongodb:
źródło
Praca na MongoDB 3.4 [Windows]
Utwórz plik w C: /mongodb/mongodb.config przy użyciu tej konfiguracji:
Aby zainstalować MongoDb jako usługę, uruchom to polecenie w PowerShell z uprawnieniami administratora
mongod --config = "C: \ mongodb \ mongodb.config" --install --service
Otwórz Services.msc i poszukaj MongoDb, a następnie uruchom go
źródło
W przypadku wersji 2.4.3 (bieżąca wersja na dzień publikacji) utwórz plik konfiguracyjny, a następnie wykonaj następujące czynności:
C:\MongoDB\bin\mongod.exe --config C:\MongoDB\mongod.cfg --service
źródło
Obecnie (do wersji 2.4.4), jeśli jakakolwiek ścieżka (dbpath / logpath / config) zawiera spacje, usługa nie uruchomi się i wyświetli błąd: „Usługa nie odpowiada na funkcję sterowania”.
źródło
Jestem w wersji 2.4.9 i używam pliku konfiguracyjnego. Usługa nie uruchomi się, dopóki nie otoczę znaku równości w pliku konfiguracyjnym spacjami:
Pierwotnie miałem:
Odkryłem również, że podczas instalowania usługi musisz użyć bezwzględnej ścieżki do pliku konfiguracyjnego, np .:
Nie ulegaj pokusie umieszczania odwróconych przecinków wokół ścieżki db ze spacjami. Wygląda na to, że usługa uruchomi się po uruchomieniu Net Start MongoDB, ale zakończy się. Sprawdź pliki dziennika, aby potwierdzić, że usługa naprawdę się uruchomiła.
źródło
Uruchom „cmd.exe” jako administrator, a następnie uruchom „sc.exe”, aby dodać nową usługę Windows.
na przykład:
źródło
Odkryłem, że powinieneś przekazać: dbpath, config i logfile do mongod z flagą install
przykład:
uwaga: Mam zmienną mongod w mojej zmiennej path.
Możesz kontrolować usługę za pomocą:
źródło
Oto kroki, aby zainstalować MongoDB jako usługę systemu Windows:
Utwórz katalog dziennika, np
C:\MongoDB\log
Utwórz katalog db, np
C:\MongoDB\db
Przygotuj plik konfiguracyjny z następującymi wierszami
dbpath=C:\MongoDB\db
logpath=C:\MongoDB\log
Umieść plik konfiguracyjny o nazwie mongod.cfg w folderze „C: \ MongoDB \”
Następujące polecenie zainstaluje na twoim komputerze usługę Windows
sc.exe create MongoDB binPath= "\"C:\MongoDB\Server\3.4\bin\mongod.exe\" --service --config=\"C:\MongoDB\mongod.cfg\" DisplayName= "MongoDB 3.4" start= "auto"
Po uruchomieniu tego polecenia otrzymasz
[SC] CreateService SUCCESS
Uruchom następujące polecenie w wierszu polecenia
net start MongoDB
źródło
Jeśli instalujesz MongoDB 2.6.1 lub nowszą wersję przy użyciu pliku MSI do pobrania z wiersza polecenia administratora , należy automatycznie utworzyć definicję usługi.
Dokumentacja MongoDB zawiera również samouczek, który pomoże Ci ręcznie utworzyć definicję usługi Windows, jeśli to konieczne.
źródło
Ta odpowiedź jest dla tych, którzy już zainstalowali mongo DB za pomocą instalatora MSI.
Załóżmy, że domyślną zainstalowaną lokalizacją jest „C: \ Program Files \ MongoDB \ Server \ 3.2 \ bin”
Kroki, aby uruchomić Mongo jako usługę okienną
cd C:\Program Files\MongoDB\Server\3.2\bin
(sprawdź ścieżkę poprawnie, ponieważ może być zainstalowana inna wersja, a nie 3.2).net start MongoDB
services.msc
i sprawdź, czy Mongo działa jako usługa.źródło
System error 2 has occurred. The system cannot find the file specified.
wypróbowałem także mongod, mongodb.źródło
sprawdź usługi systemu Windows
jeśli masz usługę mongo, usuń ją, uruchamiając poniższe polecenie
mongod --remove
utwórz plik mongo.cfg z poniższą zawartością
systemLog:
miejsce docelowe:
ścieżka pliku : c: \ data \ log \ mongod.log
pamięć:
dbPath: c: \ data \ db
ścieżka: gdzie chcesz przechowywać dane dziennika
dbPath: katalog bazy danych
następnie uruchom poniższe polecenie
sc.exe create MongoDB binPath= "\"C:\Program Files\MongoDB\Server\3.2\bin\mongod.exe\" --service --config=\"C:\Program Files\MongoDB\Server\3.2\mongod.cfg\"" DisplayName= "MongoDB" start= "auto"
binPath:
konfiguracja katalogu instalacyjnego mongodb : adres pliku .cfg
DisplayName: nazwa usługi
uruchomić usługę
net start MongoDB
teraz wszystkie rzeczy są skończone. ciesz się tym
źródło
W moim przypadku tworzę plik mongod.cfg obok pliku mongd.exe z następującą zawartością.
Następnie uruchamiam oba polecenia, aby utworzyć usługę.
Poniższe informacje są niepoprawne, należy pamiętać, że wymagane znaki zapytania są wymagane.
źródło
Plz wypróbuj kroki w Mongo DB: 3.6 i Windows 10
mongod --remove
mongod --dbpath=C:/data/db --port 27017 --logpath C:/data/log/log.txt --service
mongod --dbpath=C:/data/db --port 27017 --logpath C:/data/log/log.txt --install
net start MongoDB
źródło