MongoDB é uma base de dados de documentos gratuita e de código aberto. Ele pertence a uma família de bancos de dados chamada NoSQL, que é diferente dos tradicionais bancos de dados SQL baseados em tabelas como MySQL e PostgreSQL.
No MongoDB, os dados são armazenados em documentos flexíveis, com a interface JSON, onde os campos podem variar de documento para documento. Ele não requer um esquema predefinido, e a estrutura de dados pode ser alterada ao longo do tempo.
Neste tutorial, vamos cobrir o processo de instalação e configuração da última versão do MongoDB Community Edition em uma máquina Ubuntu 18.04 dos repositórios oficiais do MongoDB.
Prerequisites #
Antes de continuar com este tutorial, certifique-se de que você está logado como um usuário com privilégios sudo.
Instalando MongoDB #
Na hora de escrever este artigo, a última versão do MongoDB é a versão 4.0.
Antes de continuar com o processo de instalação, vá até a instalação na seção Ubuntusection da documentação do MongoDB, e verifique se há uma nova versão disponível.
Os passos seguintes descrevem como instalar o MongoDB no seu servidor Ubuntu:
-
Adicionar a chave GPG do MongoDB ao seu sistema usando o seguinte comando:
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 9DA31620334BD75D9DCB49F368818C72E52529D4
Após a chave ser importada, adicione o repositório MongoDB com:
sudo add-apt-repository 'deb https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.0 multiverse'
Se você receber uma mensagem de erro dizendo
add-apt-repository command not found
, instale o pacotesoftware-properties-common
.Para instalar uma versão antiga do MongoDB, substitua
4.0
pela sua versão preferida. -
Atualize a lista de pacotes e instale o meta-pacote
mongodb-org
digitando:sudo apt update
sudo apt install mongodb-org
Os seguintes pacotes serão instalados no seu sistema como parte do pacote
mongodb-org
>-
mongodb-org-server
– O daemonmongod
e os scripts e configurações de inicialização correspondentes. -
mongodb-org-mongos
– Omongos
daemon. -
mongodb-org-shell
– A shell do mongo é uma interface JavaScript interativa para o MongoDB. Ela é usada para executar tarefas administrativas através da linha de comando. -
mongodb-org-tools
– Contém várias ferramentas MongoDB para importação e exportação de dados, estatísticas, bem como outras utilidades.
-
-
Após a instalação estar concluída, inicie o daemon MongoDB e habilite-o para iniciar na inicialização digitando:
sudo systemctl start mongod
sudo systemctl enable mongod
-
Para verificar se a instalação foi concluída com sucesso, vamos conectar ao servidor de banco de dados MongoDB usando a ferramenta
mongo
e imprimir o status da conexão:mongo --eval 'db.runCommand({ connectionStatus: 1 })'
A saída será assim:
MongoDB shell version v4.0.10connecting to: mongodb://127.0.0.1:27017MongoDB server version: 4.0.10{ "authInfo" : { "authenticatedUsers" : , "authenticatedUserRoles" : }, "ok" : 1}
Um valor de
1
para o campook
indica sucesso.
Configurando MongoDB #
MongoDB usa um ficheiro de configuração formatado em YAML, /etc/mongod.conf
. Você pode configurar sua instância MongoDB editando este arquivo.
As configurações padrão são suficientes para a maioria dos usuários. Entretanto, para ambientes de produção, é recomendado descomentar a seção de segurança e ativar a autorização, como mostrado abaixo:
security: authorization: enabled
A opção authorization
ativa o Controle de Acesso Baseado em Função (RBAC) que regula o acesso dos usuários aos recursos e operações do banco de dados. Se esta opção estiver desabilitada cada usuário terá acesso a todos os bancos de dados e executará qualquer ação.
Após fazer alterações no arquivo de configuração do MongoDB, reinicie o serviço mongod com:
sudo systemctl restart mongod
Para encontrar mais informações sobre as opções de configuração disponíveis no MongoDB 4.0, visite a página Opções do arquivo de configuraçãodocumentação.
Criar usuário administrativo MongoDB #
Se você habilitou a autenticação MongoDB, crie um usuário administrativo MongoDB que será usado para acessar e gerenciar a instância MongoDB.
Primeiro, acesse a shell mongo com:
mongo
Após você estar dentro da shell MongoDB digite o seguinte comando para se conectar à base de dados admin
:
use admin
switched to db admin
Sua o seguinte comando para criar um novo usuário chamado mongoAdmin
com o comando userAdminAnyDatabase
role:
db.createUser( { user: "mongoAdmin", pwd: "changeMe", roles: })
Successfully added user: {"user" : "mongoAdmin","roles" : }
Saia da shell mongo com:
quit()
Para testar as alterações, acesse a shell mongo usando o usuário administrativo que você criou anteriormente:
mongo -u mongoAdmin -p --authenticationDatabase admin
use admin
switched to db admin
Agora, imprima os usuários com:
show users
{"_id" : "admin.mongoAdmin","user" : "mongoAdmin","db" : "admin","roles" : ,"mechanisms" : }
Pode também tentar aceder à mongo shell sem quaisquer argumentos (escreva apenas mongo
) e veja se consegue listar os utilizadores usando os mesmos comandos que os anteriores.
Conclusion #
Você aprendeu como instalar e configurar o MongoDB 4.0 no seu servidor Ubuntu 18.04. Visite o Manual do MongoDB 4.0 para mais informações sobre este tópico.