Wie kann man nachts automatisiert ein Backup einer mysql Datenbank machen lassen?

Das kommt darauf an, welche Engine Ihr für Eure Tabellen benutzt. Bei MyISAM-Tabellen ist eine Kopie des Verzeichnisses eher im laufenden Betrieb möglich als bei InnoDb-Tabellen, da diese gegebenenfalls noch Daten in einem Puffer haben, der noch nicht in die entsprechenden Dateien geschrieben wurde. Auf jeden Fall muss also mySql gestoppt werden und nach der Kopie wieder gestartet werden.

Wenn die Datenbank nicht riesig ist, bietet sich ein regelmäßiger Dump an, den Du per Cron-Job anstößt. Ein ganz gutes Script, das auch die Backupdateien rotiert (täglich, wöchentlich, monatlich), ist automysqlbackup. Dazu solltest Du einiges finden. Vorteil ist, dass der Dump unabhängig von der Version der Datenbank wieder eingespielt werden kann, ohne sich im Dateisystem von mysql auszukennen. Der Nachteil ist die lange Laufzeit und ggfs. das Sperren der Tabellen während der Laufzeit.