Copia / clonazione del database MongoDB dalla produzione allo sviluppo

0

Sto facendo fatica a trovare un buon modo per copiare il nostro database MongoDB di produzione per sovrascrivere il nostro database di sviluppo su richiesta. db.copyDatabase non funziona dalla riga di comando usando mongo-cli. C'è un modo migliore per clonare un database e sovrascrivere quello attuale con Mongo?

    
posta Alexander Mills 06.10.2015 - 06:54
fonte

1 risposta

3

Potresti usare uno script di shell per farlo usando gli strumenti mongodump e mongorestore .

Quello che faccio per questo stesso scenario è usare l'opzione --eval da mongo-cli per eliminare il database, fare un dump del database di produzione e poi ripristinare il database di sviluppo.

  • ssh user @ host 'mongodump --host dbhost --port dbport --db dbproduction; cd dump; zip dump.zip dbproduction / *; '
  • scp user @ host: dump / dump.zip /desiredPath/dump.zip;
  • mongo --eval 'new Mongo (). getDB ("dbdevelopment"); db.dropDatabase (); '
  • decomprimere dump.zip -d dump; cd dump /;
  • mongorestore --db dbdevelopment dbproduction;

Questo dovrà essere eseguito dal server del database di sviluppo con accesso al server dei database di produzione e farà esattamente ciò che è necessario per: eseguire il dump e zip del database di produzione, scaricarlo, rilasciare il database di sviluppo, decomprimere il file scaricato e ripristina.

    
risposta data 06.10.2015 - 08:59
fonte

Leggi altre domande sui tag