WebHostingHub

Cómo respaldar y restaurar una base de datos MySQL desde la línea de comando

Cómo respaldar y restaurar una base de datos MySQL desde la línea de comando

La mayoría de las veces, puede gestionar fácilmente su base de datos con herramientas basadas en Web tales como phpMyAdmin. Desafortunadamente, hay veces que debe restaurar una gran cantidad de datos lo cual no puede hacerse a través de phpMyAdmin debido a los límites de PHP (tanto al tiempo máximo que un script PHP puede usar o el tamaño máximo de carga de archivo).

Cómo usar la línea de comando MySQL

Si está usando MySQL en Linux o MS Windows, puede usar la línea de comando para realizar la mayoría de las tareas. Si está usando MS Windows, Haga que el paso a las líneas de comando binarias está incluido en su paso de sistema. Esto le facilitará las cosas de otro modo deberá escribir el paso completo para cada comando.

Cómo respaldar una base de datos MySQL

MySQL proporciona un utilitario llamado “mysqldump”. Básicamente lo que hace la herramienta es crear un archivo que contiene instrucciones SQL para restaurar su base de datos. Aquí hay algunos ejemplos de uso de  mysqldump:

Cómo crear un respaldo simple de base de datos

mysqldump -u username -p database_name > file.sql

Esto creará un archivo que contiene todas las sentencias SQL para crear tablas y restaurar datos dentro de una base de datos existente. Si la base de datos objetivo contiene tablas con los mismos nombres, estas se sobre-escribirán. Si desea que las tablas existentes sean suprimidas y recreadas, use la opción add-drop-table:

mysqldump –add-drop-table -u username -p database_name > file.sql

También podría elegir suprimir la base de datos entera antes de recrearla y restaurar los datos:

mysqldump –add-drop-databases -u username -p database_name > file.sql

Cómo respaldar bases de datos múltiples

Puede respaldar bases de datos múltiples a un solo archivo usando la opción databases:

mysqldump -u username -p –databases database1 database2 database3 >
file.sql

El crear un respaldo de todas las bases de datos puede lograrse usando la opción all-databases:

mysqldump -u username -p –all-databases > file.sql

Cómo respaldar tablas InnoDB

Si su base de datos tiene tablas InnoDB, deberá desactivar la integridad referencial mientras restaura datos. Desafortunadamente, esto no puede hacerse usando el programa mysqldump. Para hacerlo así, respalde su base de datos como lo haría normalmente. Cuando está hecho, abra el archivo SQL y agregue la siguiente sentencia al comienzo:

SET FOREIGN_KEY_CHECKS=0;

…y agregue la siguiente al final del archivo:

SET FOREIGN_KEY_CHECKS=1;

Cómo comprimir el archivo de vuelco MySQL

Si está usando mysqldump en un shell de Linux, puede canalizarlo a través de gzip para comprimir el archivo de vuelco (asumiendo que tiene instalado gzip):

mysqldump -u username -p database_name | gzip -c file.sql.gz

Cómo restaurar un respaldo MySQL

Para restaurar un respaldo creado con mysqldump, deberá usar el comando mysql. Si su archivo de vuelco SQL no contiene ninguna sentencia “create database”, puede usar el siguiente comando:

mysql -u username -p database_name < file.sql

Pero si la tiene, simplemente use el mismo comando sin especificar el nombre de la base de datos:

mysql -u username -p < file.sql

Puede encontrarse más información sobre mysqldump aquí.

Siguenos

1and1 Alojamiento Web