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 -y1.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.ascListe os repositórios
yum repolist1.2. Ajuste de Processamentos
nano /etc/security/limits.confRecomendado:
mongod soft nproc 64000 mongod hard nproc 64000 mongod soft nofile 64000 mongod hard nofile 640001.3. Instalação do MongoDB 4.4
Execute o comando:
yum -y install mongodb-orgInicie o processo
systemctl start mongod
chkconfig mongod onVerifique se a porta 27017 está aberta para executar o serviço.
netstat -plntuVerifique se o MongoDB está em execução
systemctl status mongodSe 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 mongodAjustes 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: enabled1.3.4. Salve as modificações e execute o comando para iniciar o serviço novamente
systemctl daemon-reload systemctl restart mongodVocê 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
mongoPara o uso de porta personalizada
mongo -port=Nº-DA-PORTA1.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 mongod1.6. Deletar Usuários
1.6.1. Entre no terminal do mongoDB;
Para o uso de porta padrão
mongoPara o uso de porta personalizada
mongo -port=Nº-DA-PORTA1.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.