Windows 서비스로 실행할 수 있도록 MongoDB를 어떻게 설정합니까?
답변
난 당신이 그것을 실행하면 생각 --install
명령 줄 스위치는 Windows 서비스로 설치합니다.
mongod --install
그래도이 스레드를 먼저 읽어 보는 것이 좋습니다. 관련 레지스트리 키가 작성 될 때 상대 / 절대 경로에 문제가있는 것 같습니다.
답변
몇 시간 동안 노력한 끝에 마침내 해냈습니다.
<MONGODB_PATH>\bin
시스템 변수에 디렉토리를 추가했는지 확인하십시오PATH
먼저이 명령을 실행했습니다.
D:\mongodb\bin>mongod --remove
그런 다음 관리자 권한으로 명령 프롬프트를 연 후이 명령을 실행했습니다.
D:\mongodb\bin>mongod --dbpath=D:\mongodb --logpath=D:\mongodb\log.txt --install
그 직후 명령 프롬프트에 다음을 실행하십시오.
services.msc
MongoDB 서비스를 찾아 시작을 클릭하십시오.
참고 : 관리자 권한으로 명령 프롬프트를 실행하십시오.
이 작업을 수행하지 않으면 D:\mongodb\log.txt
위의 예에서 로그 파일에 다음과 같은 행이 포함됩니다.
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)
가 아닌 관리 콘솔에서 서비스 (즉, 시작하려고 경우 net start MongoDB
또는 Start-Service MongoDB
PowerShell의)를,이 같은 응답을 얻을 것이다 :
System error 5 has occurred.
Access is denied.
아니면 이거:
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
답변
뿐만 아니라 --install
,
또한 필요 --dbpath
하고--logpath
OS 재부팅 후 “mongod.lock “을 수동으로 삭제해야합니다.
답변
다른 답변과 달리 이것은 ..
시스템 재부트 / 재시작시 자동으로 서비스 시작
MongoDB 설치
윈도우
(1) MongoDB 설치
(2) 빈을 경로에 추가
(3) c : \ data \ db 생성
(4) c : \ data \ log를 만듭니다.
(5) 내용으로 c : \ data \ mongod.cfg를 만듭니다.
systemLog:
destination: file
path: c:\data\log\mongod.log
storage:
dbPath: c:\data\db
(6) 재부트시 자동 시작되는 서비스를 생성하려면 .. RUN AS ADMIN ..
sc.exe create MongoDB binPath= "\"C:\Program Files\MongoDB\Server\3.4\bin\mongod.exe\" --service --config=\"C:\data\mongod.cfg\"" DisplayName= "MongoDB" start= "auto"
(7) 서비스 시작 .. RUN AS ADMIN ..
net start MongoDB
중요 : ‘MongoDB 서비스가 성공적으로 시작되었습니다’라고해도 실패 할 수 있습니다
제어판> 서비스를 다시 확인하려면 MongoDB 서비스의 상태가 ‘실행 중’인지 확인하십시오.
그렇지 않은 경우 C : \ data \ log \ mongod.log의 로그 파일에서 실패 이유를 확인하고 수정하십시오.
(제어판> 서비스를 통해 MongoDB를 시작하지 마십시오. .. net start MongoDB를 사용하십시오)
(8) 마지막으로 MongoDB를 실행하여 컴퓨터를 다시 시작하면 다시 시작해도 계속 실행됩니다.
당신이 그것을 죽이고 싶은 경우에 ..
net stop MongoDB
sc.exe delete MongoDB
답변
아래 단계는 Windows에 적용됩니다.
관리자로 아래에서 실행 cmd
mongod --remove
기존 MongoDB 서비스 (있는 경우)가 제거됩니다.
mongod --dbpath "C:\data\db" --logpath "C:\Program Files\MongoDB\Server\3.4\bin\mongod.log" --install --serviceName "MongoDB"
C:\data\db
폴더가 존재 하는지 확인하십시오
오픈 서비스 :
services.msc
MongoDB 찾기 -> 마우스 오른쪽 버튼 클릭-> 시작
답변
mongodb를 Windows 서비스로 실행하기 위해 아래 명령을 사용할 수 있습니다
"C:\mongodb\bin\mongod" --bind_ip yourIPadress --logpath "C:\data\dbConf\mongodb.log" --logappend --dbpath "C:\data\db" --port yourPortNumber --serviceName "YourServiceName" --serviceDisplayName "YourServiceName" --install
mongodb를 기본 매개 변수와 함께 사용하면 다음 값을 사용할 수 있습니다.
- yourIPadress : 127.0.0.1 또는 localhost
- yourPortNumber : 27017 (기본 포트) 또는 –port를 넣지 마십시오
- serviceDisplayName : 하나 이상의 서비스를 실행하는 경우에만 (mongodb 1.8부터)
이 명령에 대한 자세한 정보는 여기에 있습니다
답변
나는 모든 대답을 시도한 다음 https://docs.mongodb.org/manual/tutorial/install-mongodb-on-windows/#configure-a-windows-service-for-mongodb-community-edition이 설명 하는 방식으로 시도 했습니다. .
구성 파일 사용 …
"C:\mongodb\bin\mongod.exe" --config "C:\mongodb\mongod.cfg" --install