복붙노트

[MONGODB] MongoDB를 실행하고 있습니까?

MONGODB

MongoDB를 실행하고 있습니까?

나는 설치된 MongoDB를 내 유닉스 서버의 PHP 드라이버가 있습니다.

내 질문 MongoDB를 실행중인 경우 내가 말할 수있는 방법인가? 상태를 확인하는 간단한 명령 줄 쿼리가 있습니까? 나는 그것이 내가 쉘을 종료하면 계속 실행됩니다 쉘에서 한 번 시작하면 (이 경우 될 것 같지 않습니다). 어떻게 MongoDB의 연결을 지속하고 자동 서버 재부팅 시작할 수 있나요?

나는 뛸 수 있습니다:

내가 별도의 쉘을 열면 나는 그 후 MongoDB를 연결할 수 있습니다 :

내가 초기 쉘을 닫으 그러나 만약 연결할 수 없습니다 :

해결법

  1. ==============================

    1.중 하나를 확인 :

    중 하나를 확인 :

       ps -edaf | grep mongo | grep -v grep  # "ps" flags may differ on your OS
    

    또는

       /etc/init.d/mongodb status     # for MongoDB version < 2.6
    
       /etc/init.d/mongod status      # for MongoDB version >= 2.6
    

    또는

       service mongod status
    

    MongoDB를가 실행되고 있는지 확인하기 위해 (당신은이 작업을 수행하려면 루트, 또는 접두어 sudo를 모두 할 필요). 노트는 '그렙'명령은 항상 별도의 프로세스로 표시됩니다하시기 바랍니다.

    보고 된 문제가 있는지 확인하기 위해 로그 파일 /var/log/mongodb/mongod.log을 확인

  2. ==============================

    2.내가 찾을 수 :

    내가 찾을 수 :

    ps -ax | grep mongo
    

    더 많은 일치합니다. 반환되는 값이 실행중인 인스턴스 수 mongod의 감지하는 데 사용할 수 있습니다

  3. ==============================

    3.빠르게 MongoDB를 실행중인 경우 확인을 위해이 빠른 NC 트릭을 알려 드리겠습니다.

    빠르게 MongoDB를 실행중인 경우 확인을 위해이 빠른 NC 트릭을 알려 드리겠습니다.

    nc -zvv localhost 27017
    

    위의 명령은 로컬 호스트의 기본 포트를 실행하는 것으로 가정합니다.

    그것을 자동 시작을 위해,이 스레드를보고 할 수 있습니다.

  4. ==============================

    4.수정, 쉘을 닫으면 MongoDB를 중지됩니다. 대신 데몬으로 실행하게 mongod 프로세스에 대한 --fork 명령 행 인수를 사용해보십시오. 나는 더 유닉스 전문가는 아니지만, 확인 후 자동 시작 시스템 부팅에 얻을 수있는 방법이 있어야 난.

    수정, 쉘을 닫으면 MongoDB를 중지됩니다. 대신 데몬으로 실행하게 mongod 프로세스에 대한 --fork 명령 행 인수를 사용해보십시오. 나는 더 유닉스 전문가는 아니지만, 확인 후 자동 시작 시스템 부팅에 얻을 수있는 방법이 있어야 난.

    EG

    mongod --fork --logpath /var/log/mongodb.log --logappend
    

    시작 및 MongoDB를 중지에 전체 설명서를 확인하십시오.

  5. ==============================

    5.이 잘 작동합니다 ...

    이 잘 작동합니다 ...

  6. ==============================

    6.sudo는 서비스 MongoDB의 상태 : MongoDB를 사용의 현재 실행중인 상태를 확인하려면

    sudo는 서비스 MongoDB의 상태 : MongoDB를 사용의 현재 실행중인 상태를 확인하려면

  7. ==============================

    7.아마 내가 제대로 내 dev에 서버를 종료하거나 유사한 이유를하지 않았기 때문에. 이 문제를 해결하려면 잠금 장치를 제거하여 서버를 시작합니다 : sudo는 RM /var/lib/mongodb/mongod.lock; sudo를 시작 MongoDB를

    아마 내가 제대로 내 dev에 서버를 종료하거나 유사한 이유를하지 않았기 때문에. 이 문제를 해결하려면 잠금 장치를 제거하여 서버를 시작합니다 : sudo는 RM /var/lib/mongodb/mongod.lock; sudo를 시작 MongoDB를

  8. ==============================

    8.나는이 PHP에 대해 알고,하지만 난 여기 노드에 대한 솔루션을 찾고있어. mongoskin 사용 :

    나는이 PHP에 대해 알고,하지만 난 여기 노드에 대한 솔루션을 찾고있어. mongoskin 사용 :

    mongodb.admin().ping(function(err) {
        if(err === null)
            // true - you got a conntion, congratulations
        else if(err.message.indexOf('failed to connect') !== -1)
            // false - database isn't around
        else
            // actual error, do something about it
    })
    

    다른 드라이버를 사용하면 연결을 시도 할 수 있으며 실패 할 경우, 당신은 몽고 서버의 다운을 알고있다. Mongoskin는 느리게 연결하기 때문에 실제로 (핑 같은) 일부 통화를 할 필요가있다. PHP를 들어, 시도 간 연결 방법을 사용할 수 있습니다. 스크립트를 만들 어라!

    PHP :

    $dbIsRunning = true
    try {
      $m = new MongoClient('localhost:27017');
    } catch($e) {
      $dbIsRunning = false
    }
    
  9. from https://stackoverflow.com/questions/5091624/is-mongodb-running by cc-by-sa and MIT license