Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
O Shell do MongoDB (mongosh) é um ambiente javaScript e Node.js para interagir com implantações do MongoDB. É uma ferramenta popular da comunidade para testar consultas e interagir com os dados no cluster do Azure DocumentDB. Este artigo explica como se conectar a um cluster do Azure DocumentDB usando o Shell do MongoDB.
Pré-requisitos
Uma assinatura do Azure
- Se você não tiver uma assinatura do Azure, crie uma conta gratuita
Um cluster existente do Azure DocumentDB
- Se você não tiver um cluster, crie um novo cluster
Shell do MongoDB. Para obter mais informações, consulte instalar o shell do MongoDB
Regras de firewall que permitem que seu cliente se conecte ao cluster. Para obter mais informações, consulte configurar o firewall.
Obter credenciais do cluster
Obtenha a cadeia de conexão necessária para se conectar a esse cluster.
Entre no portal do Azure (https://portal.azure.com).
Navegue até o cluster existente do Azure DocumentDB.
Obtenha as credenciais que você usa para se conectar ao cluster.
Na página do cluster, selecione a opção Cadeias de conexão no menu de recursos.
Na seção Cadeias de conexão , copie ou registre o valor do campo Cadeia de conexão .
Importante
A cadeia de conexão no portal não inclui o valor da senha. Você deve substituir o <password> placeholder pelas credenciais inseridas quando criou o cluster ou inserir a senha de forma interativa.
Conectar-se com a autenticação interativa de senha
Conecte-se ao cluster usando o Shell do MongoDB com uma cadeia de conexão que não inclui uma senha. Use o prompt de senha interativa para inserir sua senha como parte das etapas de conexão.
Abra um terminal.
Conecte-se inserindo a senha na linha de comando do MongoDB Shell. Para esta etapa, use uma cadeia de conexão sem a senha.
mongosh "mongodb+srv://<username>@<cluster-name>.mongocluster.cosmos.azure.com/?tls=true&authMechanism=SCRAM-SHA-256&retrywrites=false&maxIdleTimeMS=120000"Depois de fornecer a senha e ser autenticado com êxito, observe o aviso exibido
This server or service appears to be an emulation of MongoDB.Dica
Você pode ignorar este aviso com segurança. Esse aviso é gerado porque a cadeia de conexão contém
cosmos.azure. O Azure DocumentDB é uma oferta de PaaS (plataforma como serviço) nativa do Azure.Saia do contexto do shell.
Conectar-se com a cadeia de conexão e senha
Agora, conecte-se ao seu cluster a partir do MongoDB Shell usando uma cadeia de conexão e parâmetros que incluam uma senha.
Conecte-se usando uma cadeia de conexão e os argumentos
--usernamee--password.mongosh "mongodb+srv://<cluster-name>.mongocluster.cosmos.azure.com/?tls=true&authMechanism=SCRAM-SHA-256&retrywrites=false&maxIdleTimeMS=120000" --username "<username>" -password "<password>"Depois de fornecer a senha e ser autenticado com êxito, observe o aviso exibido.
------ Warning: Non-Genuine MongoDB Detected This server or service appears to be an emulation of MongoDB rather than an official MongoDB product. ------Dica
Você pode ignorar este aviso com segurança. Esse aviso é gerado porque a cadeia de conexão contém
cosmos.azure. O Azure DocumentDB é uma oferta de PaaS (plataforma como serviço) nativa do Azure.
Executar consultas de teste
Verifique se você está conectado com êxito ao cluster executando uma série de comandos e consultas de teste.
Verifique o status da conexão executando o
connectionStatuscomando.db.runCommand({connectionStatus: 1}){ ... ok: 1 }Liste os bancos de dados em seu cluster.
show dbsMude para um banco de dados específico. Substitua o marcador
<database-name>pelo nome de um banco de dados qualquer em seu cluster.use <database-name>Dica
Por exemplo, se o nome do banco de dados for
inventory, o comando seráuse inventory.Liste as coleções no banco de dados.
show collectionsLocalize os cinco primeiros itens em uma coleção específica. Substitua o marcador
<collection-name>pelo nome de qualquer coleção em seu cluster.db.<collection-name>.find().limit(5)Dica
Por exemplo, se o nome da coleção for
equipment, o comando serádb.equipment.find().limit(5).