Copia e backup di database tra host

Ci sono vari modi per esportare database di mongodb da un server all altro, me quello che ho trovato più semplice da usare è il seguente:
Connettersi al server sorgente:

ssh sourceserver.com

Eseguire i seguenti comandi dalla home:

mkdir dumps
mongodump --host 127.0.0.1 --port 27017 --db databaseName --out dumps

Adesso nella cartella dumps troverete una cartella chiamata “databaseName” che a sua volta contiene vari file corrispondenti a tutte le collection che si trovano nel db appena copiato.

In seguito connettersi al server destinazione:

ssh destinationserver.com

Eseguire i seguenti comandi dalla home:

mkdir dumps
cd dumps
mkdir databaseName
scp user@sourceserver.com:~/dumps/databasName/* databaseName/
mongorestore --host 127.0.0.1 --port 27017 databaseName

Questo è tutto. Dopo queste operazioni dovreste trovare il nuovo db in mongo.
Per verificare:

mongo
show dbs
use databaseName
show collections

Nel caso riceveste il seguente errore:
Failed global initialization: BadValue Invalid or no user locale set. Please ensure LANG and/or LC_* environment variables are set correctly.

Inserire:

export LC_ALL="en_US.UTF-8"

Per rispristinare un unica collection dal backup:
Dalla cartella dumps

mongorestore --host 127.0.0.1 --db databaseName --collection collName databaseName/collName.bson

Fine


So, what do you think ?