Dela via


Ansluta till Azure Cosmos DB för MongoDB (vCore) med hjälp av Azure-portalen

GÄLLER FÖR: MongoDB vCore

MongoDB Shell (mongosh) är en JavaScript- och Node.js-miljö för interaktion med MongoDB-distributioner. Det är ett populärt communityverktyg för att testa frågor och interagera med data i ditt Azure Cosmos DB for MongoDB-kluster (vCore). Azure-portalen innehåller flera verktyg för att köra frågor mot MongoDB-data, inklusive Azure Cloud Shell. Azure Cloud Shell är en interaktiv, autentiserad, webbläsartillgänglig terminal för hantering av Azure-resurser. Den här artikeln beskriver hur du ansluter till ett Azure Cosmos DB for MongoDB-kluster (vCore) med MongoDB Shell i Azure Cloud Shell.

Förutsättningar

  • Ett befintligt Azure Cosmos DB for MongoDB-kluster (vCore).

  • Brandväggsregler som gör att klienter i dina nätverk kan ansluta till klustret. Mer information finns i konfigurera brandväggen.

  • (Valfritt) Dessa krav krävs endast om du använder Azure Cloud Shell i ett virtuellt nätverk som är samma eller peer-kopplat med Azure Cosmos DB för MongoDB vCore.

    • Ett eller flera befintliga virtuella Azure-nätverk med undernät för Azure Cloud Shell och Azure Cosmos DB för MongoDB vCore-distribution.

    • En privat slutpunkt för klustret Azure Cosmos DB för MongoDB (vCore). Mer information finns i konfigurera privat länk.

    • Azure Cloud Shell distribueras till samma virtuella nätverk eller ett sammanlänkat nätverk med anslutning till den privata slutpunkten för Azure Cosmos DB för MongoDB (vCore). Mer information finns i distribuera Cloud Shell till ett virtuellt nätverk.

Aktivera åtkomst till klustret från Azure Cloud Shell

Kontrollera först att Azure Cloud Shell kan komma åt ditt Azure Cosmos DB for MongoDB-kluster (vCore) genom att tillåta dess IP-adresser i brandväggen.

  1. Logga in på Azure Portal (https://portal.azure.com).

  2. Gå till klustret Azure Cosmos DB för MongoDB (vCore).

  3. Välj Nätverk på navigeringsmenyn.

  4. På sidan Nätverk i avsnittet Offentlig åtkomst väljer du alternativet + Lägg till Azure Cloud Shell-IP-adresser för att automatiskt lägga till din aktuella IP-adress i listan över tillåtna.

  5. Välj Spara för att tillämpa ändringarna.

Anmärkning

Kontrollera att de specifika IP-adresserna för din region är tillåtna för att säkerställa anslutningen. Mer information finns i IP-adresser för Azure Cosmos DB for MongoDB (vCore).

Ansluta med Azure Cloud Shell från snabbstart

Använd nu snabbstartsfunktionen på resurssidan på Azure-portalen för att ansluta direkt till Azure Cosmos DB for MongoDB (vCore) med MongoDB Shell.

  1. På klusterresurssidan väljer du Snabbstart (förhandsversion) på navigeringsmenyn.

  2. Välj sedan Öppna MongoDB-gränssnittet (vCore).

  3. Vänta tills MongoDB Shell-miljön har startats.

  4. När miljön är klar, tryck på Y för att acceptera meddelandet.

    Anmärkning

    Om du har problem med att ansluta med MongoDB Shell när du har accepterat meddelandet kontrollerar du att Azure Cloud Shell har åtkomst till klustret. Mer information finns i aktivera åtkomst till klustret.

  5. Ange nu ditt lösenord för att ansluta klustret till Cloud Shell.

Hämta klusterautentiseringsuppgifter

Hämta anslutningssträngen som du behöver för att ansluta till det här klustret.

  1. Logga in på Azure Portal (https://portal.azure.com).

  2. Gå till klustret Azure Cosmos DB för MongoDB (vCore).

  3. Välj navigeringsmenyalternativet Anslutningssträngar .

  4. Kopiera eller registrera värdet från fältet Anslutningssträng .

    Skärmbild av alternativet för anslutningssträngar på klustersidan.

    Viktigt!

    Anslutningssträngen i portalen innehåller inte lösenordsvärdet. Du måste ersätta <password> platshållaren med de autentiseringsuppgifter som du angav när du skapade klustret eller ange lösenordet interaktivt.

Konfigurera MongoDB Shell i Azure Cloud Shell manuellt

Installera MongoDB Shell-klienten (mongosh) till din Azure Cloud Shell-instans med Node Package Manager (npm).

  1. Öppna Azure Cloud Shell som konfigurerats med en Bash-skriptmiljö.

  2. Installera version 1 av MongoDB Shell lokalt i användarkatalogen.

    npm install mongosh@1
    
  3. Vänta tills installationen har slutförts.

  4. Kontrollera att installationen lyckades genom att hämta versionen av mongosh verktyget.

    npx mongosh --version
    

Anslut till klustret

Anslut till klustret med hjälp av MongoDB Shell med en anslutningssträng som inte innehåller något lösenord. Använd den interaktiva lösenordsprompten för att ange ditt lösenord som en del av anslutningsstegen.

  1. Anslut genom att ange lösenordet i MongoDB Shell-prompten. I det här steget använder du en anslutningssträng utan lösenordet.

    npx mongosh "mongodb+srv://<username>@<cluster-name>.mongocluster.cosmos.azure.com/?tls=true&authMechanism=SCRAM-SHA-256&retrywrites=false&maxIdleTimeMS=120000"
    
  2. När du har angett lösenordet och har autentiserats bör du observera varningen som visas

    ------
       Warning: Non-Genuine MongoDB Detected
       This server or service appears to be an emulation of MongoDB rather than an official MongoDB product.
    ------
    

    Tips/Råd

    Du kan ignorera den här varningen. Den här varningen genereras eftersom anslutningssträngen innehåller cosmos.azure. Azure Cosmos DB for MongoDB (vCore) är ett internt PaaS-erbjudande (Plattform som en tjänst).

Utföra testfrågor

Kontrollera att du är ansluten till klustret genom att utföra en serie testkommandon och frågor.

  1. Kontrollera anslutningsstatusen genom att connectionStatus köra kommandot .

    db.runCommand({connectionStatus: 1})
    
  2. Visa en lista över databaserna i klustret.

    show dbs
    
  3. Växla till en specifik databas. <database-name> Ersätt platshållaren med namnet på valfri databas i klustret.

    use <database-name>
    

    Tips/Råd

    Om till exempel databasnamnet är inventory, då blir kommandot use inventory.

  4. Visa en lista över samlingarna i databasen.

    show collections
    
  5. Hitta de första fem objekten i en specifik samling. <collection-name> Ersätt platshållaren med namnet på en samling i klustret.

    db.<collection-name>.find().limit(5)
    

    Tips/Råd

    Om samlingsnamnet till exempel är equipment, då skulle kommandot vara db.equipment.find().limit(5).