Instalação em ambiente Linux Ubuntu Server

Os repositórios de pacotes oficiais do Ubuntu incluem uma versão estável do MongoDB. No entanto, no momento da escrita deste artigo, a versão do MongoDB disponível a partir dos repositórios padrão do Ubuntu é a 3.6, enquanto a versão estável mais recente é a 4.4.

Para obter a versão mais recente deste software, você deve incluir o repositório de pacotes dedicado do MongoDB nas suas fontes APT. Assim, você será capaz de instalar o mongodb-org, um meta-pacote que sempre aponta para a versão mais recente do MongoDB.

Para começar, importe a chave GPG pública para a versão estável mais recente do MongoDB executando o comando abaixo:

curl -fsSL https://www.mongodb.org/static/pgp/server-4.4.asc | sudo apt-key add -

O retorno do comando será “OK” conforme mostra a imagem abaixo:

Em seguida execute o comando abaixo para adicionar o repositorio do mongodb 4.4 a lista de repositorios de pacotes do Ubuntu Server.

echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu focal/mongodb-org/4.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.4.list

O proximo passo é atualizar a lista de pacotes disponíveis para atualização e instalação.
Para isso execute o comando a seguir:

sudo apt update

E para fazer a instalação execute a linha de comando do quadro abaixo:

sudo apt install mongodb-org

Quando solicitado precione a tecla “y” para dar continuidade a instalação ou a tecla “n” para abortar o processo.

Quando o processo de instalação estiver concluído, você será liberado para executar novos comandos no shell do Linux.

Execute os seguintes comandos, uma linha por vez:

sudo systemctl restart mongod.service
sudo systemctl status mongod

Após verificar o status do MongoDB habilite o serviço MongoDB para iniciar durante a inicialização do servidor:

sudo systemctl enable mongod

O próximo passo é verificar se o mongoDB esta pronto para receber comandos. Para essa verificação execute o código abaixo:

mongo --eval 'db.runCommand({ connectionStatus: 1 })'

Comandos para gerenciar o serviço do MongoDB

  • Ver status do serviço do MongoDB:
sudo systemctl status mongoDB
  • Parar o serviço do MongoDB
sudo systemctl stop mongod
  • Iniciar o serviço do MongoDB quando o serviço estiver parado
sudo systemctl start mongod
  • Reiniciar o serviço do MongoDB
sudo systemctl restart mongod
  • Desabilitar o serviço do MongoDB
sudo systemctl disable mongod
  • Habilitar o serviço do MongoDB
sudo systemctl enable mongod

Fonte: digitalocean.com

Habilitando conexão remota ao MongoDB

Para permitir que o MongoDB seja acessado por outros serviços que não estejam em localhost deve-se alterar a linha bindIp: 127.0.0.1 para bindIp: 0.0.0.0 conforme o exemplo abaixo:
Antes: Depois:

Alterar local de gravação dos dados

Para alterar o local onde os dados serão gravados edite o arquivo /etc/mongod.conf alterando a linha dbPath: /var/lib/mongodb para o endereço do diretório onde os dados serão gravados.
Observação: Esta alteração é opcional.

Antes: Depois:

Após realizar esta alteração, deve-se colocar o usuário mongdb como owner do diretório onde serão gravados os dados do MongoDB. Para isso execute o comando abaixo:

chown -R mongodb /mongodb/data/

Após a alteração do owner do diretório, reinicie o serviço do MongoDB e verifique o status:

sudo systemctl restart mongod.service
sudo systemctl status mongod

  • (edição externa)