Blog de Gonzalo

COPIAS DE SEGURIDAD DE BASE DE DATOS

Hacer copias de seguridad de la base de datos, con cierta regularidad es bastante importante. En Mysql hay varias formas de hacer copias de seguridad:

  • mysqldump: Este comando, se encarga de generar las consultas necesarias para recrear toda la estructura de tablas y su contenido, a base de sentencias SQL. Aunque puede resultar tedioso, para bases de datos grandes, además si se quiere hacer un backup de una base de datos con tablas que usan el motor MyISAM es mejor mysqlhotcopy.
    Ejemplo de mysqldump: "mysqldump -u root -p nombre_base_de_datos > fichero.sql". Si se quiere especificar al mismo tiempo la contraseña en lugar "-p" y la contraseña a continuación, es decir, se pondría "-pcontraseña".
    Para restaurar la base de datos se usaría el comando "mysql -u root -p nombre_base_de_datos < fichero.sql".
    Para realizar una copia de seguridad de todas las bases de datos se usaría el comando "mysqldump -u root -p --all-databases > fichero.sql".
    Para realizar una copia de seguridad de varias bases de datos a la vez se usaría el comando: "mysqldump -u root -p --databases base_datos1 base_datos2 > fichero.sql".
    Y por último para realizar una copia de seguridad de una tabla de una base de datos se usaría el comando: mysqldump -u root -p base_datos tabla > fichero.sql.
  • mysqlhotcopy: Para usar este comando el usuario tiene que tener los permisos SELECT, LOCK TABLES y RELOAD. Para relizar las copias de seguridad hay que lanzar el comando: mysqlhotcopy basededatos --user=backup --password=mipassword /destino
  • Contenido: Si se quiere volcar el contenido de una tabla en un fichero está explicado en mi post de copias de seguridad.
  • Copias de seguridad incrementales: La copia de seguridad incremental permite guardar únicamente los datos que han sido modificados desde la última copia. La copia de seguridad incremental es el modelo más avanzado de backup disponible. Más información en: Copias de seguridad incrementales en MySql.

Compartir en twitter