C贸mo hacer copias de seguridad MySql con mysqldump

La forma m谩s com煤n para crear copias de seguridad de MySQL, desde consola, se basa en el uso del comando mysqldump. Este comando se incluyen la instalaci贸n de MySQL. Para usar mysqldump, abre una consola y ejecuta lo siguiente:

Copia de seguridad b谩sica

$ mysqldump --user=TU_USUARIO --password=TU_CONTRASE脩A NOMBRE_BASE_DE_DATOS > copia_seguridad.sql

Si por ejemplo el usuario es root, la contrase帽a tambi茅n es root y la base de datos se llama basewp, el comando que debes ejecutar es el siguiente:

$ mysqldump --user=root --password=root basewp> copia_seguridad_basewp.sql

Si por seguridad no quieres mostrar la contrase帽a como parte de la sentencia:

$ mysqldump --user=root -p acme > copia_seguridad.sql
Enter password: *********

Recuperando una copia de seguridad
Las copias de seguridad son 煤tiles si se pueden recuperar. Si hemos realizado el paso anterior y deseamos recuperar el archivo copia_seguridad_basewp.sql, hay que ejecutar:

$ mysql --user=TU_USUARIO --password=TU_CONTRASE脩A < copia_seguridad_basewp.sql

Observa c贸mo en este caso se ejecuta el comando mysql y no el comando mysqldump. Si usamos el ejemplo anterior,聽 ser铆a:

$ mysql --user=root --password=root < copia_seguridad_baseawp.sql

No hace falta indicar el nombre de la base de datos que se est谩 recuperando, porque los archivos creados por mysqldump ya contienen esa informaci贸n.聽Atenci贸n, al ejecutar este comando de recuperaci贸n se borra la base de datos original y toda la informaci贸n de sus tablas, para despu茅s insertar toda la informaci贸n contenida en el archivo copia_seguridad_basewp.sql.

Si la versi贸n de MySQL es moderna y la recuperaci贸n es una versi贸n un poco antigua, hay que a帽adir la opci贸n –skip-opt al realizar la copia de seguridad, para desactivar opciones modernas e incompatibles.

$ mysqldump --user=TU_USUARIO --password=TU_CONTRASE脩A
 --skip-opt NOMBRE_BASE_DE_DATOS > copia_seguridad_basewp.sql

C贸mo realizar copias de seguridad de m谩s de una base de datos
Es tan sencillo como utilizar la opci贸n –databases e indicar el nombre de las bases de datos separadas por un espacio en blanco:

$ mysqldump --user=TU_USUARIO --password=TU_CONTRASE脩A
 --databases NOMBRE_BASE_DE_DATOS_1 NOMBRE_BASE_DE_DATOS_2
 NOMBRE_BASE_DE_DATOS_3 > copia_seguridad_baseswp.sql

Para realizar una copia de seguridad de todas las bases de datos, es con la opci贸n –all-databases:

$ mysqldump --user=TU_USUARIO --password=TU_CONTRASE脩A
 --all-databases > copia_seguridad_todaslasbaseswp.sql