Podrías usar SQL para esto:
$file = 'backups/mytable.sql';
$result = mysql_query("SELECT * INTO OUTFILE '$file' FROM `##table##`");
Luego simplemente apunte un navegador o cliente FTP al directorio/archivo (backups/mytable.sql). Esta también es una buena manera de hacer copias de seguridad incrementales, por ejemplo, dándole al nombre del archivo una marca de tiempo.
Para recuperarlo en su base de datos desde ese archivo, puede usar:
$file = 'backups/mytable.sql';
$result = mysql_query("LOAD DATA INFILE '$file' INTO TABLE `##table##`");
La otra opción es usar PHP para invocar un comando del sistema en el servidor y ejecutar 'mysqldump':
$file = 'backups/mytable.sql';
system("mysqldump --opt -h ##databaseserver## -u ##username## -p ##password## ##database | gzip > ".$file);