En las FAQs dice como hacerlo, y es con el siguiente código. Le he añadido la fecha para el nombre del archivo, así se guarda con la fecha del día (ej. 04-09-06.sql)
El caso es que este se baja, pero al abrirlo devuelve el error:
<H1>Error ejecutando comando: /mysql/bin/mysqldump -u *** --password=*** --opt ***</H1>
Código PHP:
<?
//Ponemos fecha para el nombre de la backup
$fechas = date("d/m/y");
// Nombre del archivo de con el cual queremos que se guarde la base de datos
$filename = $fechas.".sql";
// Cabezeras para forzar al navegador a guardar el archivo
header("Pragma: no-cache");
header("Expires: 0");
header("Content-Transfer-Encoding: binary");
header("Content-type: application/force-download");
header("Content-Disposition: attachment; filename=$filename");
$usuario="..."; // Usuario de la base de datos, un ejemplo podria ser 'root'
$passwd="..."; // Contraseña asignada al usuario
$bd="..."; // Nombre de la Base de Datos a exportar
// Funciones para exportar la base de datos
$executa = "/mysql/bin/mysqldump -u $usuario --password=$passwd --opt $bd";
system($executa, $resultado);
// Comprobar si se a realizado bien, si no es asi, mostrará un mensaje de error
if ($resultado) { echo "<H1>Error ejecutando comando: $executa</H1>\n"; }
?>
De paso también digo que antes de añadirle lo de las fecha hacía lo mismo.
El servidor es linux.
¿Qué falla?