MongoDB World is back in NYC June 7 - 9!

Un'introduzione alle stringhe di connessione di MongoDB

Dopo aver installato MongoDB per la prima volta, o aver creato un nuovo cluster su MongoDB Atlas, una delle prime sfide che potresti affrontare è come connetterti al tuo database per poter iniziare a inserire e interrogare i dati. Per connetterti al tuo cluster MongoDB, avrai bisogno di una stringa di connessione.

Che cos'è una stringa di connessione MongoDB?

Una stringa di connessione MongoDB è un breve testo che indica a un client MongoDB come connettersi al tuo cluster MongoDB. L'URL può essere fornito a vari strumenti, come MongoDB Compass e MongoDB Shell, oppure può essere utilizzato nel proprio software basato su uno dei driver MongoDB per specificare un cluster MongoDB.

L'URL può contenere varie informazioni, come i server che compongono il cluster (o come reperire tali informazioni), il nome utente e la password del database e il nome di un database predefinito da utilizzare per eseguire le query, a meno che non venga sovrascritto in altro modo.

Come posso trovare la mia stringa di connessione MongoDB?

Esistono tre tipi di stringhe di connessione MongoDB: una stringa di connessione MongoDB Atlas, una stringa di connessione per un'istanza in esecuzione sul tuo computer (localhost) e una stringa di connessione per un cluster in self hosting.

Di seguito spiegheremo come ottenere ciascuna di queste stringhe di connessione.

Come ottenere la stringa di connessione di MongoDB Atlas

Nell'interfaccia web di MongoDB Atlas, trova il cluster a cui vuoi connetterti e fai clic sul pulsante “Connetti“ accanto al tuo nome. Nella schermata successiva, seleziona il metodo che stai utilizzando per connetterti a MongoDB e ti verrà fornita una stringa di connessione adatta al tuo cluster. C'è un piccolo pulsante “copia-incolla“ accanto alla stringa di connessione, per rendere la tua vita ancora più facile!

Puoi trovare maggiori informazioni sulle stringhe di connessione di MongoDB Atlas nella documentazione di MongoDB.

Uno screenshot dell'interfaccia web di Atlas, che indica diversi modi per connettersi al cluster MongoDB.

Tieni presente che se scegli l'opzione MongoDB Shell, ti verrà fornita l'intera riga di comando per l'avvio di mongosh e non solo la stringa di connessione.

La stringa di connessione non sarà completa. Di solito ci sono dei segnaposto per il nome utente e la password, racchiusi tra parentesi angolate, come questo:

mongodb+srv://<username>:<password>@beyondthebasics.abcde.mongodb.net/test

Dovrai trovare il nome utente e la password per il tuo utente del database o creare un nuovo utente del database per ottenere queste credenziali. Puoi farlo utilizzando il link “Accesso al database“ sul lato sinistro del sito Atlas e facendo clic sul pulsante “Aggiungi nuovo utente del database“.

Una stringa di connessione al server MongoDB locale

La stringa di connessione MongoDB per un server locale in genere assume la forma mongodb://localhost:27017/<database>, dove <database> è il nome del database a cui desideri connetterti. Se stai utilizzando una porta diversa per MongoDB, devi sostituire 27017 con il numero di porta che stai utilizzando.

Stringhe di connessione per un cluster MongoDB in self hosting

Per ottenere la stringa di connessione per un replica set di MongoDB in self hosting, dovrai conoscere i nomi dell'host o gli indirizzi IP dei server nel replica set, nonché il nome del replica set.

È possibile specificare i singoli server nel replica set includendoli nella stringa di connessione, in questo modo:

mongodb://<host1>:<port1>,<host2>:<port2>,<host3>:<port3>/<database>?replicaSet=<replicaSetName>

Se avessimo un replica set chiamato repl1, composto da tre host, 192.168.10.1-3, e li stessimo eseguendo tutti sulla porta predefinita, 27017, la nostra stringa di connessione sarebbe simile a questa:

mongodb://192.168.1.1:27017,192.168.1.2:27017,192.168.1.3:27017/<database>?replicaSet=repl1

Che cos'è una stringa di connessione SRV di MongoDB?

Una stringa di connessione SRV è un tipo di connessione che inizia con il prefisso mongodb+srv:// (anziché solo mongodb://). Tutte le stringhe di connessione di MongoDB Atlas sono stringhe di connessione SRV, il che le rende più brevi e facili da usare. Il protocollo SRV consente il rilevamento automatico dei server in un replica set o un cluster partizionato di MongoDB, senza la necessità di specificare gli indirizzi dei singoli server.

I dettagli tecnici su come funzionano esattamente le stringhe di connessione SRV sono un po' fuori dallo scopo di questo articolo. Se desideri approfondire, puoi consultare il post sul blog Here to SRV You with Easier Replica Set Connections .

Domande frequenti

Come posso collegare MongoDB utilizzando un URI (Uniform Resource Identifier)?

Per connettere MongoDB utilizzando un URI (Uniform Resource Identifier), devi fornire una stringa di connessione che includa il nome dell'host, la porta, il nome del database e le credenziali di autenticazione.

Come si imposta una connessione a MongoDB?

Per configurare una connessione a MongoDB, è necessario installare il driver MongoDB per il proprio linguaggio di programmazione, creare una stringa di connessione con i parametri appropriati e utilizzare il metodo di connessione del driver per stabilire una connessione al server MongoDB.

Come posso connettermi e interrogare MongoDB?

Per connetterti a MongoDB, recupera il nome dell'host e le informazioni sulla porta da Cloud Manager e utilizza un client MongoDB, come mongosh o un driver MongoDB, quindi utilizza il metodo db.collection.find() in MongoDB Shell per interrogare i documenti in una raccolta.