Instale o MongoDB Community Edition no Debian
Nesta página
Observação
MongoDB Atlas
O MongoDB Atlas é uma opção de serviço MongoDB hospedado em nuvem que não requer sobrecarga de instalação e oferece camada grátis para começar.
Visão geral
Use este tutorial para instalar o MongoDB 8.0 MongoDB Community Edition usando o gerenciador de pacotes apt
.
Versão do MongoDB
Este tutorial instala o MongoDB 8.0 Community Edition. Para instalar uma versão diferente do MongoDB Community, use o menu suspenso de versão no canto superior esquerdo desta página para selecionar a documentação dessa versão.
Considerações
Suporte a plataformas
MongoDB 8.0 A Community Edition é compatível com as seguintes 64 versões do Debian bits na arquiteturax86_:64
Debian 12 "Bookworm"
O MongoDB é compatível somente com as versões de 64 bits dessas plataformas.
Consulte Suporte da Plataforma para obter mais informações.
Notas de produção
Antes de implantar o MongoDB em um ambiente de produção, considere o documento Notas de produção para implantações autogerenciadas, que oferece considerações de desempenho e recomendações de configuração para implantações de produção do MongoDB.
Pacotes oficiais do MongoDB
Para instalar o MongoDB Community em seu sistema Debian, estas instruções utilizarão o pacote oficial do mongodb-org
, que é mantido e suportado pela MongoDB Inc. O pacote oficial do mongodb-org
sempre contém a versão mais recente do MongoDB e está disponível em seu próprio repositório dedicado.
Importante
O pacote mongodb
fornecido pela Debian não é mantido pela MongoDB Inc. e entra em conflito com o pacote mongodb-org
oficial. Se já tiver instalado o mongodb
pacote em seu sistema Debian, você deverá primeiro desinstalar o mongodb
pacote antes de prosseguir com estas instruções.
Consulte Pacotes do MongoDB Community Edition para obter a lista completa de pacotes oficiais.
Instale o MongoDB Community Edition
Siga estas etapas para instalar o MongoDB Community Edition usando o gerenciador de pacotes apt
.
A partir de um terminal, instale gnupg
e curl
, se ainda não estiverem disponíveis:
sudo apt-get install gnupg curl
Para importar a chave GPG pública do MongoDB, execute o seguinte comando:
curl -fsSL https://www.mongodb.org/static/pgp/server-8.0.asc | \ sudo gpg -o /usr/share/keyrings/mongodb-server-8.0.gpg \ --dearmor
Crie um /etc/apt/sources.list.d/mongodb-org-8.0.list
arquivo para o MongoDB.
Crie o arquivo de lista usando o comando apropriado para sua versão do Debian:
echo "deb [ signed-by=/usr/share/keyrings/mongodb-server-8.0.gpg ] http://repo.mongodb.org/apt/debian bookworm/mongodb-org/8.0 main" | sudo tee /etc/apt/sources.list.d/mongodb-org-8.0.list
Instale o Servidor MongoDB Community
Você pode instalar a versão estável mais recente do MongoDB ou uma versão específica do MongoDB.
Para instalar a versão estável mais recente, emita o seguinte
sudo apt-get install -y mongodb-org
Para instalar uma versão específica, você deve especificar cada pacote de componente individualmente junto com o número da versão, como no exemplo a seguir:
sudo apt-get install -y mongodb-org=8.0.0 mongodb-org-database=8.0.0 mongodb-org-server=8.0.0 mongodb-mongosh mongodb-org-mongos=8.0.0 mongodb-org-tools=8.0.0
Se você instalar o mongodb-org=8.0.0
somente e não incluir os pacotes de componentes, a versão mais recente de cada pacote MongoDB será instalada independentemente da versão especificada.
Opcional. Embora você possa especificar qualquer versão disponível do MongoDB, o apt-get
atualizará os pacotes quando uma versão mais nova se tornar disponível. Para evitar atualizações indesejadas, você pode fixar o pacote na versão que está instalada atualmente:
echo "mongodb-org hold" | sudo dpkg --set-selections echo "mongodb-org-database hold" | sudo dpkg --set-selections echo "mongodb-org-server hold" | sudo dpkg --set-selections echo "mongodb-mongosh hold" | sudo dpkg --set-selections echo "mongodb-org-mongos hold" | sudo dpkg --set-selections echo "mongodb-org-tools hold" | sudo dpkg --set-selections
Execute o MongoDB Community Edition
Considerações ulimit
A maioria dos sistemas operacionais do tipo Unix limita os recursos do sistema que um processo pode usar. Esses limites podem impacto negativamente a operação do MongoDB e devem ser ajustados. Consulte Configurações do UNIX ulimit
para sistemas autogerenciados para obter as configurações recomendadas para sua plataforma.
Observação
Se o valor ulimit
para o número de arquivos abertos estiver em 64000
, o MongoDB gerará um aviso de inicialização.
Diretórios
Por padrão, uma instância MongoDB armazena:
seus arquivos de dados em
/var/lib/mongodb
seus arquivos de log em
/var/log/mongodb
Se você instalou pelo gerenciador de pacotes, estes diretórios padrão serão criados durante a instalação.
Se você instalou manualmente baixando os tarballs, você poderá criar os diretórios utilizando o mkdir -p <directory>
ou sudo mkdir -p
<directory>
dependendo do usuário que executará MongoDB. (Veja as páginas de manual do Linux para obter informações sobre mkdir
e sudo
.)
Por padrão, o MongoDB é executado com a conta de usuário mongodb
. Se você alterar o usuário que executa o processo MongoDB, também deverá modificar a permissão /var/lib/mongodb
para /var/log/mongodb
os diretórios e para conceder a este usuário acesso a estes diretórios.
Para especificar um diretório de arquivo de log diferente e diretório de arquivo de dados, edite as configurações do systemLog.path
e storage.dbPath
no /etc/mongod.conf
. Certifique-se de que o usuário que executa o MongoDB tenha acesso a esses diretórios.
Procedimento
Siga estas etapas para executar o MongoDB Community Edition em seu sistema. Estas instruções pressupõem que você esteja usando o pacote oficial mongodb-org
, -- não o pacote mongodb
não oficial fornecido pelo Debian -- e usando as configurações padrão.
Sistema de Inicialização
Para executar e gerenciar seu processo do mongod
, você utilizará o sistema de inicialização integrado do sistema operacional. Versões recentes do Linux tendem a utilizar systemd (que utiliza o comando systemctl
), enquanto versões mais antigas do Linux tendem a utilizar System V init (que utiliza o comando service
).
Se você não tiver certeza de qual sistema de inicialização sua plataforma usa, execute o seguinte comando:
ps --no-headers -o comm 1
Em seguida, selecione a aba apropriada abaixo com base no resultado:
systemd
- selecione a aba systemd (systemctl) abaixo.init
- selecione a aba System V Init (service) abaixo.
Inicie o MongoDB.
Você pode iniciar o processo mongod
emitindo o seguinte comando:
sudo systemctl start mongod
Se receber um erro semelhante ao seguinte ao iniciar o mongod
:
Failed to start mongod.service: Unit mongod.service not found.
Execute o seguinte comando primeiro:
sudo systemctl daemon-reload
Em seguida, execute o comando de inicialização acima novamente.
Pare o MongoDB.
Conforme necessário, você pode interromper o processo mongod
emitindo o seguinte comando:
sudo systemctl stop mongod
Reinicie o MongoDB.
Você pode reiniciar o processo mongod
emitindo o seguinte comando:
sudo systemctl restart mongod
Você pode acompanhar o estado do processo em busca de erros ou mensagens importantes
observando o resultado no arquivo /var/log/mongodb/mongod.log
.
Comece a usar o MongoDB.
Inicie uma sessão mongosh
na mesma máquina host que o mongod
. Você pode executar mongosh
sem nenhuma opção de linha de comando para se conectar a um mongod
que esteja sendo executado em seu host local com a porta padrão 27017.
mongosh
Para obter mais informações sobre como se conectar usando mongosh
, como se conectar a uma instância mongod
em execução em um host e/ou porta diferente, consulte a documentação do mongosh.
Para ajudá-lo a começar a usar o MongoDB, o MongoDB fornece Guias de Introdução em várias edições de driver. Para obter a documentação do driver, consulte Iniciar o desenvolvimento com o MongoDB.
Inicie o MongoDB.
Emita o seguinte comando para iniciar mongod
:
sudo service mongod start
Verifique se o MongoDB foi iniciado com sucesso.
Verifique se o processo mongod
foi iniciado com sucesso:
sudo service mongod status
Você também pode verificar no arquivo de log o status atual do processo mongod
, localizado em: /var/log/mongodb/mongod.log
por padrão. Uma instância mongod
em execução indicará que está pronta para conexões com a seguinte linha:
[initandlisten] waiting for connections on port 27017
Pare o MongoDB.
Conforme necessário, você pode interromper o processo mongod
emitindo o seguinte comando:
sudo service mongod stop
Reinicie o MongoDB.
Emita o seguinte comando para reiniciar mongod
:
sudo service mongod restart
Comece a usar o MongoDB.
Inicie uma sessão mongosh
na mesma máquina host que o mongod
. Você pode executar mongosh
sem nenhuma opção de linha de comando para se conectar a um mongod
que esteja sendo executado em seu host local com a porta padrão 27017.
mongosh
Para obter mais informações sobre como se conectar usando mongosh
, como se conectar a uma instância mongod
em execução em um host e/ou porta diferente, consulte a documentação do mongosh.
Para ajudá-lo a começar a usar o MongoDB, o MongoDB fornece Guias de Introdução em várias edições de driver. Para obter a documentação do driver, consulte Iniciar o desenvolvimento com o MongoDB.
Desinstale o MongoDB Community Edition
Para remover completamente o MongoDB de um sistema, você deve remover os próprios aplicativos MongoDB, os arquivos de configuração e quaisquer diretórios que contenham dados e registros. A seção a seguir orienta você nas etapas necessárias.
Aviso
Esse processo removerá completamente o MongoDB, sua configuração e todos os bancos de dados. Este processo não é reversível, portanto, certifique-se de fazer backup de todas as suas configurações e dados antes de continuar.
Pare o MongoDB.
Interrompa o processo mongod
com o seguinte comando:
sudo service mongod stop
Informações adicionais
Vinculação ao localhost por padrão
Por padrão, o MongoDB é iniciado com bindIp
, definido como 127.0.0.1
, que se vincula à interface de rede localhost. Isso significa que o mongod
só pode aceitar conexões de clientes que estejam executando na mesma máquina. Os clientes remotos não conseguirão se conectar ao mongod
e o mongod
não conseguirá inicializar um conjunto de réplicas, a menos que esse valor seja definido como uma interface de rede válida.
Este valor pode ser configurado de duas maneiras:
no arquivo de configuração do MongoDB com
bindIp
, oupor meio do argumento linha de comando
--bind_ip
Aviso
Antes de vincular sua instância a um endereço IP acessível publicamente, você deve proteger seu cluster contra o acesso não autorizado. Para obter uma lista completa de recomendações de segurança, consulte Lista de verificação de segurança para implantações autogerenciadas. No mínimo, considere habilitar a autenticação e fortalecer a infraestrutura de rede.
Para obter mais informações sobre como configurar bindIp
, consulte Vinculação de IP em implementações autogerenciadas.
Pacotes do MongoDB Community Edition
O MongoDB Community Edition está disponível em seu próprio repositório dedicado e contém os seguintes pacotes com suporte oficial:
Nome do Pacote | Descrição | ||||||
---|---|---|---|---|---|---|---|
mongodb-org | Um metapackage que instala automaticamente os pacotes do componente listados abaixo. | ||||||
mongodb-org-database | Um
| ||||||
mongodb-mongosh | Contém o MongoDB Shell ( mongosh ). | ||||||
mongodb-org-tools | Um
|