Visão geral
O MongoDB fornece os seguintes comandos, métodos e operador que executam a execução do lado do servidor do código JavaScript:
mapReducee omongoshmétododb.collection.mapReduce()correspondente. Para mais informações, consulte Redução de Mapa.$whereoperador que avalia uma expressão ou função JavaScript para realizar queries por documentos.$accumulatore$functionoperações de agregação que permitem aos usuários definir expressões de agregação personalizadas.
Você também pode especificar um arquivo JavaScript para mongosh ser executado no servidor. Para obter mais informações, consulte Execução de arquivos .js por meio de uma instância mongosh Instância no servidor
Observação
JavaScript no MongoDB
Embora estes métodos utilizem JavaScript, a maioria das interações com MongoDB não utilizam JavaScript, mas utilizam um driver automático na linguagem da aplicação de interação.
Se você não precisar realizar a execução do código JavaScript no lado do servidor, consulte Desabilitar execução do lado do servidor do JavaScript.
Observação
Se você estiver usando o SELinux, qualquer operação do MongoDB que exija JavaScript no lado do servidor resultará em erros de segfault. Desativar execução de JavaScript no servidor descreve como desativar a execução de JavaScript no servidor.
Executando .js arquivos do por uma mongosh instância do no servidor
Você pode especificar um arquivo JavaScript (.js) para mongosh para executar o arquivo no servidor. Esta é uma boa técnica para executar o trabalho administrativo em lote. Quando você executa mongosh no servidor, conectando-se por meio da interface localhost, a conexão é rápida e com baixa latência.
Desabilitar a execução de JavaScript no servidor
Você pode desabilitar toda a execução do JavaScript do lado do servidor:
Para uma instância
mongod, passando a opção--noscriptingna linha de comando ou definindosecurity.javascriptEnabledcomo false no arquivo de configuração.Para uma instância
mongos, passando a opção--noscriptingna linha de comando ou definindosecurity.javascriptEnabledcomo false no arquivo de configuração.
Comportamento
Concurrency
Consulte o método individual ou a documentação do operador para obter qualquer informação sobre concorrência. Consulte também a tabela de concorrência.
Funções de array e string não suportadas
O MongoDB 6.0 atualiza o mecanismo JavaScript interno usado para expressões JavaScript, $accumulator, $function e $where do lado do servidor e do MozJS-60 para o MozJS-91. Várias funções de array e string de caracteres não padrão obsoletas que existiam no MozJS-60 são removidas no MozJS-91.
Para obter a lista completa das funções de array e string removidas, consulte as notas de compatibilidade da versão 6.0.