💾 Cómo generar un backup de una base de datos MySQL en PHP puro
Este pequeño proyecto en PHP puro te permite generar un respaldo de toda tu base de datos MySQL en un archivo .sql
listo para descargar y guardar de forma segura. Ideal si no usas herramientas como phpMyAdmin o si quieres hacerlo automáticamente desde tu sistema.
🧩 Características del sistema
- Genera respaldo completo en
.sql
- Compatible con PHP 5.6 hasta 8.x
- Sin necesidad de librerías externas
- Exportación por fecha
- Código comentado y ordenado
- Posibilidad de programar backups con
cron
💾<?php
// Datos de conexión a la base de datos
$host = "localhost";
$usuario = "root";
$contrasena = "";
$basededatos = "nombre_de_tu_bd";
// Nombre del archivo de respaldo
$nombreArchivo = "backup_" . date("Y-m-d_H-i-s") . ".sql";
// Comando mysqldump
$comando = "mysqldump --user={$usuario} --password={$contrasena} --host={$host} {$basededatos} > {$nombreArchivo}";
// Ejecutar comando
system($comando, $resultado);
// Comprobar si se generó correctamente
if ($resultado == 0) {
echo "Backup creado con éxito: <a href='{$nombreArchivo}' download>Descargar</a>";
} else {
echo "Error al generar el backup";
}
?>
📝 Explicación del código
- Conexión a la base de datos: Define los datos de tu servidor, usuario y contraseña.
- Nombre dinámico del archivo: Incluye la fecha y hora exacta.
- Uso de
mysqldump
: Se ejecuta el comando directamente desde PHP. - Verificación del resultado: Te avisa si todo salió bien o hubo un error.