27.7.17

Cómo respaldar y restaurar una base de datos de MySQL o MariaDB

Para respaldar una base de datos de MySQL o MariaDB se puede usar la utilidad mysqldump (que ya está incluida en la instalación):

$ mysqldump --opt -u [username] -p[password] [dbname] > [file.sql]

Por ejemplo, si se quiere respaldar la base de datos mydb con el usuario root y sin contraseña a un archivo mydb_backup.sql:

$ mysqldump --opt -u root -p mydb > mydb_backup.sql

El comando mysqldump dirige el contenido de la base de datos a STDOUT y con el operador > se redirige a un archivo. Es posible no indicar el argumento -p, de esta manera se solicitará que el usuario escriba la contraseña antes de proceder.

Para restaurar una base de datos, es necesario tener una base vacía en donde se restaurará y luego usar directamente el comando mysql:

$ mysql -u root -p my_empty_db < mydb_backup.sql

Se accede a mysql con el usuario root y la contraseña vacía, se redirige el contenido del archivo mydb_backup.sql con el operador < a la base datos my_empty_db que se encontraba previamente.

También es posible hacerlo desde utilidades como PHPMyAdmin, seleccionando la base de datos que se desea respaldar y luego Export o Import para respaldar o restaurar, respectivamente.

Más: How to Back Up and Restore a MySQL Database. mysqldump.