Menu Docs
Página inicial do Docs
/
Ferramentas do banco de dados MongoDB
/

Comportamento, acesso e uso de mongoimport

Nesta página

  • Comportamento
  • Acesso necessário
  • Saiba mais

Aviso

Conflitos de importação e exportação de dados com ($) e (.)

A partir do MongoDB 5.0, os nomes dos campo do documento podem ser prefixados com um caractere de dólar ($) e podem conter um caractere de ponto (.). No entanto, mongoimport e mongoexport não funcionarão com nomes de campo que usem esses caracteres.

O MongoDB Extended JSON v2 não consegue diferenciar entre os invólucros de tipo e os campos que por acaso têm o mesmo nome dos invólucros de tipo. Não use formatos JSON Estendidos em contextos onde as representações BSON correspondentes possam incluir chaves prefixadas ($). O mecanismo DBRef é uma exceção a esta regra geral.

Também há restrições quanto ao uso de mongoimport e mongoexport com (.) em nomes de campos. Como os arquivos CSV usam o (.) para representar hierarquias de dados, um (.) em um nome de campo será interpretado incorretamente como um nível de aninhamento.

Se você precisar preservar todos os tipos de dados BSON avançados ao usar o mongoexport para executar backups completos da instância, certifique-se de especificar Extended JSON v2.0 (modo canônico) com a opção --jsonFormat do mongoexport da seguinte forma:

mongoexport --jsonFormat=canonical --collection=<coll> <connection-string>

Se --jsonFormat não for especificado, mongoexport produzirá dados em Extended JSON v2.0 (modo relaxado) por padrão.

O mongoimport utilizará automaticamente o formato JSON localizado no arquivo de dados de destino especificado quando da restauração. Por exemplo, ele usará Extended JSON v2.0 (modo canônico) se o arquivo de exportação de dados de destino tiver sido criado por mongoexport com --jsonFormat=canonical especificado.

mongoimport exige que os dados de importação estejam em Extended JSON v2.0 (canônico) ou Extended JSON v2.0 (relaxado) por padrão. Para importar dados formatados usandoJSON v1.0 estendido, especifique a opção --legacy .

Dica

Em geral, as versões do mongoexport e mongoimport devem corresponder. Ou seja, para importar dados criados a partir de mongoexport, você deve usar a versão correspondente de mongoimport.

Por padrão, mongoimport pode inserir documentos em uma ordem aleatória. Para preservar a ordem do documento durante o processo de restauração, use --maintainInsertionOrder.

mongoimport suporta apenas ficheiro de dados codificados em UTF-8. Usar outras codificações produz erros.

mongoimport cria automaticamente conexões compatíveis com FIPS para um mongod/mongos configurado para usar o modo FIPS.

Se você especificar a preocupação de gravação na opção --writeConcern e na opção --uri connection string, o valor --writeConcern substituirá a preocupação de gravação especificada na string URI.

mongoimport usa um tamanho máximo de lote de 100.000 para executar operações de inserção/upsert em massa.

Para se conectar a um mongod que impõe autorização com a opção --auth, você deve usar as opções --username e --password. O usuário que deseja se conectar deve ter, no mínimo, a função readWrite no banco de dados para o qual está importando dados.

Voltar

Compatibilidade e instalação