sql >> Databasteknik >  >> NoSQL >> MongoDB

6 användbara verktyg för att övervaka MongoDB-prestanda

Vi visade nyligen hur man installerar MongoDB i Ubuntu 18.04. När du väl har distribuerat din databas, måste du övervaka dess prestanda medan den körs. Detta är en av de viktigaste uppgifterna under databasadministration.

Som tur är, MongoDB tillhandahåller olika metoder för att hämta dess prestanda och aktivitet. I den här artikeln kommer vi att titta på övervakningsverktyg och databaskommandon för att rapportera statistik om tillståndet för en MongoDB-instans som körs.

1. Mongostat

Mongostat liknar i funktionalitet vmstat-övervakningsverktyget, som är tillgängligt på alla större Unix-liknande operativsystem som Linux, FreeBSD, Solaris samt MacOS. Mongostat används för att få en snabb överblick över din databas status; det ger en dynamisk realtidsvy av en löpande mongod eller mongos exempel. Den hämtar antalet databasoperationer efter typ, såsom infoga, fråga, uppdatera, ta bort och mer.

Du kan köra mongostat som visat. Observera att om du har autentisering aktiverad, sätt användarlösenordet inom enkla citattecken för att undvika att få ett felmeddelande, särskilt om du har specialtecken i det.

$ mongostat -u "root" -p '[email protected]!#@%$admin1' --authenticationDatabase "admin"

För mer mongostat användningsalternativ, skriv följande kommando.

$ mongostat --help 

2. Mongotop

Mongotop ger också en dynamisk realtidsvy av en MongoDB-instans som körs. Den spårar hur lång tid en MongoDB-instans spenderar på att läsa och skriva data. Den returnerar värden varje sekund, som standard.

$ mongotop -u "root" -p '[email protected]!#@%$admin1'  --authenticationDatabase "admin"

För mer mongotop användningsalternativ, skriv följande kommando.

$ mongotop --help 

3. serverStatus kommando

Först måste du köra följande kommando för att logga in på mongo skal.

$ mongo -u "root" -p '[email protected]!#@%$admin1' --authenticationDatabase "admin"

Kör sedan serverStatus kommando, som ger en översikt över databasens tillstånd, genom att samla in statistik om instansen.

>db.runCommand( { serverStatus: 1 } )
OR
>db.serverStatus()

4. kommandot dbStats

dbStats kommandot returnerar lagringsstatistik för en viss databas, såsom mängden lagringsutrymme som används, mängden data som finns i databasen och objekt-, samlings- och indexräknare.

>db.runCommand({ dbStats: 1 } )
OR
>db.stats()

5. collStats

collStats kommandot används för att samla in statistik som liknar den som tillhandahålls av dbStats på samlingsnivå, men dess utdata inkluderar ett antal objekt i samlingen, storleken på samlingen, mängden diskutrymme som förbrukas av samlingen och information om dess index.

>db.runCommand( { collStats : "aurthors", scale: 1024 } )

6. kommandot replSetGetStatus

replSetGetStatus kommandot matar ut statusen för replikuppsättningen från serverns perspektiv som bearbetade kommandot. Detta kommando måste köras mot admin databas i följande form.

>db.adminCommand( { replSetGetStatus : 1 } )

I detta tillägg till ovanstående verktyg och databaskommandon kan du också använda övervakningsverktyg från tredje part som stöds antingen direkt eller via deras egna plugins. Dessa inkluderar mtop, munin och nagios.

För mer information, se:Monitoring for MongoDB Documentation.

Det var allt för nu! I den här artikeln har vi täckt några användbara övervakningsverktyg och databaskommandon för att rapportera statistik om tillståndet för en körande MongoDB-instans. Använd feedbackformuläret nedan för att ställa frågor eller dela dina tankar med oss.


  1. Uppdatera arrayobjekt baserat på id?

  2. Hur kör man mongo-kommandon genom skalskript?

  3. Frågar intern arraystorlek i MongoDB

  4. MongoDB och C#:Skiftlägesokänslig sökning