Usa mysqldump-php
una soluzione in puro PHP per replicare la funzione di mysqldump
eseguibile per casi d'uso di complessità da base a med - Capisco che potresti non avere l'accesso diretto CLI e/o mysql remoto, ma fintanto che puoi eseguire tramite una richiesta HTTP su un httpd sull'host questo funzionerà:
Quindi dovresti essere in grado di eseguire il seguente script puramente PHP direttamente da una directory sicura in /www/ e avere un file di output scritto lì e prenderlo con un wget.
mysqldump-php - mysqldump PHP puro su GitHub
Esempio PHP:
<?php
require('database_connection.php');
require('mysql-dump.php')
$dumpSettings = array(
'include-tables' => array('table1', 'table2'),
'exclude-tables' => array('table3', 'table4'),
'compress' => CompressMethod::GZIP, /* CompressMethod::[GZIP, BZIP2, NONE] */
'no-data' => false,
'add-drop-table' => false,
'single-transaction' => true,
'lock-tables' => false,
'add-locks' => true,
'extended-insert' => true
);
$dump = new MySQLDump('database','database_user','database_pass','localhost', $dumpSettings);
$dump->start('forum_dump.sql.gz');
?>