Volver

Importar / exportar una base de datos en MySQL y MariaDB por consola

Poder importar y exportar una base de datos en MySQL o MaríaDB utilizando la consola / terminal es una habilidad que no debemos desestimar. Podemos crear backups como copias de seguridad en caso de una emergencia, podemos utilizarlas para migrar datos a un nuevo servidor o entorno de desarrollo, y podemos restaurar bases de datos de gran tamaño que sería imposible restaurar utilizando el acceso por navegador debido a los límites de tiempo de carga y procesamiento.

Trabajar con volcados de bases de datos en MySQL y MariaDB es sencillo. Para comenzar, lo único que necesitamos es acceso a un servidor Linux con MySQL/MariaDB instalado y funcionando, el nombre de la base de datos con la trabajaremos y las credenciales de acceso a ella (usuario y contraseña).

 

Exportar la base de datos

Para exportar la base de datos a un fichero de texto utilizaremos el comando mysqldump. Estos ficheros pueden ser transferidos de forma sencilla símplemente copiándolos, y pueden ser editados con cualquier editor de texto en cualquier plataforma. Sólo necesitaremos el nombre de la base de datos que queramos exportar, así como el usuario y la contraseña de acceso de una cuenta con privilegios suficientes que permitan al menos un acceso de lectura completa a la base de datos.

Exportaremos la base de dats utilizando el siguiente comando:

$ mysqldump -u usuario -p  nombre_base_de_datos > fichero_exportacion.sql

  • -u: indica al sistema que la siguiente palabra será el nombre de usuario
  • usuario: es el nombre de usuario con el que podemos acceder a la base de datos
  • -p: indica al sistema que accederemos mediante una contraseña y que deberá pedírnosla en cuanto tecleemos enter
  • nombre_base_datos: es el nombre de la base de datos que queremos exportar
  • fichero_exportacion.sql es el nombre del fichero donde guardaremos la exportación de la base de datos

El comando no producirá por consola ninguna salida visible al usuario, pero cuando termine su ejecución habrá creado el fichero con el nombre que le hayamos puesto y el contenido de la base de datos en el mismo directorio donde se encuentre el usuario en ese momento. Sólo tendrá que teclear ls para verlo.

 

Importar la base de datos

Para importar una copia existente de una base de datos en MySQL o MariaDB, deberemos copiar nuestro fichero_exportacion.sql a una carpeta de nuestro sistema Linux y posicionarnos en ella a través de la consola. Una vez allí, utilizaremos el siguiente comando:

$ mysql -u usuario -p nombre_base_de_datos < fichero_importacion.sql

  • -u: indica al sistema que la siguiente palabra será el nombre de usuario
  • usuario: es el nombre de usuario con el que podemos acceder a la base de datos
  • -p: indica al sistema que accederemos mediante una contraseña y que deberá pedírnosla en cuanto tecleemos enter
  • nombre_base_datos: es el nombre de la base de datos en la que guardaremos el contenido a importar
  • fichero_importacion.sql es el nombre del fichero donde está guardado el contenido de la base de datos a importar

Si el comando se ejecuta con éxito no generará ningún resultado, si se producen errores durante el proceso, tanto MariaDB como MySQL los imprimirán por pantalla. Si todo ha sido correcto, tendremos el contenido del fichero  cargado en la base de datos.

 

Conclusión

Ahora sabemos cómo crear ficheros de exportación con el contenido de nuestra base de datos y cómo importarlas de nuevo. El comando mysqldump tiene funcionalidades adicionales que pueden ser usar para modificar cómo se genera el fichero de exportación. Puedes aprender más en la página oficial de documentación para mysqldump.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *