Che tu stia ripristinando un backup o migrando un server, l'importazione dei dati è un passaggio fondamentale del processo. MongoDB offre molti modi per importare i dati nella tua distribuzione MongoDB. È possibile importare una raccolta, un database o l'intera distribuzione. In questo post parleremo di tre diversi modi per importare i dati nella distribuzione dell'hosting ScaleGrid MongoDB.
-
MongoRestore e MongoDump
Gli strumenti MongoDump e MongoRestore sono utility popolari durante l'importazione di dati nelle distribuzioni. MongoRestore ti consente di importare raccolte, database e distribuzioni. Lo strumento MongoRestore importa il contenuto da un dump di database binario, creato da MongoDump, in un database specifico. MongoRestore può importare contenuti in un database esistente o crearne uno nuovo.
MongoRestore esegue solo inserimenti nel database esistente e non esegue aggiornamenti o upsert . Se esistono dati con lo stesso _id esiste già nel database di destinazione, MongoRestore non sostituirlo.
Per importare i dati nella distribuzione di ScaleGrid MongoDB utilizzando MongoRestore, è possibile utilizzare la seguente riga di comando:
mongorestore --host <host> --port <port> --username admin --password <pass> /location/to/mongodumpfiles
-
db.copyDatabase()
db.copyDatabase è un comando di facile utilizzo integrato in MongoShell che consente di migrare e copiare facilmente i dati da un'istanza o distribuzione MongoDB a un'altra. Il comando db.copyDatabase supporta anche nome utente e password, rendendo la copia dei database tra le distribuzioni un gioco da ragazzi. Segui questi passaggi per copiare un database dal server remoto:
- Connettiti alla tua distribuzione MongoDB usando la mongo shell. cioè. mongo
-u -p - Esegui il comando seguente – “db.copyDatabase(“
”, “ ”, “ ”, “ ”); “
- Connettiti alla tua distribuzione MongoDB usando la mongo shell. cioè. mongo
-
Istantanee
Gli snapshot forniscono un modo semplice per archiviare grandi quantità di dati MongoDB e forniscono snapshot point-in-time ideali per ripristinare le distribuzioni MongoDB da zero. Le distribuzioni MongoDB di ScaleGrid supportano il ripristino degli snapshot. NOTA:il ripristino delle istantanee utilizzando i seguenti comandi sovrascriverà tutti i dati esistenti. Ti consigliamo vivamente di eseguire il backup dei dati esistenti prima di sovrascriverli con lo snapshot.
- SSH all'istanza MongoDB in cui vuoi ripristinare lo snapshot. Ulteriori informazioni su come ottenere le credenziali per la tua distribuzione sono disponibili qui.
- Interrompi il servizio MongoDB:"sudo service mongod stop"
- Elimina tutti i dati nella cartella mongodb_data – “sudo /bin/rm -rf /mongodb_data/*”
- Copia la tua istantanea nella cartella mongodb_data – “sudo mv -r snapshot/* /mongodb_data/”
- Avvia il servizio MongoDB – "sudo service mongod start"
Ecco fatto! È così semplice. Continueremo a monitorare e gestire la distribuzione di MongoDB. È possibile eseguire il backup, il ripristino o la clonazione di questa distribuzione MongoDB tramite ScaleGrid utilizzando i nuovi dati dello snapshot.
Inoltre, consulta il nostro nuovo documento di aiuto sull'importazione di dati MongoDB da un server remoto e su come migrare il cluster mLab MongoDB su ScaleGrid.