Cómo crear un respaldo (o Backup) de MySQL desde la consola

Si, los respaldos (o backups) automáticos son importantes, pero a veces quieres hacer un respaldo justo antes de hacer un cambio importante en el servidor.

El concepto es que puedas hacer un respaldo completo de la base de datos y guardarla fuera del servidor para poder restablecerla en caso de emergencia.

Aunque parezca complicado, la verdad es que es bastante sencillo.

Crear un respaldo (o Backup)

El comando mysqldump se usa para crear unos “dumps” de la base de datos que maneja MySQL. Esto solo son archivos que tienen toda la lista de comandos necesarios para recrear la base de datos desde cero.

Para respaldar una sola base de datos, puedes hacer un “dump” y tener un archivo con la información así:

mysqldump database_name > nombre_base_de_datos.sql

Puedes respaldar varias bases de dato al mismo tiempo así:

mysqldump --databases basededatos_uno basededatos_dos > dos_basesdedatos.sql

 

Y también es muy sencillo hacer un respaldo de toda la base de datos del servidor:

mysqldump --all-databases > toda_la_basededatos.sql

Restaurando un respaldo

Como los archivos dump son comandos SQL, puedes restaurar la base de datos diciéndole a MySQL que corra los comandos de estos archivos y que ponga la data en las bases de datos correspondientes.

mysql nombre_basededatos < nombre_basededatos.sql

Si restauras una sola base de datos desde un dump de todas las bases de datos, puedes decirle a MySQL así:

mysql --one-database database_name < all_databases.sql

Para finalizar puedes descargar el archivo que necesitas a tu computadora via SSH. En una ventana nueva de tu terminal o consola.

scp <usuario>@<tu-sitio.com>:all_databases.sql /tu/directorio/local