> What is the best way to do this? Just run a cron job that executes a
> Ruby script once a week? Or does MySQL have something built in for this?

I have the same situation with scripts, cron is a right choice.