Ich würde immer einen Cronjob machen, weil:
- Das ist, wo Systemadministratoren es erwarten werden (dieser Punkt ist nicht zu unterschätzen)
- crontab ist kugelsicher, erprobt, extrem weit verbreitet und verständlich
- Sie können Fehler-/Erfolgsmeldungen frei lenken/analysieren, wohin Sie wollen
- Einige Datenbankaufgaben erfordern/bevorzugen, dass mysql offline ist (z. B. vollständige Sicherung), also müssen Sie cron für diese verwenden - es ist eine schlechte Idee, einige Aufgaben mit cron und andere mit mysql erledigen zu lassen; Sie werden sich nicht sicher sein, wo Sie suchen sollen
- Sie können andere Ereignisse verketten, die folgen sollten, wenn Sie ein Shell-Skript haben
Und schließlich, nur weil Sie können etwas tun, bedeutet nicht, dass es eine gute Idee ist. MySQL ist gut in Datenkram. Verwenden Sie es nicht für "Shell"-Sachen.