# 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](https://www.ionos.it/digitalguide/hosting/tecniche-hosting/sistema-di-gestione-di-base-di-dati-dbms/) come [MongoDB](https://www.ionos.it/digitalguide/siti-web/programmazione-del-sito-web/mongodb-presentazione-e-confronto-con-mysql/) è 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.

[![Immagine: Diagramma della struttura di un nodo primario e tre secondari all’interno di un Replicaset MongoDB](https://www.ionos.it/digitalguide/fileadmin/_processed_/f/7/csm_diagramma-della-struttura-di-un-nodo-e-tre-secondari-all-interno-di-un-replicaset-mongodb_6e28f0797b.webp "Diagramma della struttura di un nodo primario e tre secondari all’interno di un Replicaset MongoDB")](https://www.ionos.it/digitalguide/fileadmin/DigitalGuide/Screenshots_2022/diagramma-della-struttura-di-un-nodo-e-tre-secondari-all-interno-di-un-replicaset-mongodb.png) La trasmissione dei dati avviene sempre dai nodi primari a quelli secondari.       ##  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**](https://cloud.ionos.it/managed/dbaas/managed-mongodb?itc=2E5H5WQ0-HUKYUQ-LTP4SQO "Managed MongoDB di 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](https://www.ionos.it/digitalguide/siti-web/programmazione-del-sito-web/comandi-di-mongodb/ "Comandi di MongoDB") *--replSet*:

```none
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:

```none
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.

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

```none
rs.add(HOST_NAME:PORT)
```

Applicata al nostro esempio, sarà così:

```none
>rs.add("esempio1.net:32014")
```

---

### Consiglio

Seguite il nostro [tutorial su MongoDB](https://www.ionos.it/digitalguide/siti-web/programmazione-del-sito-web/tutorial-su-mongodb-i-primi-passi/) per imparare le basi del sistema di gestione di database.

---


This is a markdown version of: [https://www.ionos.it/digitalguide/siti-web/programmazione-del-sito-web/mongodb-replicaset/](https://www.ionos.it/digitalguide/siti-web/programmazione-del-sito-web/mongodb-replicaset/) for AI/LLM consumption.