Im Hosting eines Web-Systems auf einer Ubuntu-Instanz in AWS. Es ist sehr wichtig, dass die Datenbank häufig gesichert wird. Ich habe mir automatisierte Snapshots von Instanzen angesehen, aber diese Lösung ist aus zwei Gründen nicht wünschenswert: Ihr Overkill zum Sichern der gesamten Instanz und alle Anleitungen, die ich gesehen habe, empfehlen nur eine einzige Sicherung pro Tag.Mit Cron Job + Git automatisch Live-Datenbank sichern
Ich denke darüber nach, ein kleines Shell-Skript zu schreiben, das regelmäßig Änderungen in der MySQL-Datenbank festschreibt und zu einem Remote-Repo verschiebt. Das Skript sollte von einem Cron-Job aktiviert werden.
Meine Frage ist: Wird dieser Ansatz funktionieren? Ich habe diese Lösung nirgends vorgeschlagen, daher vermute ich, dass mir hier etwas fehlt. Die Datenbank wird niemals größer als 50 MB sein.
Dank
Meine Sorge ist, wenn Änderungen an der Datenbank vorgenommen werden, während der "git commit" ausgeführt wird, dann wird die Festschreibung wahrscheinlich beschädigt sein. Wie groß war die Datenbank und wie viel Traffic hatten Sie? In meiner Sitation ist der Traffic ziemlich niedrig (<1000 Hits pro Tag) und die Größe der Datenbank ist auch am unteren Ende. – Vingtoft
Es ist eine sehr verkehrsschwache Website, unter 100 Treffern pro Tag. In meinem Setup führe ich 'mysqldump> database.sql' aus und füge dann die resultierende SQL-Datei in git hinzu. mysqldump wird nicht fehlschlagen, auch wenn gleichzeitig Datenverkehr stattfindet. –
1615903
Einverstanden, es kann getan werden. Laut http://dba.stackexchange.com/questions/19532/safest-way-to-perform-mysqldump-on-a-live-system-with-active-reads-and-writes ist es sicher, einen SQL-Dump zu generieren auf einem System mit aktiven Lese- und Schreibvorgängen. Danke – Vingtoft