Questão O Mongodb não está sendo desligado por meio do comando --shutdown


Preciso de ajuda com um problema em desligar mongod graciosamente. Estou executando o mongodb no docker.

Eu corro mongod como com o comando:

mongod --config /etc/mongod.conf

e quando eu fechar com:

mongod --shutdown

Eu recebo a mensagem:

Não parece haver um servidor executando com dbpath: / data / db

a mensagem é verdadeira, porque meu caminho do db não é "/ data / db".

e se eu tentar desligá-lo como:

mongod --config /etc/mongod.conf --shutdown

Eu recebo a mensagem:

processo de matar com pid: 9

qual é o problema?


4


origem




Respostas:


Eu descobri que se você não está usando o padrão --dbpath, você tem que especificá-lo como parte do desligamento. Por exemplo, se você iniciar o mongod serviço com /Mongo/Data como o dbpath você tem que desligá-lo com:

mongod --dbpath /Mongo/Data --shutdown

Isso funciona mesmo se você não estiver usando a porta padrão 27017.


6





Você pode apenas usar:

pskill mongod

Ou para algumas distribuições * nix e linux:

pkill mongod

Quando o mongod obtém o comando SIGTERM (o sinal padrão do comando kill é SIGTERM), ele irá desligar o banco de dados normalmente.

Você também pode verificar o PID do processo mongod com:

ps -ef | grep mongod

Em seguida, desligue por:

kill <PID of mongod>

Mas NÃO use kill -9 para o processo mongod.


5



pskill pode estar disponível como pkill em algumas máquinas (incluindo a minha) - Joshua