-
[MongoDB] Windows 서비스에 등록하기백엔드/MongoDB 2023. 8. 21. 13:32
문제 발생!
🚨 MongoDB 3.x 버전을 사용하다가 6.x로 버전을 올리면서 문제가 발생하였습니다!! 🚨
두 버전의 MongoDB - storage engine이 서로 달라서 로컬에 존재하는 기존 데이터를 불러올 수 없는 상황이었습니다.Storage Engine
Storage Engine은 데이터베이스 관리 시스템(DBMS)에서 데이터를 저장, 관리, 접근하는 데 사용되는 핵심 컴포넌트입니다. 데이터베이스 시스템은 다양한 유형의 데이터를 효율적으로 저장하고 검색할 수 있도록 설계되어 있으며, 이러한 작업을 수행하기 위해 여러 가지 유형의 Storage Engine이 개발되어 왔습니다.
버전별 Storage Engine은 다음과 같습니다.
- MongoDB 3.x : MMAPv1 (Memory-Mapped Files Version 1)
MMAPv1은 MongoDB의 초기 Storage Engine 중 하나로, 데이터를 디스크에서 메모리로 매핑하여 사용하는 방식을 채택합니다. 이 방식은 일부 읽기 작업에 대해 빠른 응답성을 제공할 수 있지만, 쓰기 작업에 대한 처리가 다소 느릴 수 있습니다. MMAPv1은 MongoDB 4.0 버전부터는 더 이상 기본 Storage Engine으로 사용되지 않고 있습니다. - MongoDB 6.x : WiredTiger
WiredTiger는 MongoDB 3.0 버전부터 기본 Storage Engine으로 도입되었습니다. WiredTiger는 여러 가지 성능 및 기능 개선을 제공합니다. 이 Storage Engine은 B-tree 인덱스, 컬렉션 수준의 복사 및 압축 등을 통해 효율적인 데이터 관리를 지원하며, 다중 버전 동시성 제어(MVCC)를 통해 트랜잭션 처리를 지원합니다. WiredTiger는 읽기 및 쓰기 작업에 대한 성능 및 확장성을 개선한 Storage Engine으로 평가받고 있습니다.
조치 사항
6.x --> 3.x 버전으로 다운그레이드를 위한 조치를 하였습니다.
직접 3.x 버전의 bin 폴더까지 타고 들어가서 mongod.exe를 실행하는 방법이 있지만 매번 실행하기 귀찮지 않을까요?
그.래.서!다른 방법으로는 Windows 서비스에 등록하는 방법이 있습니다.
mongoDB를 환경변수에 등록하지 않으셨으면 등록부터 하고나서 다음 절차를 따르시기 바랍니다!
포맷은 다음과 같습니다. "MongoDB 환경 변수 등록" 이라고 검색하면 많은 글들이 나올겁니다~!Windows 서비스에 등록하는 방법
CMD창을 실행하고 다음과 같은 포맷으로 입력합니다.
# 작성 포맷 mongod --install --serviceName [서비스 이름] --serviceDisplayName [표시 이름] --dbpath [저장소 경로] --logpath [로그파일경로] --logappend
저의 경우 아래와 같이 작성하였습니다.# 작성 예시 mongod --install --serviceName "MongoDB" --serviceDisplayName "MongoDB Server" --dbpath "C:\data\db" --logpath "C:\data\log\mongod.log" --logappend
위의 명령어가 온전히 실행이 되면 서비스에 MongoDB가 등록이 된 것을 볼 수 있습니다.(ㅠㅡㅠ 현재 작성 중인 PC는 맥북이라.. 스크린샷이 없네요..)
서비스 창에서 각 서비스를 실행 및 종료를 할 수는 있지만 삭제하는 방법은 없는 것 같습니다.
그래서 아래의 명령어를 CMD 창에서 입력하여 활용합니다.# 서비스 시작 net start 서비스명 # 서비스 종료 net stop 서비스명 # 서비스 삭제 sc delete 서비스명
기존 6.x 버전의 MongoDB가 서비스에 이미 등록이 되어있는 상태라면 서비스 삭제 후 새로 등록하시기 바랍니다.
삭제하지 않고 등록하면 덮어쓰여지지 않습니다!!끗!
[참고]
https://projooni.tistory.com/entry/웹서버-구축하기-MongoDB-Windows-서비스-등록728x90반응형'백엔드 > MongoDB' 카테고리의 다른 글
[MongoDB] storage Engine Error (0) 2023.08.16 - MongoDB 3.x : MMAPv1 (Memory-Mapped Files Version 1)