Pré-requisito: o docker está instalado no mac
1. Extraia o espelho MongoDB mais recente
docker pull mongo:latest
2. Veja o espelho
docker images
3. Execute o contêiner mongo
docker run -itd --name mongo -p 27017:27017 mongo --auth
incitar:
- docker run: crie um novo contêiner e execute um comando
- -i: executa o contêiner no modo interativo, geralmente usado junto com -t;
- -t: Realoca um pseudo terminal de entrada para o contêiner, geralmente usado ao mesmo tempo que -i;
- -d: executa o contêiner em segundo plano e retorna o ID do contêiner;
- --Name = "nginx-lb": especifique um nome para o contêiner;
- -p: especifica o mapeamento da porta, o formato é: porta do host (host): porta do contêiner
- --Auth: ativa a autenticação de senha do contêiner mongo
mongodb instalado com sucesso
4. Insira o recipiente mongo
docker exec -it mongo mongo admin
incitar:
- docker exec: executa comandos no contêiner em execução
- -i: Mantenha o STDIN aberto, mesmo que não esteja conectado
- -t: aloca um pseudoterminal
5. Crie uma conta e senha de administrador
A conta e senha aqui são definidas como admin
db.createUser({ user:'admin',pwd:'admin',roles:[ { role:'userAdminAnyDatabase', db: 'admin'}]});
O usuário em mongodb é baseado na função de identidade e a função da conta do administrador é userAdminAnyDatabase. 'userAdmin' significa identidade de gerenciamento de usuário, 'AnyDatabase' significa pode gerenciar qualquer banco de dados.
6. Faça login com a conta criada
db.auth('admin', 'admin')
Depois que a conta de administrador estiver conectada, você pode usar esta conta para criar outras contas de administrador de banco de dados
use yourdatabase
db.createUser({ user: "youruser", pwd: "yourpassword", roles: [{ role: "dbOwner", db: "yourdatabase" }] })
As funções integradas de função são as seguintes:
- Ler: permite que os usuários leiam o banco de dados especificado
- readWrite: permite que os usuários leiam e gravem no banco de dados especificado
- dbAdmin: Permite que os usuários executem funções de gerenciamento no banco de dados especificado, como criação de índice, exclusão, visualização de estatísticas ou acesso a system.profile
- userAdmin: permite que os usuários gravem na coleção system.users e criem, excluam e gerenciem usuários no banco de dados especificado
- clusterAdmin: está disponível apenas no banco de dados admin, dando aos usuários a autoridade de gerenciamento de todos os shards e funções relacionadas ao conjunto de replicação.
- readAnyDatabase: disponível apenas no banco de dados do administrador, dando aos usuários permissões de leitura para todos os bancos de dados
- readWriteAnyDatabase: disponível apenas no banco de dados do administrador, dando ao usuário permissões de leitura e gravação para todos os bancos de dados
- userAdminAnyDatabase: disponível apenas no banco de dados admin, dando ao usuário userAdmin permissões para todos os bancos de dados
- dbAdminAnyDatabase: Disponível apenas no banco de dados admin, concede ao usuário dbAdmin permissões para todos os bancos de dados.
- root: Disponível apenas no banco de dados admin. Super conta, super autoridade
Ferramenta de gerenciamento de GUI MongoDB: Robo 3T
https://robomongo.org/download
Backup e recuperação do MongoDB
- Método de backup:
docker cp
mongodump
- Método de recuperação:
docker cp
mongorestore
https://www.runoob.com/mongodb/mongodb-mongodump-mongorestore.html