6

I would like to repair + optimize my MySQL database once a week!

How could I do this?

Mark Henderson
  • 68,823
  • 31
  • 180
  • 259
Chris wede
  • 83
  • 3

2 Answers2

3

mysqloptimize -A
mysqlrepair -A
I run these regularely, the -A option selects all databases

edit:
to run it regularely you would need a cronjob like this:

35 0 * * 1 mysqlrepair -A > /dev/null; mysqloptimize -A > /dev/null

This cronjob would run at 0:35 AM on every monday morning
If you need to authenticate, yould would use

mysqlrepair -uUSERNAME -pPASSWORD -A
mysqloptimize -uUSERNAME -pPASSWORD -A
Niko S P
  • 1,182
  • 8
  • 16
2

For repair you can check auto-repair option. For optimization there is no recipe to do it automagicaly but you can try use mysqltuner.pl script and see what it suggests you should tune.

Hrvoje Špoljar
  • 5,245
  • 26
  • 42
  • Awesome, for some reason I was not familiar with `mysqlcheck` command. So a basic command is: `mysqlcheck my_database --auto-repair` – adrianTNT Oct 14 '15 at 13:41