Ya hemos aprendido a crear y a borrar una base de datos en MongoDB. Así que ahora vamos a ver qué tenemos que hacer para renombrar una base de datos en MongoDB.
Vimos que para crear una base de datos en MongoDB no existía un comando específico y que teníamos que crear una colección, pero que en el caso del borrado contábamos con dropDatabase(). Pues en el caso de renombrar una base de datos en MongoDB no tenemos un método del estilo renameDataBase().
Hay una petición sobre la evolución de MongoDB para que incluyan una forma fácil de renombrar la bases de datos.
Así la secuencia que haremos para renombrar una base de datos en MongoDB será la siguiene.
- Copiar la base de datos MongoDB en otra base de datos MongoDB
- Borrar la base de datos MongoDB antigua
Vamos a partir de que existe una base de datos en MongoDB que se llama «datos» y que la queremos renombrar en «ciudades».
Lo primero que hacemos en conectarnos a MongoDB y seleccionar la base de datos llamada «datos».
conn = new Mongo();
db = conn.getDB("datos");
Ahora vamos a copiar «datos» en «ciudades». Para ello utilizamos la sentencia copyDatabase().
db.copyDatabase('datos', 'ciudades');
Ya hemos conseguido renombrar una base de datos en MongoDB. Solo nos quedará eliminar la base de datos antigua y tal como vimos en el ejemplo de borrar una base de datos en MongoDB utilizamos el dropDatabase()
db.dropDatabase();
Es importante que ejecutemos el dropDatabase() sobre a antigua base de datos que teníamos referenciada en la variable db.
Si estás en la consola de MongoDB no te olvides de hacer un use de la base de datos a borrar antes de ejecutar el dropDatabase().
use datos db.dropDatabase()
No sea que borrar la base de datos que no es. Con estas líneas ya hemos podido renombrar una base de datos en MongoDB.