Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Datenbank(en) mit Abfrage sichern, ohne mysqldump zu verwenden

Verwenden Sie mysqldump-php eine reine PHP-Lösung, um die Funktion von mysqldump zu replizieren ausführbar für Anwendungsfälle mit einfacher bis mittlerer Komplexität - Ich verstehe, dass Sie möglicherweise keinen Remote-CLI- und/oder mysql-Direktzugriff haben, aber solange Sie über eine HTTP-Anfrage auf einem httpd auf dem Host ausführen können, wird dies funktionieren:

Sie sollten also in der Lage sein, das folgende reine PHP-Skript direkt aus einem sicheren Verzeichnis in /www/ auszuführen und eine Ausgabedatei dort schreiben zu lassen und sie mit einem wget abzurufen.

mysqldump-php - Reines PHP mysqldump auf GitHub

PHP-Beispiel:

<?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');
    ?>