ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • (MongoDB) window service 설치, 미 설치 실행법 차이
    IT 지식 창고 2020. 12. 18. 18:40

    MongoDB 3.x 버전 이하에서는 .msi로 설치할 때 service를 설치하는 부분이 없습니다. 그래서 대부분의 설치 후 실행 방법에 mongod를 실행 후 mongo를 실행합니다.

     

    mongod가 server의 역할을 하기 때문입니다.

     

    어떤 블로그에서는 4.x버전을 설치하면서 service를 설정하고 또 mongod를 실행하고 mongo를 실행해서 사용하라고 합니다. 처음 접하는 사람은 이것들 때문에 db가 꼬여서 헷갈릴수도 있습니다...

     

    1. service 설치 시 실행 방법

    MongoDB를 service로 설치하는 방법은 2가지 방법이 있습니다.

     

    • MongoDB 4.x 버전 기준 msi 설치 시는 아래와 같이 service를 설치를 할 수있습니다.

    MongoDB 4.x버전을 설치할 경우 Service Configuration이라는 단계가 나옵니다. 이때 Install MongoDB as a Service를 체크하시고, Data 디렉토리 경로를 설정하거나 default 경로를 사용하시면 됩니다.

     

    • mongod를 활용한 service 설치 입니다.

    아래의 커맨드를 입력하면 됩니다.

    (환경변수 설정이 되어 있다고 가정합니다. 환경변수 설정법 : smecsm.tistory.com/198)

    mongod --install

    위 커맨드만 사용해도 service는 설치 되며, dbpath 는 default가 C:\data\db로 설정되어 service가 설치 됩니다.

     

    * db폴더 경로 변경하여 service 설치 법

    cmd창에서 mongod를 실행할 때, 파라미터로 --dbpath를 주면 됩니다. log가 필요한 경우도 --logpath를 주고 뒤에 경로를 주면 됩니다. (log는 log 파일이름까지 작성)

     

    예시)

    mongod --dbpath "C:\MongoDB\data\db" --logpath "C:\MongoDB\log\mongod.log"

    물론 경로에 폴더 및 파일(mongod.log)이 있어야합니다!

    그 외에 생기는 에러는 잘 읽어보시고 mongod --help에 관련 옵션이 있으니 잘보고 실행시키면 됩니다.

     

     * .cfg 파일로 옵션작성 후 service 설치하는 방법(mongod.conf)

    C:\Program Files\MongoDB\Server\4.4\bin(mongo.exe 설치되어 있는 경로)경로 안에 mongod.cfg 파일이 있을 수도 있고, 없을 수도 있습니다.

     

    mongod.cfg 파일이 있는 경우는 아마 아래와 같이 적혀있을 겁니다. 

    # mongod.conf
    
    # for documentation of all options, see:
    #   http://docs.mongodb.org/manual/reference/configuration-options/
    
    # Where and how to store data.
    storage:
      dbPath: C:\Program Files\MongoDB\Server\4.4\data
      journal:
        enabled: true
    #  engine:
    #  mmapv1:
    #  wiredTiger:
    
    # where to write logging data.
    systemLog:
      destination: file
      logAppend: true
      path:  C:\Program Files\MongoDB\Server\4.4\log\mongod.log
    
    # network interfaces
    net:
      port: 27017
      bindIp: 127.0.0.1
    
    
    #processManagement:
    
    #security:
    
    #operationProfiling:
    
    #replication:
    
    #sharding:
    
    ## Enterprise-Only Options:
    
    #auditLog:
    
    #snmp:
    

    없으시면 위를 복사 하시거나, 아래처럼 storage에 dbPath부분만 작성하셔서 mongod.cfg로 저장하시면 됩니다.

    storage:
      dbPath: C:\Program Files\MongoDB\Server\4.4\data

    * 경로 적으실때, cfg 파일에는 ""(쌍따옴표)가 들어가면 안되요~

     

    그리고 cmd 창에 mongod --config "C:\cfg파일이있는 경로" --install 로 실행하시면 됩니다.

     

    예시)

    mongod --config "C:\Program Files\MongoDB\Server\4.4\bin\mongod.cfg" --install

     

    추가 옵션으로 --serviceName MongoDB --serviceDisplayName MongoDB를 추가하셔도 되는데, 안하셔도 default로 설정 되어 있긴 합니다. 구체적인 옵션은 MongoDB Manual검색하셔서 mongod 카테고리에서 찾아보시면 될 것같아요 ㅎㅎ

     

    * 설치 확인 방법

    Ctrl+R에서 services.msc에서 MongoDB가 있는 지, 또는 작업관리자 창에서 서비스에 MongoDB가 있는지 확인하면됩니다. service 설치 이후에는 mongod를 실행 안해도 컴퓨터만 켜지면 자동으로 mongod가 실행되어 MongoDB server가 돌아갑니다.

     

    보통 자동으로 항상 실행되어있으니, 중단 후 실행할 때 확인하시던지 설치가 잘 되어 있는지 확인차 사용하시면 됩니다.

     

    2. service 미 설치 시 실행 방법

    • mongod의 default db폴더는 C:\data\db로 지정 되어 있으며, 이 경로로 폴더를 만들어 주셔야 합니다.

    • cmd창에서 mongod 명령어 입력

    mongod 명령어를 입력하고 올바르게 db폴더가 생성되어 있다면, 위와 같이 log가 나오고 커서가 깜빡거리고 있습니다. (연결이 안됬을 경우 마지막 log에 에러내용이 있거나, 커서가 깜빡거리지 않고 다시 명령어를 칠 수 있게 됩니다.)

     

    • 다른 cmd창을 키고 mongo 명령어 입력

     

    * 만약 mongod 또는 service로 MongoDB server가 실행되어 있지않을 때, mongo를 실행시키면 아래와 같이 에러가 뜹니다.

     

    * mongod 실행 시 주로 사용하는 방법 

    • mongod db폴더 경로 변경 법

    service 설치 할 때와 똑같으며, --install을 빼면 됩니다.

    예시)

    mongod --dbpath "C:\MongoDB\data\db" --logpath "C:\MongoDB\log\mongod.log"

     

    • batch파일을 통한 실행 법

    메모장을 연 뒤

    mongod --dbpath "C:\MongoDB\data\db" --logpath "C:\MongoDB\log\mongod.log"

    를 작성하고 저장을 mongodb_start.bat식으로 .bat 파일로 저장합니다.

    그러면 cmd창에 mongod + 경로옵션을 입력 하지 않고, 배치파일을 더블클릭하면 실행할 수 있습니다.

     

    • .cfg 파일로 옵션작성 후 실행하는 방법(mongod.conf)

    이 또한, service 설치 할 때와 똑같으며, --install을 빼면 됩니다.

     

    예시)

    mongod --config "C:\Program Files\MongoDB\Server\4.4\bin\mongod.cfg"

     

    댓글

Designed by Tistory.