2009-06-02 4 views
7

Ich muss wissen, wie ich meine MySQL-Datenbanken regelmäßig sichern und die Backups auf meinen lokalen Server herunterladen kann. Ich benutze navicat und es hat eine einfache Backup-Schnittstelle und Aufgaben Zeitplan Einrichtung, aber es sichert die db und speichert die Sicherung auf dem Server selbst. Ich möchte eine Möglichkeit haben, die Backups, die einmal auf meinem lokalen System erstellt wurden, herunterzuladen, anstatt sie auf demselben Server wie die Datenbank zu haben.Periodische Backups einer MySQL-Datenbank erstellen

+0

Könnte besser auf Serverfault passen? – tronda

+1

Sie sollten auch einen Blick auf: http://www.percona.com/docs/wiki/percona-extrabackup:start – Everyz

Antwort

14

Einrichtung einen Server cron die Mysqldump Befehl nach einem Intervall ausgeführt wird (beispielsweise 24 Stunden)

mysqldump -hMY_HOST.COM -uDB_USERNAME -pDB_PASSWORD USERNAME_DATABASENAME > MysqlDump.sql 

Nach Dump-Datei zu erstellen. Richten Sie einen anderen Cron ein, um diesen Speicherauszug auf den Zielserver zu kopieren (vorzugsweise lokal), und führen Sie dies mit demselben Intervall von oben Cron aus.

scp [email protected]_HOST.COM:/some/path/file [email protected]_HOST2.COM:/some/path/file 

HINWEIS: Diese Befehle hohe Serverbelastung (stellen Sie sicher, dass sie ausgeführt werden, wenn der Server Mindestlast aufweist) kann dazu führen,

0

Neben mysqldump gibt ein paar andere Backup-Optionen sind. Diese sind hauptsächlich um den mysqldump zu umgehen, der highload/long reload zeiten verursacht.

  1. Es gibt InnoDB hot backup, es ist ein Bezahlprodukt von den Herstellern von InnoDB, um online zu sichern. Es ist auch schwieriger, InnoDB -Tabellen als MyISAM zu sichern, da bei letzterem die Dateien einfach kopiert werden können, wenn die Tabelle gelöscht wird.
    • Wenn Ihre Sicherung der Momentaufnahmen von Ihrer Festplatte nehmen, FLUSH TABLES WITH READ LOCK Ihre schreibt auf die Festplatte spülen, so dass Ihre Backups in einem konsistenten Zustand sind. Dies wird jedoch alle Lesevorgänge blockieren, bis Sie fertig sind, also wenn sie nicht sofort sind, wird es nicht gut sein.
-1

sollten Sie versuchen, mydumper - https://answers.launchpad.net/mydumper/+faq/338

Es hat einen Daemon-Modus, die periodische Backups für Sie nehmen können und wurde von einigen ausgezeichneten MySQL Ingenieuren entwickelt. Ich glaube, es wurde als mysqldump berechnet, so wie es sich ein dba vorstellen würde;)

+0

Der Link zeigt auf eine Website hinzufügen –