Menu Docs
Página inicial do Docs
/
MongoDB Atlas
/ / /

Semente com mongorestore

Você pode usar mongodump e mongorestore para popular o MongoDB Atlas cluster com dados de um conjunto de réplicas ou standalone do MongoDB existente. Para obter orientação sobre como semear dados de um cluster fragmentado do MongoDB existente, entre em contato com o suporte do Atlas clicando em Support na navegação à esquerda da UI do Atlas.

Além de poder escalar um cluster de camada grátis do M0 para um cluster pago do M10+ usando a UI do Atlas, você também pode usar os procedimentos mongodump e mongorestore nesta seção para copiar dados de um cluster de camada grátis do M0 para um cluster M10+ .

Use a versão estável mais recente do mongodump e mongorestore para este procedimento.

Para garantir uma migração atualizada, agende uma janela de manutenção na qual você possa interromper todas as gravações em seu cluster de origem. Todas as operações de gravação emitidas para o cluster de origem após a conclusão da parte mongodump do procedimento não são migradas para o cluster de destino.

Depois que mongorestore concluir a restauração dos dados, você deverá transferir seus aplicativos para o cluster de destino do Atlas antes de retomar as operações de gravação. Para se conectar a um Atlas cluster, consulte Conectar-se a um cluster.

O tempo total de inatividade exigido depende de fatores como o tamanho dos dados que estão sendo migrados e a conexão de rede entre seu cluster de origem e o Atlas. Se você tiver dúvidas sobre tempo de inatividade prolongado, entre em contato com o suporte do Atlas clicando em Support na navegação à esquerda da UI do Atlas.

Para obter um procedimento de migração de indisponibilidade mínima guiada, consulte Migração live de conjunto de réplicas ou Migração live de cluster fragmentado.

O Atlas gerencia a criação de usuários do banco de dados. Se o cluster de origem impuser autenticação:

  • Permitir acesso de leitura ao primário.

  • Para usar mongorestore com a opção --oplogReplay , você deve excluir os diretórios admin e config do diretório dump que mongodump cria. Os diretórios admin e config contêm informações do usuário do banco de dados que você não pode adicionar a um Atlas cluster com mongorestore. Use o mongorestore --nsExclude para excluir o namespace admin.system.* .

Você não pode migrar nenhuma informação de usuário ou função existente para o Atlas. Para o cluster Atlas de destino, crie os devidos usuários do banco de dados para viabilizarem os padrões de uso do seu aplicativo. Atualize seus aplicativos como parte do procedimento de corte para usar os novos usuários do banco de dados. Para saber mais, consulte Configurar usuários do banco de dados.

Este processo requer a execução mongodump e mongorestore em um host no cluster de origem. Esses programas consomem recursos do sistema, como CPU e memória, e podem afetar o desempenho do host.

Execute este procedimento durante o uso do sistema sem pico ou durante uma janela de manutenção programada. Se a origem for um conjunto de réplicas, você poderá executar esse procedimento no host de um membro secundário. Depois de interromper as gravações no cluster, permita que o secundário alcance o primário antes de iniciar esse procedimento.

Este procedimento utiliza pipes do Linux para transmitir a saída de mongodump para mongorestore. Se o processo não conseguir acompanhar mongorestore o mongodump processo , você poderá ver erros de pipes quebradas.

Para obter orientação sobre como lidar com erros persistentes de pipe quebrado, entre em contato com o suporte do Atlas clicando em Support na navegação à esquerda da interface do usuário do Atlas.

O seguinte tutorial utiliza mongodump e mongorestore para transferir dados de um cluster MongoDB para um cluster Atlas:

1

Importante

Opcional

Se o cluster de origem não impuser autenticação, pule esta etapa.

Se o sistema de origem impuser autenticação, você deverá fornecer um utilizador de banco de dados com privilégios para ler qualquer banco de dados como parte desse procedimento. Para saber mais sobre privilégios de usuário do banco de dados, consulte Controle de acesso baseado em funções do MongoDB.

Se esse usuário não existir, crie um usuário em seu conjunto de réplicas de origem do MongoDB com a role de backup no banco de dados admin .

Exemplo

Execute o comando a seguir no mongosh para criar o mySourceUser no banco de dados admin e atribuir a ele a função backup . Para conjuntos de réplicas, você deve executar esse comando no primário.

use admin
db.createUser(
{
user: "<mySourceUser>",
pwd: "<mySourcePassword>",
roles: [ "backup" ]
}
)
2

Com base no tipo de cadeia de conexão que você usa, copie um dos seguintes modelos para o seu editor de texto:

Observação

Para se conectar aos clusters do Atlas, recomendamos se conectar com uma cadeia de conexão de lista de sementes de DNS usando a opção --uri.

Observação

Se sua senha contiver caracteres especiais, ela deverá ser codificada por porcentagem.

Não execute este comando ainda. Prossiga para a próxima etapa depois de modificar o modelo.

3

Para executar o mongorestore em um Atlas cluster, você deve especificar um usuário do banco de dados no Atlas cluster que tenha o papel Atlas admin .

Se esse usuário não existir, crie o usuário:

  1. Se ainda não estiver exibido, selecione sua organização desejada no menu Organizations na barra de navegação.

  2. Clique em Access Manager na barra lateral ou clique em Access Manager na barra de navegação e, em seguida, clique em sua organização.

  3. Clique em Add New Database User.

  4. Adicione um usuário Atlas admin .

Para saber mais sobre o gerenciamento de usuários, consulte Configurar usuários do banco de dados.

4
  1. Se ainda não estiver exibido, selecione a organização que contém o projeto desejado no menu Organizations na barra de navegação.

  2. Se ainda não estiver exibido, selecione o projeto desejado no menu Projects na barra de navegação.

  3. Se a página Clusters ainda não estiver exibida, clique em Database na barra lateral.

5

No menu do cluster, clique em Command Line Tools.

6

A seção Binary Import and Export Tools da aba Command Line Tools exibe um modelo copiável com as opções mínimas exigidas para conectar o mongorestore ao seu Atlas cluster.

O modelo inclui valores de espaço reservado para determinadas opções. Copie e cole o modelo no editor de texto da sua preferência e faça as seguintes modificações:

  • password: substitua pela senha de usuário especificada em username. O modelo inclui um usuário de banco de dados do projeto como o username. Para fazer a autenticação com outro usuário, substitua o username e a senha para este usuário no password.

  • Adicione --nsExclude e configure o valor em "admin.system.*".

  • Adicione --archive.

Com base no tipo de cadeia de conexão usado, seu modelo deve ser semelhante a um dos seguintes comandos:

7

Importante

Certifique-se de que o host em que você está executando mongodump e mongorestore esteja na lista de acesso IP do projeto.

Para revisar sua lista de acesso IP do projeto, clique em Network Access na seção Security na barra lateral. A aba IP Access List será exibida.

Dica

Veja também:

No seu editor de texto, use o operador de pipe | para separar os comandos mongodump e mongorestore . Com base no tipo de connection string usado, o comando final deve ser semelhante a um dos seguintes:

Execute o comando completo a partir de um terminal ou shell conectado a uma máquina hospedeira no cluster de origem.

Após a conclusão bem-sucedida do procedimento, conecte-se ao cluster Atlas usando mongosh e verifique o resultado do procedimento. Para saber como, consulte Conectar via mongosh.

Você deve atualizar seus aplicativos para apontarem para o cluster Atlas antes de retomar as operações de gravação. Para saber como conectar aplicativos ao Atlas, consulte Conectar por meio de drivers.

← Versões anteriores do mongomirror