Comandi di MongoDB: i comandi più importanti
Con i giusti comandi di MongoDB il lavoro con il sistema di gestione dei database diventa significativamente più facile ed efficiente. Di seguito abbiamo riassunto per voi i più importanti comandi in maniera chiara e intuitiva.
Cosa dovete sapere su MongoDB
Il database NoSQL MongoDB è diventato una delle alternative a MySQL da prendere maggiormente in considerazione. Gli utenti apprezzano l’elevata scalabilità e flessibilità del sistema di gestione di base di dati. Se avete intenzione di testare il software allora vale la pena di dare un’occhiata al nostro dettagliato tutorial su MongoDB. Inoltre, il riepilogo dei comandi più importanti di MongoDB, che vi presentiamo qui, vi alleggerirà enormemente il lavoro.
Sintassi dei comandi
Prima di iniziare a occuparvi dei vari comandi di MongoDB è importante capire come funziona la loro sintassi. Il modello è sempre lo stesso. La costruzione dei comandi di MongoDB è la seguente:
db.runCommand ( { hello: 1 } )
I comandi più importanti di MongoDB per i meno esperti
I comandi base di MongoDB vi aiutano a muovere i primi passi e a lavorare in maniera più efficiente con questo software. I comandi in assoluto più importanti con cui iniziare sono questi due:
Comandi di MongoDB | Descrizione |
---|---|
db.help() | Elenca tutti i comandi di MongoDB disponibili. |
mongo -version | Con questo comando stabilite quale versione di MongoDB state utilizzando. Potete eseguirlo nel terminale di Linux o di macOS. Se utilizzate Windows usate il prompt dei comandi. Inoltre, vi vengono mostrate sia la versione shell attualmente in uso sia il server MongoDB corrispondente. |
I comandi per i database
Per archiviare i vostri dati avete bisogno dei database. I seguenti comandi di MongoDB sono particolarmente importanti per la gestione dei database:
Comandi di MongoDB | Descrizione |
---|---|
show dbs | Con questo comando visualizzate una lista di tutti i database. |
use DATABASE_NAME | Create un nuovo database per il quale potete scegliere liberamente il nome. |
db | Con questo comando richiedete quale database è quello attualmente in uso. |
db.dropDatabase() | Usate questo comando per eliminare il database attualmente in uso. |
I comandi per le raccolte
Mentre i database relazionali come MySQL si basano sulle tabelle, MongoDB ricorre alle raccolte, che prendono il nome di “collection”. I seguenti comandi di MongoDB riguardano l’utilizzo delle raccolte:
Comandi di MongoDB | Descrizione |
---|---|
db.createCollection (nome, opzioni) | Create una semplice raccolta e stabilite sia il suo nome sia eventuali altre opzioni. |
show collections | Visualizzate un elenco di tutte le raccolte disponibili. |
collectionName.drop() | Usate questo comando per eliminare una raccolta. Quando una raccolta viene cancellata, il sistema lo conferma con “true”. Nel caso di errore, il sistema dà “false” come risposta. |
La gestione degli utenti
Per lavorare assieme a diversi utenti in un database dovete creare e gestire dei profili utente. I seguenti comandi di MongoDB vi aiutano a farlo:
Comandi di MongoDB | Descrizione |
---|---|
createUser (user, writeConcern) | Create un nuovo utente. Con “writeConcern” gli assegnate anche le autorizzazioni che volete. |
dropUser | Rimuovete un singolo utente dal database. |
dropAllUsersFromDatabase | Rimuovete tutti gli utenti creati in un database. |
usersInfo | Visualizzate tutte le informazioni disponibili relative a un utente. |
updateUser | Aggiornate i dati di un utente. |
grantRolesToUser | Attribuite a un utente dei determinati permessi o un determinato ruolo. |
revokeRolesFromUser | Revocate a un utente determinati permessi o un determinato ruolo. |
I comandi per i ruoli
Potete assegnare agli utenti dei ruoli o delle autorizzazioni definite. Per gestirli, specificarli o cancellarli potete usare i seguenti comandi di MongoDB:
Comandi di MongoDB | Descrizione |
---|---|
createRole | Create un ruolo e ne configurate i permessi e gli obblighi. |
rolesInfo | Richiedete le specifiche di un determinato ruolo. |
updateRole | Aggiornate un ruolo e le informazioni a disposizione. |
dropRole | Cancellate un determinato ruolo. |
dropAllRolesFromDatabase | Cancellate tutti i ruoli di un database. |
grantPrivilegesToRole | Ampliate un ruolo assegnandogli dei privilegi chiaramente definiti. |
revokePrivilegesFromRole | Revocate singoli privilegi a un ruolo. |
grantRolesToRole | Definite i ruoli, i cui privilegi vengono trasferiti a un altro ruolo. |
revokeRolesFromRole | Rimuovete i ruoli ereditati. |
invalidateUserCache | Svuotate la cache utente e rimuovete tutte le informazioni riguardo ai ruoli. |
Aggiungere e gestire documenti
Per riempire le raccolte, assegnate determinati documenti o ne create dei nuovi. I seguenti comandi di MongoDB risultano utili in questo caso:
Comandi di MongoDB | Descrizione |
---|---|
insert | Aggiungete uno o più documenti a una raccolta. |
update | Aggiornate uno o più documenti. |
delete | Rimuovete documenti da una raccolta. |
find | Selezionate un determinato documento da una raccolta e lo visualizzate. |
findAndModify | Visualizzate un determinato documento e lo modificate. |
getMore | Visualizzate i documenti che avete selezionato con il cursore. |
getLastError | Visualizzate lo stato delle ultime operazioni eseguite. |
Raggruppare e suddividere
Per poter dividere ancora meglio i documenti, il database offre i cosiddetti comandi di aggregazione. Per il raggruppamento potete utilizzare i seguenti comandi:
Comandi di MongoDB | Descrizione |
---|---|
aggregate | Raggruppate i documenti. |
count | Contate i vari documenti all’interno di una raccolta. |
distinct | Visualizzate i valori definiti e le statistiche di quanto spesso sono presenti in una raccolta. |
mapReduce | Viene utilizzato per dati di grandi dimensioni e serve a ridurli o ordinarli. |
I comandi importanti in ambito di sicurezza
MongoDB è anche molto adatto per il lavoro con dati sensibili. A questo scopo il sistema consente di limitare gli accessi e mette a vostra disposizione diverse possibilità per proteggere alcune stringhe di dati tramite l’autenticazione. Per questo motivo dovreste conoscere i seguenti comandi:
Comandi di MongoDB | Descrizione |
---|---|
authenticate | Avviate una sessione autenticata, che richiede di inserire nome utente e password. |
Getnonce | Con questo comando generate una password monouso per un accesso protetto. |
logout | Terminate la sessione protetta in corso. |
I comandi per le sessioni
A partire dalla versione 3.6 fino alla 4 MongoDB offre anche comandi per determinate sessioni. Questi sono i comandi interessanti da utilizzare per il vostro lavoro:
Comandi di MongoDB | Descrizione |
---|---|
startSession | Avviate una nuova sessione. |
refreshSessions | Aggiornate le sessioni inattive. |
endSessions | Terminate le sessioni prima del previsto. |
killSessions | Terminate determinate sessioni. |
killAllSessions | Terminate tutte le sessioni immediatamente. |
killAllSessionsByPattern | Terminate tutte le sessioni che corrispondono ai parametri stabiliti. |
commitTransaction | Eseguite una transazione. |
abortTransaction | Interrompete una transazione. |
Altri comandi amministrativi
MongoDB offre altri comandi che possono aiutarvi ad alleggerire il vostro carico di lavoro amministrativo. Alcuni dei comandi più importanti li trovate elencati in ordine alfabetico nella seguente tabella:
Comandi di MongoDB | Descrizione |
---|---|
cloneCollectionAsCapped | Create una copia di una raccolta senza dimensione massima, impostandone una. |
collMod | Aggiungete opzioni a una raccolta. |
compact | Frammentate una raccolta e riconfigurate gli indici. |
convertToCapped | Convertite una raccolta senza dimensione massima in una raccolta con dimensione massima. |
createIndexes | Aggiungete a una raccolta uno o più indici. |
getParameter | Visualizzate le opzioni di configurazione. |
listIndexes | Elencate tutti gli indici disponibili di una raccolta. |
setParameter | Modificate le opzioni di configurazione. |
Shutdown | Interrompete i processi mongod o mongos. |
Diagnosi e monitoraggio
Esistono anche dei comandi di MongoDB per il monitoraggio e la diagnosi. In questo caso possono risultare utili i seguenti comandi:
Comandi di MongoDB | Descrizione |
---|---|
dbStats | Ottenete una statistica su un determinato database e sul suo utilizzo. |
features | Visualizzate un elenco di tutte le funzionalità disponibili. |
serverStatus | Visualizzate informazioni sullo stato del server in uso. |
buildInfo | Visualizzate tutte le informazioni disponibili sul build corrente di MongoDB. |
connectionStatus | Ottenete informazioni sulla connessione. |
dataSize | Visualizzate la dimensione di un file o di una sequenza selezionata di diversi file. |
setFreeMonitoring | Con questo comando consentite o vietate il monitoraggio libero delle prestazioni durante l’esecuzione. |