Todos tenemos que tener mucho cuidado con nuestras bases de datos y sobre todo saber mantenerlas y tener un buen sistema de backups.

Esta clase que nos presenta ribosomatic hecha en PHP nos hace una copia de seguridad de todas las tablas de una base de datos MySQL.

La clase tiene las siguientes características:

  • Nos crea un archivo con extensión SQL en un directorio que digamos
  • Se puede configurar los parámetros de conexión (usuario, contraseña, base de datos)
  • Opción de envio del backup por correo electrónico

Os dejo el código para que podáis implementarlo:

PHP:
  1. include_once("mysql.class.inc");
  2. include_once("config.php");
  3.  
  4. $backup = new MyBackUp(); //creating an object of MyBackUp
  5.  
  6. //SERVER CONFIG
  7. if(!empty($server['host']))
  8. $backup->server = $server['host']; //Joining the configuration Server data to class Server variables.
  9. if(!empty($server['port']))
  10. $backup->port   = $server['port'];
  11. if(!empty($server['user']))
  12. $backup->usern  = $server['user'];
  13.  
  14. $backup->userp  = $server['pass'];
  15. $backup->dbase  = $server['database'];
  16.  
  17. //Mail Config
  18. if(!empty($mailer["FromMail"]))
  19. $backup->mailFrom = $mailer["FromMail"];
  20. if(!empty($mailer["ToMail"]))
  21. $backup->mailTo = $mailer["ToMail"];
  22.  
  23. $backup->body = $mailer["MailBody"];
  24. $backup->isDel= $mailer["DAM"];
  25.  
  26. //FILENAME GENERATION
  27. //UNIQUE FILE NAME GENERATION TO SET ONE BACKUP A DAY. Change the date function to time if you need more than on file per day.
  28. $backup->filename = $backUpFolder."/".$server['database']."_".date("Y_M_d").".sql";
  29.  
  30. //Calling generator Function
  31. if(!$backup->BackUp())
  32. echo $backup->error; //On error this function returns back. Error details will be in this variable.

Acostumbraros a hacer backups de vuestras bases de datos, que despues vienen las sorpresas. Yo por ejemplo hago una vez a la semana un backup del Blog.

Posts Relacionados