Desde MongoDB

Con mongodump y mongorestore, una base de MongoDB pasa a TeselaDB.

Copia una base de MongoDB a TeselaDB con mongodump y mongorestore, las herramientas de base de datos de MongoDB.

Requisitos

  • Un clúster de TeselaDB en marcha y su CA, pki/ca.pem.
  • Un usuario con el rol restore en TeselaDB.
  • Las MongoDB Database Tools en una máquina que vea los dos.

Exportar desde MongoDB

Shell
mongodump --uri "mongodb://usuario:<contraseña>@mongo-01:27017/tienda" --gzip --archive=tienda.gz

Para no parar las escrituras, exporta todo el replica set con --oplog, que guarda también las operaciones que llegan mientras dura la copia para que mongorestore las aplique al final.

Importar en TeselaDB

Shell
mongorestore --uri "mongodb://root:<contraseña>@node-01:27017/?tls=true&tlsCAFile=./ca.pem" --gzip --archive=tienda.gz

Con un archivo hecho con --oplog, añade --oplogReplay. mongorestore crea también los índices.

Comprobar

Los recuentos y los índices de cada colección coinciden con los de MongoDB, como en Comprobar los datos migrados.

Problemas frecuentes

  • mongorestore falla con Unauthorized (13) porque el usuario no tiene el rol restore.
  • La conexión con TeselaDB se cierra porque falta tls=true en la cadena.

Ver también