Instalação do MongoDB

Tutorial baseado em centOS 7

O que é importante saber, durante cada passo é necessário reiniciar o serviço após ele instalado, caso contrário nenhuma das modificações efetuadas será aplicada e você correrá o risco de rollback nas configurações que não foram salvas. Então não estranhe se tiver vários restart durante o tutorial.

ANTES DE PROSSEGUIR, ATUALIZE O AMBIENTE COMPLETAMENTE

Requisitos de Instalação / Preparando o ambiente
1.1. Adição do Repositório
1.2. Ajuste de Processamentos
1.3. Instalação do MongoDB 4.4
1.4. Configurações Adicionais
1.5. Criação de Usuário
1.6. Deletar Usuários
1. Requisitos de Instalação / Preparando o ambiente

1.0.1. Atualização do ambiente

yum upgrade -y
yum update -y
yum install nano -y

1.0.2. Desativação do firewalld

systemctl stop firewalld systemctl disable firewalld

1.1 Adição do Repositório

Crie o arquivo de repositório

nano /etc/yum.repos.d/mongodb-org-4.4.repo
[mongodb-org-4.4] name=MongoDB Repository baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/4.4/x86_64/ gpgcheck=1 enabled=1 gpgkey=https://www.mongodb.org/static/pgp/server-4.4.asc

Liste os repositórios

yum repolist

1.2. Ajuste de Processamentos

nano /etc/security/limits.conf

Recomendado:

mongod soft nproc 64000 mongod hard nproc 64000 mongod soft nofile 64000 mongod hard nofile 64000

1.3. Instalação do MongoDB 4.4

Execute o comando:

yum -y install mongodb-org

Inicie o processo

systemctl start mongod
chkconfig mongod on

Verifique se a porta 27017 está aberta para executar o serviço.

netstat -plntu

Verifique se o MongoDB está em execução

systemctl status mongod

Se o mongoDB não estiver funcionando, considere ajustar o firewall da máquina, o recomendado que você remova o iptables ou firewalld e utilize o CSF como saída de ajuste, a porta de autenticação do serviço é a que você vai usar, portanto coloque-a em whitelist no firewall.

1.4. Configurações Adicionais

systemctl stop mongod

Ajustes no arquivo de configuração serão efetuadas.

Agora faça as seguintes alterações no arquivo.
1.3.1. No campo port modifique a porta para outra disponível sem ser a padrão, é mais seguro;
1.3.2. No campo bindIp: 127.0.0.1 adicione o IP do servidor em seguida a vírgula, não dê espaço entre a vírgula e o IP;
1.3.3. Logo abaixo do campo snmp: adicione o seguinte código

security: authorization: enabled

1.3.4. Salve as modificações e execute o comando para iniciar o serviço novamente

systemctl daemon-reload systemctl restart mongod

Você ignorar o passo 1.3.3 deixará o banco de dados aberto completamente.

1.5. Criação de Usuário
1.5.1. O que é importante saber
1.5.2. Criação de usuário administrador
1.5.3. Criação de usuário root

1.5.1. O que é importante saber1.5.1.1. Se optar por ter usuários para cada banco de dados, crie primeiro um usuário root, caso contrário você perderá acesso para criação dessa categoria de usuário, caso tenha efetuado e deseje recuperar acesso pule para o passo 1.8.
1.5.1.2. Não coloque o usuário com letras maiúsculas ou caractere especiais! Isso dará problemas.
1.5.1.3. Não rode todos os comandos de uma vez, sempre que criar um usuário saia do terminal e inicie novamente
db.auth(‘USUÁRIO’, ‘SENHA’)

Execute o comando para abrir o terminal do MongoDB
Para o uso de porta padrão

mongo

Para o uso de porta personalizada

mongo -port=Nº-DA-PORTA

1.5.2. Criação de Usuário Administrador
Dentro do terminal, faça o seguinte procedimento para criar um usuário administrador, alterando o campo user e pwd:

use admin db.createUser( { user: "USUÁRIO", pwd: "SENHA", roles: [ { role: "userAdminAnyDatabase", db: "BANCO-DE-DADSBANCO-DE-DADS" } ] } )

1.5.3. Criação de Usuário Root
Dentro do terminal, faça o seguinte procedimento para criar um usuário root, alterando o campo user e pwd:

use admin db.createUser( { user: "USUÁRIO", pwd: "SENHA", roles: [ "root" ] })

Feito o procedimento, é necessário que reinicie o serviço para surtir efeitos.

systemctl restart mongod

1.6. Deletar Usuários
1.6.1. Entre no terminal do mongoDB;
Para o uso de porta padrão

mongo

Para o uso de porta personalizada

mongo -port=Nº-DA-PORTA

1.6.2. Acesse o terminal se autenticando use o comando abaixo com o usuário já existente;

db.auth('USUÁRIO', 'SENHA')

1.6.3. Use o comando db.dropUser para revogar os privilégios de um usuário.

db.dropUser('Usuário')

1.7. Considerações Finais
1.7.1. Você pode usar os programas Studio 3T ou MongoDB Compass para efetuar os testes.

Rolar para cima