php exec () - mysqldump cria um arquivo vazio
Eu quero criar um backup de um banco de dados, mas recebo apenas um arquivo em branco.
include('config.php');
$command = "mysqldump --opt -h ".$_host." -u ".$_user." -p ".$_pass." ".$_db." > test.sql";
exec($command);
echo "<br />".$command;
test.sql é criado onde o arquivo .php está localizado.
Editar:
Nota! Estou usando o XAMPP WINDOWS!
Solução:
Como estou usando um servidor da Web do Windows (XAMPP), precisei especificar o caminho:
$command = 'd:\xampp\mysql\bin\mysqldump --opt -u '.$_user.' -p'.$_pass.' '.$_db.' > test.sql';
Eu removi o espaço entre o -p e o passe. Parece que:-pMYPASSWORD
Substituído"
com'
Eu acho que se você estiver usando um servidor web baseado em Linux, você não precisa especificar o caminho para o mysqldump.
Felicidades! :-)