Vous pouvez utiliser SQL pour cela :
$file = 'backups/mytable.sql';
$result = mysql_query("SELECT * INTO OUTFILE '$file' FROM `##table##`");
Ensuite, pointez simplement un navigateur ou un client FTP vers le répertoire/fichier (backups/mytable.sql). C'est aussi une bonne façon de faire des sauvegardes incrémentielles, en donnant au nom de fichier un horodatage par exemple.
Pour le récupérer dans votre base de données à partir de ce fichier, vous pouvez utiliser :
$file = 'backups/mytable.sql';
$result = mysql_query("LOAD DATA INFILE '$file' INTO TABLE `##table##`");
L'autre option consiste à utiliser PHP pour invoquer une commande système sur le serveur et exécuter 'mysqldump' :
$file = 'backups/mytable.sql';
system("mysqldump --opt -h ##databaseserver## -u ##username## -p ##password## ##database | gzip > ".$file);