MongoDB Replicaset: come copiare ed eseguire il backup di dati

Per prevenire guasti e altri inconvenienti, è consigliabile utilizzare Replicaset di MongoDB, il comando che consente di mantenere copie dei vostri dati su diversi server e che li rende disponibili senza inutili perdite di tempo.

Cos’è Replicaset in MongoDB?

Il principale obiettivo di un sistema di gestione di database come MongoDB è quello di memorizzare i dati in modo trasparente e sicuro. Un importante strumento per la protezione dei set di dati è costituito da Replicaset di MongoDB. Grazie a questo metodo, i set di dati vengono duplicati accuratamente e distribuiti su diversi nodi di server differenti. In MongoDB si distingue tra nodi primari e secondari.

  • Primari: il nodo primario viene anche chiamato nodo master. Si tratta del punto di partenza dal quale vengono creati i Replicaset di MongoDB, e dispone di permessi di lettura e scrittura.
  • Secondari: i nodi secondari non sono altro che copie esatte del nodo master, i quali vengono utilizzati esclusivamente per la memorizzazione dei dati copiati e in genere non hanno l’accesso in lettura e scrittura. Soltanto in caso di guasto di quello primario, subentra un nodo secondario che sostituisce il master. Consigliamo di creare sempre un numero dispari di nodi secondari.

Come funziona Replicaset?

Come accennato, un Replicaset di MongoDB consiste in un nodo primario e in diversi nodi secondari, generati da copie esatte del master. Nonostante la presenza di almeno due nodi secondari, se ne consiglia un minimo di tre copie. La trasmissione dei dati avviene sempre e solo dal nodo primario ai nodi secondari. In caso di guasto del nodo primario dovuto a un errore, a un guasto del sistema o a un intervento di manutenzione necessario, un nodo secondario prende automaticamente il posto del master, assicurando così la continuità dei dati per tutta la durata del guasto. Se riparabile, il nodo difettoso diventa il nodo secondario.

Quali vantaggi offre un Replicaset?

L’uso di un Replicaset in MongoDB comporta numerosi vantaggi. Da una parte, come abbiamo visto, è utile dal punto di vista della sicurezza, dal momento che in caso di guasto temporaneo o permanente di un server, i dati memorizzati rimangono sempre accessibili e non vanno persi. Un altro grande vantaggio è la disponibilità continua: persino durante gli interventi di manutenzione, infatti, non è necessario fare a meno dei propri dati, i quali sono recuperabili comodamente da un nodo secondario. In questo modo la velocità di esecuzione aumenta considerevolmente così da rendere tempi di inattività e problemi al server una preoccupazione del passato.

Consiglio: MongoDB gestito da IONOS

Con Managed MongoDB from IONOS enables you to concentrate on the essentials. From installation to operation and maintenance work, IONOS makes sure you always get the best performance from your data banks.

Come creare un Replicaset in MongoDB

Il terzo grande vantaggio di un Replicaset MongoDB è la sua facilità d’uso. I Replicaset sono facilmente creabili in MongoDB, così da garantire in modo indipendente la migliore sicurezza possibile per i propri dati. Di seguito riportiamo la sintassi di base del comando MongoDB --replSet:

mongod --port "PORT" --dbpath "VOSTRO_DB_DATA_PATH" --replSet "NOME_DEL_REPLICASET”

Per creare un Replicaset in MongoDB, procedete come segue:

  1. Innanzitutto, chiudete tutti i server MongoDB in funzione.
  2. A questo punto, immettete il comando. In questo esempio abbiamo scelto le seguenti specifiche:
mongo --port 32014 --dbpath "D:\set up\mongodb\data" --replSet esempio

In questo modo viene creata un’istanza mongod con il nome “esempio” sulla porta 32014.

  1. Ora stabilite una connessione con l’istanza.
  2. Servitevi del comando rs.initiate() per avviare un nuovo Replicaset in MongoDB.
  3. Con l’aiuto del comando rs.conf() potete configurare il Replica set di MongoDB e verificarne lo stato mediante il comando rs.status().
  4. Ora, per invitare persone a collaborare al vostro Replicaset MongoDB avvaletevi del comando rs.add(), la cui sintassi ha il seguente aspetto:
rs.add(HOST_NAME:PORT)

Applicata al nostro esempio, sarà così:

>rs.add("esempio1.net:32014")
Consiglio

Seguite il nostro tutorial su MongoDB per imparare le basi del sistema di gestione di database.

Per offrirti una migliore esperienza di navigazione online questo sito web usa dei cookie, propri e di terze parti. Continuando a navigare sul sito acconsenti all’utilizzo dei cookie. Scopri di più sull’uso dei cookie e sulla possibilità di modificarne le impostazioni o negare il consenso.