Para agentes de IA: um índice de documentação está disponível em https://www.mongodb.com/pt-br/docs/llms.txt — as versões de markdown de todas as páginas estão disponíveis anexando .md a qualquer caminho de URL.
Menu Docs

db.dropDatabase() (método mongosh)

db.dropDatabase(<writeConcern>)

Remove o banco de dados atual, excluindo os arquivos de dados associados.

Esse método está disponível em implantações hospedadas nos seguintes ambientes:

  • MongoDB Atlas: o serviço totalmente gerenciado para implantações do MongoDB na nuvem

Observação

Este comando é aceito em todos os clusters do MongoDB Atlas. Para obter informações sobre o suporte do Atlas a todos os comandos, consulte Comandos não suportados.

  • MongoDB Enterprise: a versão autogerenciada e baseada em assinatura do MongoDB

  • MongoDB Community: uma versão com código disponível, de uso gratuito e autogerenciada do MongoDB

db.dropDatabase() usa um parâmetro opcional:

Campo
Descrição

writeConcern

Opcional. Um documento que expressa a write concern a ser usada se for maior que "majority".

{ w: <value>, j: <boolean>, wtimeout: <number> }

Omita o uso da preocupação de gravação padrão/mínima de"majority".

Quando emitida em um conjunto de réplicas, se a write concern especificada resultar em menos confirmações de membro do que a write concern "majority" , a operação usará "majority" . Caso contrário, a write concern especificada será usada.

Quando emitido em um cluster fragmentado, o MongoDB converte a write concern especificada em "majority".

Consulte também Comportamento.

dropDatabase() encapsula o comando dropDatabase.

A operação requer somente um bloqueio exclusivo do banco de dados (X).

Este comando não exclui os usuários associados ao banco de dados atual. Para soltar os usuários associados, execute o comando dropAllUsersFromDatabase no banco de dados que você está excluindo.

The db.dropDatabase() method and dropDatabase command abort any in-progress index builds on collections in the target database before dropping the database. Aborting an index build has the same effect as dropping the built index.

Para conjuntos de réplicas ou conjuntos de réplicas de estilhaços, abortar um índice no primário não anula simultaneamente as compilações de índice secundário. O MongoDB tenta abortar as compilações em andamento para os índices especificados no primário e, se for bem-sucedido, cria uma entrada de oplog abort associada. Os membros secundários com compilações replicadas em andamento aguardam uma entrada de oplog de confirmação ou abortamento do primário antes de confirmar ou abortar a compilação do índice.

Conjuntos de réplicas

No mínimo, dropDatabase() espera até que todos os descartes de coleção no banco de dados tenham se propagado para a maioria dos nós do conjunto de réplicas, usando write concern "majority".

Você pode especificar uma preocupação de gravação para o método. Se você especificar uma preocupação de gravação que exija confirmação de menos do que a maioria, o método usará a preocupação de gravação "majority".

Se você especificar uma referência de escrita que exige confirmação de mais do que a maioria, o método utilizará a referência de escrita especificada.

Clusters fragmentados

Quando emitido em um cluster fragmentado, o MongoDB converte a write concern especificada em "majority".

Se você pretende criar um novo banco de dados com o mesmo nome do banco de dados descartado, execute o comando dropDatabase em um mongos.

Isso garante que todos os nós do cluster atualizem seu cache de metadados, o qual inclui o local do fragmento primário do novo banco de dados. Caso contrário, você poderá perder dados nas leituras e talvez não grave dados no fragmento correto. Para recuperar, você deve intervir manualmente.

A partir do MongoDB,5.0 o comando dropDatabase e o método retornam um erro db.dropDatabase() se você tentar soltar o banco de dados admin ou o banco de dados de configuração de mongos um.

Aviso

Descartar o banco de dados de admin ou o banco de dados de configuração pode deixar o cluster em um estado inutilizável.

O método db.dropDatabase() e o comando dropDatabase criam um Evento de invalidação para quaisquer MongoDB Change Streams abertos no banco de dados descartado ou em suas coleções.

The following example in mongosh uses the use <database> operation to switch the current database to the temp database and then uses dropDatabase() to drop the temp database:

use temp
db.dropDatabase()