Log in  \/ 
x
or
x
  • Fututel

Articles

Realizar Copias de Seguridad "Backups" de una Base de Datos MySQL

Realiza tu propia Backup desde Mysql


 Realizar Copias de Seguridad Backup de una Base de Datos MySQL

Realizar Copias de Seguridad "Backup" de una Base de Datos MySQL. El método más utilizado para crear copias de seguridad o Backups de MySQL se basa en el uso del comando mysqldump . Este comando se incluye dentro de las utilidades del propio servidor MySQL, por lo que ya se instaló por defecto cuando instalaste MySQL. Para comprobar que dispones de mysqldump , abre una consola de comandos y ejecuta lo siguiente:

$ mysqldump 

Para comprobar la versión instalada:

$ mysqldump --version
mysqldump  Ver 10.XX Distrib 5.X.XX

Si se produce un error de tipo "command not found", es posible que NO hayas instalado MySQL correctamente o que tengas que indicar la ruta completa hasta donde se encuentre el comando, como por ejemplo:

$ /usr/local/mysql/bin/mysqldump

Nota. Los comandos con color Rojo son modificables por el Usuario.

Copia de seguridad básica


Realizar Copias de Seguridad Backup de una Base de Datos MySQL 1

Ejecuta el siguiente comando para realizar una copia de seguridad completa de la base de datos llamada NOMBRE_BASE_DE_DATOS. No olvides reemplazar TU_USUARIO y TU_CONTRASEÑA por las credenciales que utilizas para acceder al servidor de base de datos:

$ 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 acme, el comando que debes ejecutar es el siguiente:

$ mysqldump --user=root --password=root acme > copia_seguridad.sql

Si por motivos de seguridad no quieres escribir la contraseña como parte del comando, puedes reemplazar la opción --password=XX por -p. Al hacerlo, MySQL te pedirá que escribas la contraseña a mano cada vez que realices una copia de seguridad:

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

Recuperando una copia de seguridad


Las copias de seguridad sólo son útiles si se pueden recuperar fácilmente los datos cuando se produce un error. Suponiendo que los datos a recuperar se encuentran en el archivo copia_seguridad.sql, el comando que debes ejecutar para recuperar la información de la base de datos es el siguiente:

$ mysql --user=TU_USUARIO --password=TU_CONTRASEÑA < copia_seguridad.sql

Observa cómo en este caso se ejecuta el comando mysql y no el comando mysqldump. Utilizando los mismos datos que en el ejemplo anterior, el comando a ejecutar sería:

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

En este comando no hace falta indicar el nombre de la base de datos que se está recuperando, porque los archivos generados por mysqldump ya contienen esa información. De hecho, 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.sql.

Si la copia de seguridad la haces en una versión de MySQL moderna y la recuperación de la información se realiza en una versión un poco antigua, es mejor que añadas la opción --skip-opt al realizar la copia de seguridad, para desactivar algunas opciones modernas e incompatibles:

$ mysqldump --user=TU_USUARIO --password=TU_CONTRASEÑA
            --skip-opt NOMBRE_BASE_DE_DATOS > copia_seguridad.sql

Copias de seguridad de más de una base de datos


Normalmente el comando mysqldump se utiliza para realizar la copia de seguridad de una única base de datos. No obstante, en ocasiones es necesario copiar varias bases de datos. Para ello, utiliza la opción --databases e indica el nombre de todas las bases de datos separados 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.sql

Si lo que quieres es realizar una copia de seguridad de todas las bases de datos, utiliza en su lugar la opción --all-databases:

$ mysqldump --user=TU_USUARIO --password=TU_CONTRASEÑA
            --all-databases > copia_seguridad.sql

 

Con muy ligeras modificaciones. Todamado de: http://librosweb.es/tutorial/como-hacer-copias-de-seguridad-de-una-base-de-datos-mysql/

Sobre el Autor
Pipe Peña
Author: Pipe Peña
Soy un loco enamorado de la vida. Licenciado en Ciencias Sociales y Humanas, amante de la informática y la astrofísica. Me gusta crear e investigar proyectos que enriquezcan la construcción y desarrollo del conocimiento individual y colectivo. Me encantan los videojuegos, el cine, la química, matemáticas, la física cuántica y la música, en donde actualmente soy compositor. Me baso en la idea que toma Baruch Spinoza sobre Dios.

PrintEmail

We Support

  • pbxinaflash
  • asterisk
  • elastix
  • freepbx