Delen via


Verbinding maken met Azure Cosmos DB voor MongoDB (vCore) met behulp van MongoDB Shell

VAN TOEPASSING OP: MongoDB vCore

MongoDB Shell (mongosh) is een JavaScript- en Node.js-omgeving voor interactie met MongoDB-implementaties. Het is een populair communityhulpprogramma om query's te testen en te communiceren met de gegevens in uw Azure Cosmos DB for MongoDB-cluster (vCore). In dit artikel wordt uitgelegd hoe u verbinding maakt met een Azure Cosmos DB for MongoDB-cluster (vCore) met behulp van MongoDB Shell.

Vereisten

  • Een bestaand Azure Cosmos DB voor MongoDB-cluster (vCore).

  • MongoDB Shell. Zie MongoDB-shell installeren voor meer informatie

  • Firewallregels waarmee uw client verbinding kan maken met het cluster. Zie Firewall configureren voor meer informatie.

Clusterreferenties ophalen

Haal de verbindingsreeks op die u nodig hebt om verbinding te maken met dit cluster.

  1. Meld u aan bij Azure Portal (https://portal.azure.com).

  2. Navigeer naar het Azure Cosmos DB for MongoDB-cluster (vCore).

  3. Selecteer de navigatiemenuoptie Verbindingsreeksen .

  4. Kopieer of noteer de waarde uit het veld Verbindingsreeks .

    Schermopname van de optie verbindingsreeksen op de pagina voor een cluster.

    Belangrijk

    De verbindingsreeks in de portal bevat niet de wachtwoordwaarde. U moet de <password> tijdelijke aanduiding vervangen door de referenties die u hebt ingevoerd bij het maken van het cluster of door het wachtwoord interactief in te voeren.

Verbinding maken met interactieve wachtwoordverificatie

Maak verbinding met uw cluster met behulp van de MongoDB Shell met een verbindingsreeks die geen wachtwoord bevat. Gebruik de interactieve wachtwoordprompt om uw wachtwoord in te voeren als onderdeel van de verbindingsstappen.

  1. Open een terminal.

  2. Maak verbinding door het wachtwoord in te voeren in de MongoDB Shell-prompt. Gebruik voor deze stap een verbindingsreeks zonder het wachtwoord.

    mongosh "mongodb+srv://<username>@<cluster-name>.mongocluster.cosmos.azure.com/?tls=true&authMechanism=SCRAM-SHA-256&retrywrites=false&maxIdleTimeMS=120000"
    
  3. Nadat u het wachtwoord hebt opgegeven en is geverifieerd, bekijkt u de waarschuwing die wordt weergegeven

    This server or service appears to be an emulation of MongoDB.
    

    Aanbeveling

    U mag dit bericht negeren. Deze waarschuwing wordt gegenereerd omdat de verbindingsreeks bevatcosmos.azure. Azure Cosmos DB voor MongoDB (vCore) is een systeemeigen PaaS-aanbieding (Platform as a Service).

  4. Sluit de shell-context af.

Verbinding maken met verbindingsreeks en wachtwoord

Maak nu vanuit de MongoDB Shell verbinding met uw cluster met een verbindingsreeks en parameters die een wachtwoord bevatten.

  1. Maak verbinding met behulp van een verbindingsreeks en de argumenten --username en --password.

    mongosh "mongodb+srv://<cluster-name>.mongocluster.cosmos.azure.com/?tls=true&authMechanism=SCRAM-SHA-256&retrywrites=false&maxIdleTimeMS=120000" --username "<username>" -password "<password>"
    
  2. Nadat u het wachtwoord hebt opgegeven en is geverifieerd, bekijkt u de waarschuwing die wordt weergegeven

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

    Aanbeveling

    U mag dit bericht negeren. Deze waarschuwing wordt gegenereerd omdat de verbindingsreeks bevatcosmos.azure. Azure Cosmos DB voor MongoDB (vCore) is een systeemeigen PaaS-aanbieding (Platform as a Service).

Testquery's uitvoeren

Controleer of u verbinding hebt gemaakt met uw cluster door een reeks testopdrachten en query's uit te voeren.

  1. Controleer de verbindingsstatus door de opdracht uit te connectionStatus voeren.

    db.runCommand({connectionStatus: 1})
    
  2. Geef de databases in uw cluster weer.

    show dbs
    
  3. Schakel over naar een specifieke database. Vervang de <database-name> tijdelijke aanduiding door de naam van een database in uw cluster.

    use <database-name>
    

    Aanbeveling

    Bijvoorbeeld, als de databasenaam inventory is, dan is de opdracht use inventory.

  4. Geef de verzamelingen in de database weer.

    show collections
    
  5. Zoek de eerste vijf items in een specifieke verzameling. Vervang de <collection-name> tijdelijke aanduiding door de naam van een verzameling in uw cluster.

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

    Aanbeveling

    Als de naam van de verzameling bijvoorbeeld equipment is, dan is de opdracht db.equipment.find().limit(5).