Intenta alguna solución ya hecha y probada:
   Código PHP:
    <?php
include 'config.php';
include 'opendb.php';
 
$tableName  = 'mypet';
$backupFile = 'backup/mypet.sql';
$query      = "SELECT * INTO OUTFILE '$backupFile' FROM $tableName";
$result = mysql_query($query);
 
?>    
   Código PHP:
    <?php
include 'config.php';
include 'opendb.php';
 
$backupFile = $dbname . date("Y-m-d-H-i-s") . '.gz';
$command = "mysqldump --opt -h $dbhost -u $dbuser -p $dbpass $dbname | gzip > $backupFile";
system($command);
?>    
  Espero que sirva, saludos