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

Métodos

Nesta página

  • Métodos de administração
  • Métodos de índice de pesquisa do Atlas Search
  • Métodos de operação em massa
  • Métodos de collection
  • Métodos de conexão
  • Métodos de cursor
  • Métodos do banco de dados
  • Métodos de criptografia no nível de campo do lado do cliente
  • Métodos nativos
  • Métodos de cache do plano de consulta
  • Métodos de replicação
  • Métodos de gerenciamento de funções
  • Métodos de objeto de sessão
  • Métodos de status do servidor
  • Métodos de compartilhamento
  • Métodos de telemetria
  • Métodos de transação
  • Métodos de gerenciamento de usuários

O documento a seguir lista os métodos disponíveis no MongoDB Shell. Clique em um método para visualizar sua documentação no Manual do MongoDB, incluindo sintaxe e exemplos.

Importante

Os métodos que redefinem a conexão do shell com o servidor disparam um encerramento de todas as sessões abertas do servidor. Quando uma sessão termina, todas as operações em andamento também são encerradas e o cliente deve se autenticar novamente se a autenticação estiver ativada.

Os métodos a seguir redefinem a conexão do shell:

  • db.auth

  • Mongo.setReadPref

  • Mongo.setReadConcern

Método
Descrição
db.adminCommand()
Executa um comando no banco de dados do admin.
Informa as operações atuais em andamento.
Termina uma operação especificada.
Desliga o mongod ou mongos processo atual de forma limpa e segura.
Libera as gravações em disco e trava o banco de dados para evitar operações de gravação e auxiliar nas operações de backup.
Permite que as gravações continuem em um banco de dados bloqueado com db.fsyncLock().

Os índices do Atlas Search permitem consultar dados no Atlas Search. Os índices do Atlas Search permitem pesquisa de query de texto de alto desempenho, mapeando termos de pesquisa para os documentos que contêm esses termos.

Use os métodos a seguir para gerenciar índices do Atlas Search.

Importante

Os métodos a seguir só podem ser executados em sistemas hospedados no MongoDB Atlas.

Nome
Descrição
Cria um ou mais índices de Pesquisa do Atlas em uma coleção especificada.
Exclui um índice de Pesquisa do Atlas existente.
Retorna informações sobre Atlas Search indexes em uma coleção especificada.
Atualiza um índice existente do Atlas Search.
Método
Descrição
Inicializa e retorna um novo construtor de operações do Bulk() para uma coleção. O construtor cria uma lista ordenada de operações de gravação que o MongoDB executa em massa.
Inicializa e retorna um novo construtor de operações do Bulk() para uma coleção. O construtor cria uma lista não ordenada de operações de gravação que o MongoDB executa em massa.
Cria um construtor de operações em massa utilizado para gerar uma lista de operações de gravação para executar em massa para uma única coleção. Para instanciar o construtor, utilize o método db.collection.initializeOrderedBulkOp() ou db.collection.initializeUnorderedBulkOp().
Executa a lista de operações construídas pelo construtor de operações do Bulk().
Especifica uma condição de query para uma atualização ou uma operação de remoção.
Define a opção dica que especifica o índice para suportar a operação em massa.
Adiciona uma operação de remoção a uma lista de operações em massa.
Adiciona uma única operação de remoção de documento a uma lista de operações em massa.
Adiciona uma operação de substituição de documento único a uma lista de operações em massa.
Adiciona uma única operação de atualização de documento a uma lista de operações em massa.
Adiciona uma operação de atualização múltipla a uma lista de operações em massa. O método atualiza campos específicos em documentos existentes.
Define a opção upsert para true para uma atualização ou uma operação de substituição.
Retorna uma matriz de operações de gravação executadas por Bulk.execute().
Adiciona uma operação de inserção a uma lista de operações em massa.
Retorna um documento JSON contendo o número de operações e lotes no objeto Bulk().
Gera uma string de um documento JSON que contém o número de operações e lotes no objeto Bulk().
Método
Descrição
Fornece acesso ao aggregation pipeline.

Fornece funcionalidade de operação para gravação em massa.

Descontinuado em mongosh 1.0.6. Em vez disso , use db.collection.countDocuments() ou db.collection.estimatedDocumentCount() .
Retorna uma contagem do número de documentos em uma coleção ou visualização. Encapsula o estágio de agregação $group com uma expressão $sum.
Gera uma contagem aproximada dos documentos em uma coleção ou visualização.
Constrói um índice em uma coleção.
Constrói um ou mais índices em uma coleção.
Retorna o tamanho da coleção. Encapsula o campo size na saída do collStats.
Exclui um único documento em uma coleção.
Exclui vários documentos em uma coleção.
Gera um array de documentos com valores distintos para o campo especificado.
Remove a coleção especificada do banco de dados.
Remove um índice especificado em uma coleção.
Remove todos os índices de uma coleção.

Descontinuado. Use db.collection.createIndex().

Retorna informações sobre a execução de consultas de vários métodos.
Executa uma consulta em uma coleção ou uma visualização e retorna um objeto do cursor.
Modifica atomicamente e retorna um único documento.
Executa uma consulta e retorna um único documento.
Localiza um único documento e o exclui.
Localiza um único documento e o substitui.
Localiza um único documento e o atualiza.

Retorna uma array de documentos que descrevem os índices existentes em uma coleção.

Imprime as estatísticas de distribuição de dados para uma coleção fragmentada.
Fornece um invólucro para o comando do banco de dados getShardVersion.
Insere um novo documento em uma coleção.
Insere vários novos documentos em uma coleção.
Informa se uma coleção é uma coleção limitada.
Executa operações de agregação de map-reduce em uma coleção.
Reconstrói todos os índices existentes em uma coleção.
Altera o nome de uma coleção.
Substitui um único documento em uma coleção.
Informa sobre o estado de uma coleção. Fornece um encapsulador em torno do collStats.
Informa o tamanho total usado pela coleção em bytes. Fornece um encapsulador em torno do campo storageSize da saída collStats.
Relata o tamanho total usado pelos índices em uma coleção. Fornece um encapsulador em torno do campo totalIndexSize da saída collStats.
Indica o tamanho total de uma coleção, abrangendo todos os documentos e índices associados.
Modifica um único documento em uma coleção.
Modifica vários documentos em uma coleção.
Valida uma coleção.
Abre um mudar cursor de fluxo na coleção.
Método
Descrição

Construtor JavaScript para instanciar uma conexão de banco de dados a partir do shell mongo ou de um arquivo JavaScript.

O método Mongo() tem os seguintes parâmetros:

Parâmetro
Tipo
Descrição
host
string

Opcional

A string de conexão para a conexão do banco de dados de destino.

Se omitido, o Mongo() instancia uma conexão com a interface do localhost na porta 27017 padrão.

autoEncryptionOpts
Documento

Opcional

Novidades na versão 4.2.

Parâmetros de configuração para ativar a criptografia de nível de campo do lado do cliente.

autoEncryptionOpts substitui a configuração de criptografia de nível de campo do lado do cliente existente da conexão do banco de dados. Se omitido, o Mongo() herda a configuração de criptografia do nível de campo do lado do cliente da conexão do banco de dados atual.

Para obter a documentação de uso e sintaxe, consulte AutoEncryptionOpts.

Retorna um objeto do banco de dados.
Define a preferência de leitura para a conexão MongoDB.
Abre um cursor de fluxo de alterações para um conjunto de réplicas ou um cluster fragmentado para relatar todas as coleções não relacionadas ao sistema nos seus bancos de dados, com exceção dos bancos de dados admin, local e config.
Método
Descrição
Adiciona sinalizadores de protocolo de fio especiais que modificam o comportamento da consulta.

Permite que operações db.collection.find() em uma coleção fragmentada retornem resultados parciais, em vez de um erro, se um ou mais fragmentos consultados não estiverem disponíveis.

Controla o número de documentos que o MongoDB retornará ao cliente em uma única mensagem de rede.

A seguinte consulta de exemplo retorna resultados em lotes de 100:

db.myCollection.find().batchSize(100)
Feche um cursor e libere os recursos do servidor associado.
Especifica o agrupamento do cursor retornado pelo db.collection.find().
Adicione um comentário à consulta para permitir o rastreamento nos registros e na coleção system.profile.
Modifica o cursor para retornar o número de documentos no conjunto de resultados, em vez de retornar os documentos em si.
Informa sobre o plano de execução da consulta para um cursor.
Aplica uma função JavaScript para cada documento em um cursor.
Retorna true se o cursor tiver documentos e puder ser iterado.
Força o MongoDB a usar um índice específico para uma consulta.
Retorna true se o cursor estiver fechado.
Retorna true se o cursor estiver fechado e não houver objetos restantes no lote.
Calcula o total de documentos no cursor através da busca e iteração do conjunto de resultados no lado do cliente.
Restringe o tamanho do conjunto de resultados de um cursor.
Aplica uma função em cada documento em um cursor e coleta os resultados em um array.
Especifica um limite do índice superior exclusivo para um cursor. Para uso com cursor.hint()
Especifica um limite de tempo cumulativo em milissegundos para operações de processamento em um cursor.
Especifica um limite do índice inferior inclusivo para um cursor. Para uso com cursor.hint()
Retorna o próximo documento em um cursor.

Instrui o servidor para evitar fechar um cursor automaticamente após um período de inatividade.

Retorna o número de documentos deixados no lote do cursor atual.
Especifica uma preocupação de leitura para uma operação db.collection.find().
Especifica uma preferência de leitura para um cursor para controlar como o cliente direciona as consultas para um conjunto de réplicas.
Modifica o cursor para retornar as chaves de índice em vez dos documentos.
Adiciona um campo de ID do mecanismo de armazenamento interno a cada documento retornado pelo cursor.
Retorna uma contagem dos documentos no cursor após aplicar os métodos skip() e limit().
Retorna um cursor que só começa a retornar resultados após pular ou ignorar vários documentos.
Retorna os resultados seguindo uma ordem específica de classificação.
Marca o cursor como rastreável. Válido somente para cursores acima de coleções limitadas.
Retorna um array com todos os documentos obtidos pelo cursor.
Método
Descrição
Executa o pipeline admin/diagnóstico que não requer uma collection subjacente.
Cria uma nova collection ou visualização.
Cria uma exibição como resultado da aplicação do pipeline de agregação especificado à coleção ou exibição de origem.
Exibe o texto de ajuda para o comando de banco de dados especificado.
Remove o banco de dados atual.
Retorna uma coleção ou objeto de visualização. Usado para acessar coleções com nomes que não são válidos no shell mongo.
Retorna informações de collection para todas as collections e visualizações no banco de dados atual.
Lista todas as collections e visualizações no banco de dados atual.
Retorna a conexão do banco de dados atual.
Retorna as configurações atuais de verbosidade de registro.
Retorna o nome do banco de dados atual.
Retorna a configuração atual do nível de perfil, slowOpThresholdMs e slowOpSampleRate .
Fornece acesso ao banco de dados especificado.
Fornece uma lista de todos os comandos do banco de dados.
Termina uma sessão autenticada.
Imprime um relatório formatado da configuração de fragmentação e as informações sobre os chunks existentes em um cluster fragmentado.
Define um único nível de verbosidade para mensagens de registro.
Configura o nível do analisador do banco de dados , slowms e sampleRate.
Abre um cursor de change stream para que um banco de dados informe todas as suas collections fora do sistema.

Observação

Limitações

  • A criptografia automática só está disponível quando mongosh está conectado a um Atlas cluster ou a um servidor MongoDB Enterprise. Para obter detalhes, consulte Criptografia automática em nível de campo do lado do cliente. Os métodos listados nesta seção são usados para criptografia manual e são compatíveis com servidores não corporativos.

  • A criptografia automática não está disponível com a instalação em Homebrew do mongosh.

  • A criptografia em nível de campo só está disponível no binário mongosh e não está disponível no shell incorporado do Compass.

Método
Descrição
Cria uma coleção com campos criptografados.
Descriptografa o encryptedValue especificado se a conexão do banco de dados atual foi configurada com acesso ao Key Management Service (KMS) e ao cofre de chaves utilizado para criptografar o encryptedValue.
Criptografa o valor especificado utilizando o encryptionKeyId e encryptionAlgorithm especificados.
Retorna o objeto ClientEncryption para a coleção de banco de dados atual.
Retorna o objeto KeyVault para a conexão de banco de dados atual.
Adiciona o keyAltName à array keyAltNames da chave de encriptação de dados com o UUID especificado.
Adiciona uma chave de criptografia de dados ao cofre de chave associado à conexão do banco de dados.
Exclui uma chave de encriptação de dados com o UUID especificado do cofre de chave associado à conexão do banco de dados.
Obtém uma chave de criptografia de dados com o UUID especificado. A chave de criptografia de dados deve existir no cofre de chave associado à conexão do banco de dados.
Obtém todas as chaves de criptografia de dados com o keyAltName especificado.
Retorna todas as chaves de criptografia de dados armazenadas no cofre de chaves associado à conexão do banco de dados.
Remove o keyAltName especificado da chave de encriptação de dados com o UUID especificado. A chave de encriptação de dados deve existir no cofre de chave associado à conexão do banco de dados.
Método
Descrição

buildInfo()

Retorna o seguinte documento em formato JSON que descreve suas dependências de compilação e driver mongosh:

{
version: '1.10.1',
distributionKind: 'packaged',
buildArch: 'x64',
buildPlatform: 'linux',
buildTarget: 'unknown',
buildTime: '2023-06-21T09:49:37.225Z',
gitVersion: '05ad91b4dd40382a13f27abe1ae8c3f9f52a38f7',
nodeVersion: 'v16.20.1',
opensslVersion: '3.1.1',
sharedOpenssl: true,
runtimeArch: 'x64',
runtimePlatform: 'darwin',
deps: {
nodeDriverVersion: '5.6.0',
libmongocryptVersion: undefined,
libmongocryptNodeBindingsVersion: undefined
}
}

cd()

Altera o diretório de trabalho atual para o caminho especificado.

isInteractive()

Retorna um booleano indicando se o mongosh está sendo executado no modo interativo ou de script.

load()

Carrega e executa um arquivo JavaScript na shell.

No mongosh, scripts carregados com o método load() suportam as variáveis __filename e __dirname Node.js. Essas variáveis retornam o nome do arquivo e o diretório do script carregado, respectivamente. Os valores retornados são sempre caminhos absolutos.

No shell legado, você não pode acessar o nome do arquivo ou diretório do roteiro usando o método load().

print()

Imprima o texto ou variável especificada. print() e printjson() são nomes alternativos para console.log().

> print("hello world")
hello world
> x = "example text"
> print(x)
example text

pwd()

Retorna o diretório de trabalho atual da sessão de shell ativa.

quit()

Sai da sessão de shell atual.

sleep()

Suspende o shell mongo por um determinado período.

version()

Retorna a versão atual da instância do mongosh.
Método
Descrição
Retorna uma interface para acessar o objeto de cache do plano de consulta e os métodos PlanCache associados para uma coleção.
Remove todos os planos de consulta em cache para uma coleção.
Limpa os planos de consulta armazenados em cache para a plano de consulta especificado.
Lista os métodos disponíveis para visualizar e modificar o cache do plano de consulta de uma coleção.
Retorna uma matriz de entradas de cache de plano para uma coleta.
Método
Descrição
Adiciona um membro ao conjunto de réplicas. Você deve se conectar à primária do conjunto de réplicas para executar este método.
Adiciona um árbitro a um conjunto de réplicas existente.
Retorna um documento que contém a configuração do conjunto de réplicas atual.
Torna o nó do conjunto de réplicas ao qual o mongosh é conectado não qualificado para se tornar primary pela duração especificada. Você deve especificar a duração em segundos.
Gera o status do conjunto de réplicas a partir dos dados do oplog.
Inicia um novo conjunto de réplicas.
Retorna o registro de opção do membro do conjunto de réplicas ao qual o mongosh está conectado.
Retorna o registro de opção do membro do conjunto de réplicas ao qual o mongosh está conectado.
db.printSecondaryReplicationInfo

Retorna o status dos membros secundários do conjunto de réplicas.

Isto é idêntico ao método rs.printSecondaryReplicationInfo(). A saída desse método é semelhante ao método db.printSlaveReplicationInfo(). O método db.printSlaveReplicationInfo() é preterido no mongosh. Use db.printSecondaryReplicationInfo() em vez disso.

O seguinte é uma saída de exemplo do método rs.printSecondaryReplicationInfo() emitido em um conjunto de réplica com dois membros secundários:

source: rs2.example.net:27017
{
syncedTo: 'Tue Oct 13 2020 09:37:28 GMT-0700 (Pacific Daylight Time)',
replLag: '0 secs (0 hrs) behind the primary '
}
---
source: rs3.example.net:27017
{
syncedTo: 'Tue Oct 13 2020 09:37:28 GMT-0700 (Pacific Daylight Time)',
replLag: '0 secs (0 hrs) behind the primary '
}
rs.printSecondaryReplicationInfo

Retorna o status dos membros secundários do conjunto de réplicas.

Isto é idêntico ao método db.printSecondaryReplicationInfo(). A saída desse método é semelhante ao método rs.printSlaveReplicationInfo() na shell mongo legado. O método rs.printSlaveReplicationInfo() foi descontinuado no mongosh. Em vez disso, use rs.printSecondaryReplicationInfo() .

O seguinte é uma saída de exemplo do método rs.printSecondaryReplicationInfo() emitido em um conjunto de réplica com dois membros secundários:

source: rs2.example.net:27017
{
syncedTo: 'Tue Oct 13 2020 09:42:18 GMT-0700 (Pacific Daylight Time)',
replLag: '0 secs (0 hrs) behind the primary '
}
---
source: rs3.example.net:27017
{
syncedTo: 'Tue Oct 13 2020 09:42:18 GMT-0700 (Pacific Daylight Time)',
replLag: '0 secs (0 hrs) behind the primary '
}
Modifica a configuração de um conjunto de réplicas existente.
Remove o membro especificado pelo nome de host do conjunto de réplicas.
Retorna o status do membro do conjunto de réplicas ao qual o mongosh está conectado.
Torna o principal do conjunto de réplicas um secundário. Você deve estar conectado ao principal para executar este método.
Redefine o destino de sincronização para o membro do conjunto de réplica especificado pelo nome de host do membro do conjunto de réplica ao qual o mongosh está conectado.
Método
Descrição
Cria uma função e especifica seus privilégios.
Exclui uma função definida pelo usuário.
Exclui todas as funções definidas pelo usuário associados a um banco de dados.
Retorna informações para a função especificada.
Retorna informações para todas as funções definidas pelo usuário em um banco de dados.
Atribui privilégios a uma função definida pelo usuário.
Remove os privilégios especificados de uma função definida pelo usuário.
Especifica funções a partir dos quais uma função definida pelo usuário herda privilégios.
Remove as funções herdadas de uma função.
Atualiza uma função definida pelo usuário.
Método
Descrição
Inicia uma sessão para a conexão.
Atualiza o tempo de operação.
Termina a sessão.
Retorna o tempo de agrupamento mais recente como visto pela sessão.
Acesse o banco de dados especificado a partir da sessão no shell.
Gera o registro de data/hora da última operação reconhecida para a sessão.
Gera as opções da sessão.
Gera um boolean que especifica se a sessão terminou.
As opções para uma sessão na shell. Para acessar o objeto SessionOptions(), use Session.getOptions().
Método
Descrição

Retorna um documento que descreve a função da instância mongod.

Se o mongod for um membro de um conjunto de réplicas, os campos isWritablePrimary e secondary reportarão se a instância for o primário ou se for um membro secundário do conjunto de réplicas.

Retorna um documento com informações sobre o sistema que executa a instância do MongoDB.
Retorna estatísticas de latência para uma coleção especificada.
Retorna estatísticas de cada coleção.
Retorna um documento que exibe os parâmetros de compilação para a instância mongod.
Retorna um documento com informações sobre as opções de tempo de execução usadas para iniciar a instância do MongoDB.
Retorna um documento que fornece uma visão geral do processo do banco de dados.
Retorna um documento que informa o estado do banco de dados atual.
Retorna a versão da instância mongod.
Método
Descrição
Adiciona um fragmento a um cluster fragmentado.
Associa um fragmento a uma zona. Suporta a configuração de zonas em clusters fragmentados.

Retorna informações sobre se as partes de uma coleção fragmentada estiverem balanceadas.

Novidades na versão 4.4.

Desativa mesclagens automáticas de partes para um namespace.

Novidades na versão 7.0.

Desabilita a divisão automática do cluster fragmentado.
Desabilita o equilíbrio em uma única coleção em um banco de dados fragmentado. Não afeta o equilíbrio de outras coleções em um cluster fragmentado.

Permite mesclagens automáticas de partes para um namespace.

Novidades na versão 7.0.

Habilita a divisão automática para o cluster fragmentado.
Ativa o processo de balanceamento de coleção fragmentado se tiver sido desabilitado anteriormente usando sh.disableBalancing().
Habilita o compartilhamento em um banco de dados específico.
Retorna um booleano para reportar se o balanceador está habilitado no momento.
Retorna informações de distribuição de dados sobre coleções fragmentadas. sh.getShardedDataDistribution() é um método auxiliar de shell para o estágio do pipeline de agregação $shardedDataDistribution.
Retorna um booleano para relatar se o processo do balanceador está migrando partes no momento.
Migra uma parte em um cluster fragmentado.
Remove a associação entre um intervalo de valores da chave de fragmento e uma zona.
Remove a associação entre um fragmento e uma zona.
Remove a associação entre uma tag e um fragmento.
Remove um intervalo de valores da chave de fragmento para uma tag de fragmento criada usando o método sh.addShardTag(). Este método faz aliases para sh.removeRangeFromZone() no MongoDB 3.4.
Habilita ou desabilita o balanceador que migra partes entre fragmentos.
Ativa a fragmentação de uma coleção.
Divide um parte existente em duas partes usando um valor específico da chave de fragmentação como ponto de divisão.
Divide um parte existente que contém um documento correspondente a uma consulta em dois partes aproximadamente iguais.

Habilita a fusão automática.

Novidades na versão 7.0.

Habilita o balanceador.
Relata sobre o status de um cluster fragmentado.

Desabilita a fusão automática.

Novidades na versão 7.0.

Desabilita o balanceador. Essa operação não espera que o balanceador conclua nenhuma operação em andamento e pode encerrar as atuais.
Associa uma variedade de teclas de fragmento a uma zona. Suporta a configuração de zonas em clusters fragmentados.

Estes métodos configuram se o mongosh rastreia dados de telemetria anônimos. A telemetria está habilitada por padrão.

Para mais informações sobre quais dados o mongosh rastreia com telemetria, consulte Configurar Opções de Telemetria.

Método
Descrição
Desativar telemetria para mongosh.
Ativar telemetria para mongosh.
Método
Descrição
Encerra uma transação multidocumento e reverte todas as alterações de dados feitas pelas operações dentro da transação.
Salva as alterações feitas pelas operações em uma transação de vários documentos e termina a transação.
Inicia uma transação de vários documentos associada à sessão.

Importante

O método passwordPrompt() não é atualmente compatível no mongosh. Por isso, ao usar os seguintes métodos, você deve especificar a senha como um parâmetro:

Método
Descrição
Autentica um usuário para um banco de dados.
Altera a senha de um usuário existente.
Cria um novo usuário.
Exclui todos os usuários associados a um banco de dados.
Exclui um único usuário.
Retorna informações sobre o usuário especificado.
Retorna informações sobre todos os usuários associados a um banco de dados.
Atualiza os dados de um usuário especificado.
Concede uma função e seus privilégios para um usuário.
Remove uma função de um usuário.
← Tipos de dados
EJSON →